- 在线时间
- 661 小时
- 最后登录
- 2023-8-1
- 注册时间
- 2017-5-2
- 听众数
- 32
- 收听数
- 1
- 能力
- 10 分
- 体力
- 55556 点
- 威望
- 51 点
- 阅读权限
- 255
- 积分
- 17618
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 447
- 主题
- 326
- 精华
- 1
- 分享
- 0
- 好友
- 79
TA的每日心情 | 慵懒 2020-7-12 09:52 |
|---|
签到天数: 116 天 [LV.6]常住居民II 管理员
 群组: 2018教师培训(呼和浩 群组: 2017-05-04 量化投资实 群组: 2017“草原杯”夏令营 群组: 2018美赛冲刺培训 群组: 2017 田老师国赛冲刺课 |
一、常用的表格宏包, q: m$ v0 h) J: a9 I
dcolumn 对齐小数点# w! _& J: o$ d8 {( w9 C& I i
makecell 单独控制单元格格式/ u) f3 f* P& N/ g7 F
diagbox 对表格进行斜线分割7 [2 O! X, l( P7 A0 T7 Q b
* longtable 长表格,可用于处理分页表格(表格超过一页时使用)
$ e7 G+ |/ v( `7 s% _9 Y2 B ltxtable longtable和tabularx的结合体
* ?; e5 _: O' t$ \& G array 各个表格宏包都依赖于它
0 z" d1 b- C' r! y7 A* tabu 命令简单、功能强大
3 W1 I6 R5 ]+ V+ q
' B5 o3 f# \8 i5 P/ Q* T, y二、输入格式及说明5 x' }5 x6 K4 l; A
1、一般输入格式/ r) r }3 w4 ]( z6 k0 A
\begin{tabular}[<垂直对齐方式>]{<列格式说明>}
$ \3 U6 \! L. x & & & & \\
' e& \+ o% J5 v0 g \end{tabular}
4 g! \2 `# O8 W# `5 [! S( K4 i
; W6 u5 \6 O- `8 D2、一些说明
% G, u- C5 R1 v! {(1)特殊符号:
$ @- @, ?# e ]; z: q \\ 表示换行- n# L2 f% q. O. J- G( H) U
& 表示分隔单元格3 l! o+ c! ~0 U" y( d+ D; C8 P
1 j/ F6 H2 j# a$ N+ V
(2)垂直对齐方式:6 b7 x& I4 {8 ~" [ T. F$ z
t 表示按表格顶部对齐1 @; z, m9 M9 @0 b% R5 m
b 表示按表格底部对齐3 ^5 Z" s: p* Y- ]$ G
默认为:垂直居中,非t和b的参数都看作居中$ g F- X# c# Q4 c. u6 E
0 N: j e5 M7 j( E0 C& v
(3)列格式:+ K! x- T0 ]0 `" X2 p! T
l 表示列左齐 (小写的 L)( b2 F- Y8 t/ |$ v! ]1 K
c 表示列居中对齐
# C! Q# z. R, v6 A r 表示列右对齐
" P) d( S5 p* s9 E1 N l# \" c: }# s# o' S5 c: k
三、单元格的合并
& d/ Z1 i6 C6 r* Z1 N) _1、行内单元格合并命令
' R' q6 G& z U5 Q\multicolumn{<项数>}{<新列格式>}{<内容>} %<内容>为合并后的新内容 ( z% E y9 [" j% @$ e
9 {5 r# b5 ?$ q/ D; V$ s6 o
(1)基础模板:( {( H) i7 w4 p& O4 F P
\begin{tabular}{ | c | c | }8 ]( ^2 w( V1 g- b
\hline
' Y; y" n$ ?( ^1 T \multicolumn{2}{ | c | }{成绩} \\: b0 @0 s9 i" T$ T: r( j$ G7 h
\hline m8 h$ Q U/ H( Z# m+ M* K
语文 & 数学 \\ \hline+ l; m3 r& Z( F! F' U6 [: m4 X
100 & 100 \\ \hline2 I# l3 T: a3 C/ N2 H6 i1 w
%阿汪先生的博客& b% E3 H/ \" U4 d. K
\end{tabular}# v+ p- q, s/ \% i9 l
$ X R8 f+ e* [% b% u, J(2)进阶模板:" b! \6 ?. U$ Q$ F3 w8 @! i( ~; M
\begin{tabular}{ | c | r | r | }4 A* Q) J; J4 h5 C; J
\hline
f7 x u! C# p &\multicolumn{2}{ c | }{成绩} \\2 U1 ]. K# d6 g& g* @
\cline {2-3}+ ?% {% a( u$ w$ O
姓名 & 语文 & 数学 \\ \hline
* T* Q% y7 d2 L 阿汪 & 93 & 97 \\ \hline
7 ]6 p6 H. O/ f- n %阿汪先生的博客
4 C+ z* b0 ^- d7 E) A; h5 m \end{tabular}
# d+ x4 {8 }' x/ B# `" j- l- { D' \& @, a" d( E% N& k8 W0 E8 [
语句技巧:画水平表格线需要指定线的起始和终止列号。
; f) c/ k( n* I' D! Y用 \cline {<起始位置> - <终止位置>} ,如\cline{2-3} 。
3 N, U" C; o8 Z: S9 l: U1 s4 D9 j# @, B
+ w4 a5 T' V4 y% j- O) j2、列内单元格合并命令
2 q; B, ? c. N4 w需要用 multirow宏包
2 ]' T. k! _" {( k' H\multirow{<行数>}{<宽度>}{<内容>}:内容达到指定宽度后自动换行
, y! T. b0 c- H1 H# N\multirow{<行数>}*{<内容>}:单元格的宽度即为输入内容的宽度
0 x z1 w/ r7 d5 k S
3 G; ^: r$ Y$ x: j7 Z; l0 h基础模板:
0 ?2 j# J: V$ M%导言区 \usepackage{multirow}" M: u- F9 f8 R9 S
\begin{tabular}{ | c | r | r | }5 F- H9 W/ S/ S3 H0 S* H2 a
\hline
! d. u7 q" k7 J, G \multirow{2}*{姓名}&# v6 [1 g6 A [* b; L' ^
\multicolumn{2}{ c | }{成绩} \\' p- T! H6 r G" g
\cline {2-3}4 Y( g' D; e5 e+ N! K
& 语文 & 数学 \\ \hline: N, z) t) d3 _
阿汪 & 93 & 97 \\ \hline
7 F3 t" E8 T/ g# R# K %阿汪先生的博客
3 T' \$ _* x% ^ \end{tabular}
* z( i" _$ y e& ~: U2 D+ P1 @) c4 q; l i/ Q( v
四、特殊表格
, e0 Y; @# y5 H. [1、定宽表格—tabularx
0 ^+ j% Z( H+ W7 Z {0 N(1)注意点:8 s2 T: A, P3 i' G+ u* z- b/ g
tabularx宏包提供tabularx环境
c# q2 k1 W6 D6 z X为列格式说明符(列宽自动延伸),单元格内部默认左对齐,使其居中需要array宏包支持。, C: \4 D! c# O6 g) R. ?, I, z
! S8 a! m2 O/ G) I(2)使用示例:4 e$ |, E; O2 L6 o7 K. q( P G W
%导言区 \usepackage{tabularx}
B. Y+ V' V9 t/ D# G \begin{tabularx}{400}{ | c | X | X | X | X | X |}
! y9 w, E& [. ^2 q; i5 S \hline% z) K8 a, R; ^0 _% w
数字 & 1 & 2 & 3 & 4 & 5 \\ \hline1 s2 _' ]% q- r1 d
汉字 & 一 & 二 & 三 & 四 & 五 \\ \hline7 `8 Y1 J' _- y. i# ~# j1 V
%阿汪先生的博客, L5 ?, o: @) B" O' }5 E
\end{tabularx}
8 O( V) V0 ^+ _( n
8 ~. k, P) n I7 u# S2、三线式表格—booktabs
, w. J" X! x4 Y( d# u4 Y(1)booktabs提供了如下命令:9 a- i6 J) U) F0 U' a( Y' J
\toprule ,画表格顶部粗线。4 z1 } d" I& t
\midrule,画表格中部粗线。5 V& K1 Q' S a6 Y' z6 _# Y3 T6 A
\bottomrule,画表格底部细线。4 x- `, b, g$ ?* X
\cmidrule 与 \cline命令相似。
9 a9 e" D$ k; m# F1 h% b8 E
1 A" R+ e R" d p(2)使用示例:
, Q1 k4 _* I& F%导言区 \usepackage {booktabs}
* s# n" Z- T! D. t0 c4 o* z- } \begin {tabular}{c c c}
7 F5 Z( ], o, ?/ L \toprule7 G% I H( ?. z5 Y; v, ~# ~
姓名 & 语文 & 数学 \\ \midrule
0 T+ [; B. Z2 _( L6 Y 阿汪 & 93 &97 \\ \cmidrule {2-3}$ @& g: ?+ q! D. [# J( A6 G* e
阿喵 & 98 &92 \\
, S7 Y9 {( O& z, x% I \bottomrule
1 [9 g; s, k" u0 n4 Q/ ] %阿汪先生的博客
8 S( A5 ~* F* F. ~$ k\end{tabular}* Q7 |0 i0 [7 O" o1 s3 W; |9 C, f
9 Y9 ]4 r, Z- R! g3 \+ n# W) ^, m& Q五、常用表格参数的设定
' u+ x+ ^9 v W' H+ V6 y6 s% W* Q1、表格浮动环境
9 H* K; y( Q! E ~# h$ E0 {控制表格(浮动)在本页中的显示位置需要table环境。
+ r; Q# v' `7 M: Z- u位置参数有htbp四种:here 、top 、bottom 、float page。1 l0 F0 x! {4 V3 t0 I; K; E$ x
table环境中可以通过 \caption 命令表格的标题。, p9 D8 y) a7 o
5 ]) J) _* ]! o1 I
(1)位置参数htbp释义:
3 n8 u1 z+ C2 y6 ?4 G$ nhere:在输入表格的位置排版
4 s! Z- x* D6 m$ w* i2 |4 q4 q: p6 c* qtop:在输入页面的顶部排版" e* M9 f" B: I
bottom:在输入页面的底部排版
, p7 X# k. p( R: d' h1 `) g$ Lfloat page:在单独的浮动页面排版! e' S( f5 S2 M) [
(2)使用模板:
. @' @% m7 p1 ?3 T, }\renewcommand\tablename{表}$ j ^ ^3 E# A- [; m
\begin {table}[htbp]) W( O9 A: H S& }7 N- f
\centering \caption{成绩一览表}( A4 _/ ?! m" f5 X
\begin {tabular}{c c c}' D' C, P$ ^% Q# h
\toprule 6 ^9 t9 h6 K" x% x
姓名 & 语文 & 数学 \\ \midrule" Y7 V3 N6 _6 b3 f. s; S
阿汪 & 93 &97 \\ \cmidrule {2-3}. g2 A) Y7 s2 Y5 U/ [
阿喵 & 98 &92 \\ ! n7 r- J' _1 u* v6 r8 K
\bottomrule( T" h# i" U7 y+ ]
\end{tabular}
* z$ u+ k* I2 z. z X" K %阿汪先生的博客
8 c8 O+ n' C! w \end {table}
' ?( {1 R# `6 ?3 y) d$ U1 q0 L0 L9 \# D5 ^+ }+ l( i
2、功能强大的tabu宏包! G& C2 ~5 B' o S! J# E* v3 H
(1)tabu宏包提供的基本表格环境7 P7 G! w6 { I+ }" @
\begin{tabu}[<垂直对齐方式>]{<tabular列格式说明>}
# h) q0 D. k4 J! `& c1 W+ h4 \\begin{tabu} to <尺寸>[<垂直对齐方式>]{<tabularX列格式说明>}7 x; _" R) n1 ~% U5 Q
\begin{tabu} spread <尺寸>[<垂直对齐方式>]{<tabularX列格式说明>}
' u- R$ r) i: |+ L! G0 n, 其中**spread <尺寸>**表示:在表格的自然宽度下再增加一个<尺寸>。
8 O/ o) f" i6 y0 \! ?7 b) c y(2)画线格式5 v. j/ W0 g5 q7 P* _
tabu环境中的画线命令:竖线|有一个可选项,可用来设置表格竖线的宽度。9 t; T( D3 V7 i$ E: R
\begin{tabu}{|[2pt]c|c|[2pt]}
+ L k2 _& G8 M- a+ ] \tabucline[<尺寸>]{-}用来画横线,<尺寸>设置横线厚度,
" ~4 H5 M$ X4 K: C {-}指从本行起到本行末尾画一条横线,
q/ F1 U2 W: R8 l8 N+ I; c {2-}指从第二个单元格开始画线至行尾。
& Y9 _& I' }, n" i" Y. t
$ ~$ P7 ~6 `. o+ N0 d(3)单独设置一行的格式
: R5 E& Q+ F; K5 I \rowfont[<对齐方式>]{<字体格式>} 可以设置一行单元格字体的格式。
+ t' @# k, E: N% j, |% ]3 I使用示例:
* H# l, S' _( l9 m" W2 C9 Z% ?3 s* K1 V! d
\begin{tabu}{|X|X|}
& _4 Y, ?# u1 j& F# Y# o; G# S. O \tabucline- %“-”表示无厚度等参数7 ]" a9 f9 T4 \
\rowfont[c]{\bfseries} This & is \\ \tabucline-8 Y8 X* y! U8 y/ Q: X: y0 `% l6 [( s2 y
for & everyone \\ \tabucline[2pt]-
. J2 ?! } p& q( x- t9 X' i \rowfont [r]{\itshape} Mr & Wang \\ \tabucline- " V6 G% G% j; o. ~
%阿汪先生的博客 l, i7 w+ @0 N2 I& L. [- E
\end{tabu}
' ]% ?2 U2 l6 D4 y, O& ]3 T
" s( r1 k" h( l, ^% G(4)其他操作, u8 T v, |& E& { y/ w! v
在tabu环境中合并与tabular环境不一样,前\extrarowsep后要在\end{tabu}之前添加命令 \tabuphantomline。7 N3 U4 j. e: Z
\extrarowsep可以在每行垂直方向上添加额外空白,得到相同的行高。/ q- S! s5 w) J
使用示例:
: z( d0 [1 u7 Y0 v$ {\begin{tabu}{| X | X |} \hline9 j4 g' G* J, Y4 ]0 a/ W" ^
\multicolumn 2 {|c|}{Hello}&World \\ \hline1 g1 G5 e+ t& }( p" s2 ]+ ~
\tabuphantomline %阿汪先生的博客, C% J9 s6 \3 o" J( \
\end{tabu} %表格中不能有空行4 M3 \3 o9 S9 j) A1 {
2 f3 F" Y: P; a m————————————————
9 Q( o4 F9 K6 b0 Y3 p @" { }版权声明:本文为CSDN博主「阿汪先生」的原创文章。* L* L# j+ F* l
原文链接:https://blog.csdn.net/qq_43499622/article/details/96894437 ^9 G7 x) q9 s _4 U- ?
|
zan
|