- 在线时间
- 661 小时
- 最后登录
- 2023-8-1
- 注册时间
- 2017-5-2
- 听众数
- 32
- 收听数
- 1
- 能力
- 10 分
- 体力
- 55518 点
- 威望
- 51 点
- 阅读权限
- 255
- 积分
- 17607
- 相册
- 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 田老师国赛冲刺课 |
一、常用的表格宏包
/ I/ c: z, y/ v& S3 V: o' M dcolumn 对齐小数点" S {* d& Q( O0 A9 v
makecell 单独控制单元格格式
: o- l5 N H' e* }# H$ d5 h$ a& g/ ~+ M diagbox 对表格进行斜线分割( Y& ?+ `7 y4 [ T9 g, w
* longtable 长表格,可用于处理分页表格(表格超过一页时使用). a' L8 `& Q' x/ _
ltxtable longtable和tabularx的结合体
/ t0 i3 R0 b" \ array 各个表格宏包都依赖于它
. H! H4 n3 @2 E3 N) z& Y* tabu 命令简单、功能强大
! a, G+ n; C/ O. C d" c! _) c4 m+ t: X6 Z# ^6 N
二、输入格式及说明
4 @' Q. }5 v+ s: A8 Z+ r1、一般输入格式
- v, J/ d! z- X" ^. B9 }) x; D$ E\begin{tabular}[<垂直对齐方式>]{<列格式说明>}
+ W0 a2 G& u! B9 Z: b p & & & & \\, U/ J9 |, N# c6 A' }/ e
\end{tabular}; \8 o9 @: A, g" [3 c, n
0 _' r. ]% K. N2、一些说明
6 ], Y7 a1 x0 S4 M+ A(1)特殊符号:
$ z& y( f/ d' {4 |$ l, W5 T7 V \\ 表示换行
4 V3 ~1 J+ @8 |+ W7 u & 表示分隔单元格2 W* K% @1 K2 e
! ~* j$ V5 Z, _(2)垂直对齐方式:
7 ]0 [! w6 A$ w5 X8 H+ U1 @5 x' Y/ I t 表示按表格顶部对齐9 }' O- f' u0 A/ ]7 [6 C$ d
b 表示按表格底部对齐
' s) t9 F0 B9 |+ B) } 默认为:垂直居中,非t和b的参数都看作居中2 Z0 ?5 p. S, N; Y! H- M
5 m9 P: Z$ O- X O) T(3)列格式:
' ~! h! W3 r! f0 j* X l 表示列左齐 (小写的 L)
1 |/ {6 _6 O; C4 P$ u, r c 表示列居中对齐& U) f% P) V N. O8 F
r 表示列右对齐
# e/ B3 f5 j( g, Q4 k+ P9 j1 J- e/ g5 D; r! E. a5 T% j: `
三、单元格的合并
# C! l- i* o; Q0 p1 m6 e8 a* y8 @1、行内单元格合并命令/ R5 K& I: o) O* @
\multicolumn{<项数>}{<新列格式>}{<内容>} %<内容>为合并后的新内容
3 M- V$ x2 {0 z6 G- l/ Y1 ~8 E, \
% y2 S- ]; h5 R0 {% A! ~; E5 P(1)基础模板:( w9 w9 b/ W# B$ K
\begin{tabular}{ | c | c | }, W6 W) ]" Q% S' ~ H0 ~5 D: X
\hline5 ?- z, P3 D* G
\multicolumn{2}{ | c | }{成绩} \\, O& `! y! @0 X+ {- Z7 l( x
\hline
- b W! n; B/ p* A! v/ H 语文 & 数学 \\ \hline6 d6 n% O* o& O: p: {2 T8 K* G2 d i' @
100 & 100 \\ \hline
4 a! i# [0 V6 M1 ^; F* z/ T* f% C %阿汪先生的博客
2 s! W. g5 w! V% D \end{tabular}& q/ n/ R5 r$ \4 o5 W' C
Q: h6 L# _; C5 c- }7 [(2)进阶模板:3 y& s) j M( J; Q: A7 n1 `
\begin{tabular}{ | c | r | r | }. s } p* O5 o& W2 I- A
\hline" ]+ [6 _0 T: S& c, t% U! g8 j0 k
&\multicolumn{2}{ c | }{成绩} \\4 F8 K' p/ C% e2 g: T
\cline {2-3}
0 J4 R+ d( y' ~- O2 ]3 o; l( v 姓名 & 语文 & 数学 \\ \hline
! a5 @) a% i; u 阿汪 & 93 & 97 \\ \hline
" `$ U# r0 E3 u, _ %阿汪先生的博客
# o) u1 D+ p% \ \end{tabular}) ?9 E' I. O, A- x" `. [
0 Q5 k1 w0 H/ d# h( Y' l语句技巧:画水平表格线需要指定线的起始和终止列号。
* ^" ]# s+ Z4 V4 s& y用 \cline {<起始位置> - <终止位置>} ,如\cline{2-3} 。
$ Q9 z" |" |' A% k
3 Y+ c6 l% X8 }2、列内单元格合并命令0 V- y" @) f4 m
需要用 multirow宏包& l* n0 D2 X1 a( Q$ {
\multirow{<行数>}{<宽度>}{<内容>}:内容达到指定宽度后自动换行- _& D: x, s3 r O5 |
\multirow{<行数>}*{<内容>}:单元格的宽度即为输入内容的宽度
7 J, V/ V& v, f3 d( A+ k( E
7 x: ]8 Y" z! l, K2 ?基础模板:! L6 v1 J# U- z, q. N
%导言区 \usepackage{multirow}
" @1 B1 j' S: o7 g \begin{tabular}{ | c | r | r | }
% O/ o: P% b, M \hline
( e3 l4 R6 B5 I/ X# H \multirow{2}*{姓名}&
9 r, I6 K+ N; I8 X& l R \multicolumn{2}{ c | }{成绩} \\
0 k+ n0 _" J2 N y7 K. H0 e4 x \cline {2-3}
; t1 m1 J) Q7 R9 q & 语文 & 数学 \\ \hline
- h9 H2 V3 ^8 _$ K 阿汪 & 93 & 97 \\ \hline' E9 b D3 X, ^0 s, C
%阿汪先生的博客
1 H* `2 [. d, n& z! a( n5 Y \end{tabular}0 }9 N/ R3 K1 u/ i
f5 I' _: B- c) \' {# m
四、特殊表格
0 O% @8 W/ W) d/ O, D1、定宽表格—tabularx
4 z2 i' G" \. i- p(1)注意点:" E: |2 c, G9 d# r; D! B
tabularx宏包提供tabularx环境
5 L! G" B2 J/ ?0 |/ m2 _% W X为列格式说明符(列宽自动延伸),单元格内部默认左对齐,使其居中需要array宏包支持。0 l; Q+ F. j4 C4 m
0 Q# j: ?: g& [8 @
(2)使用示例:& s) D3 O, |) L: Z1 h
%导言区 \usepackage{tabularx}- D9 @6 K, @( X, r j0 Y9 m! Z
\begin{tabularx}{400}{ | c | X | X | X | X | X |}
$ K, X1 ]- O; Z. | `* U' R: h& b \hline7 E& S: ^' R; x8 Y$ A5 Y
数字 & 1 & 2 & 3 & 4 & 5 \\ \hline
: J8 j. |. W& n) f) C+ p, f6 B 汉字 & 一 & 二 & 三 & 四 & 五 \\ \hline! S7 I1 s; c. F" ]/ {- b
%阿汪先生的博客
- ~4 \5 ^/ h& v4 i0 @ \end{tabularx}
1 Y4 a! d: F6 {. f. X & c) w" B0 U/ J. X' o" J
2、三线式表格—booktabs
3 W/ P( |3 c. O: p(1)booktabs提供了如下命令:9 M7 p9 b3 `# Q
\toprule ,画表格顶部粗线。. H+ T% P& Z0 l9 {1 H0 E. y
\midrule,画表格中部粗线。/ [: H/ S& k5 F8 [
\bottomrule,画表格底部细线。
# U* ~. b1 z4 g8 W K# n \cmidrule 与 \cline命令相似。
. W0 F2 L/ `! B" l" _8 g' K& J7 h2 U/ e
(2)使用示例:* `- p+ y* K$ ^1 W
%导言区 \usepackage {booktabs}6 B: g5 M" [* v4 I/ O
\begin {tabular}{c c c}8 l+ A" @& n+ i; f6 i% D
\toprule
5 x- ]; j1 l0 Z' G3 |0 d 姓名 & 语文 & 数学 \\ \midrule2 |! V* w6 [6 I( q
阿汪 & 93 &97 \\ \cmidrule {2-3}
& i4 N; h2 q) u! v8 S0 Q9 \/ _+ m. i 阿喵 & 98 &92 \\ + V6 H2 H, g* c8 c
\bottomrule ' s; z$ G0 I+ T" F. \
%阿汪先生的博客
( t' Q3 \. C' P# m1 ^\end{tabular}
% d0 y/ f+ R% ]1 o* \5 c7 N+ f$ T- x- I2 S1 k: v+ S
五、常用表格参数的设定
7 e. o, j7 k. R4 q$ E; N1、表格浮动环境
5 z- z8 X. ]' Q( A控制表格(浮动)在本页中的显示位置需要table环境。
7 m0 t% o' T: k& I8 h7 {; G6 v位置参数有htbp四种:here 、top 、bottom 、float page。0 K. p& g# l: [' V
table环境中可以通过 \caption 命令表格的标题。
0 d" C! W+ k- o( E" N, g$ d2 y
- q& X1 w- L7 {(1)位置参数htbp释义:8 c3 `' p1 w/ o, k: O
here:在输入表格的位置排版
}. }' |$ E$ y4 H* V' ktop:在输入页面的顶部排版
8 r' B5 @) ~% ?bottom:在输入页面的底部排版# h& R @( M* I# G
float page:在单独的浮动页面排版- W7 e+ t1 ~) Y, Q
(2)使用模板:7 E0 \" u+ c8 Y! p* j; r
\renewcommand\tablename{表}' |; S$ B5 p+ Z! f$ F
\begin {table}[htbp]
, x; f: u1 t0 g! b) O( W! j- V \centering \caption{成绩一览表}3 Z J( n( j8 G/ \- ^% t" b0 w+ E
\begin {tabular}{c c c}7 O Z6 x5 n# s) ^0 ?/ D' \6 X: |
\toprule
+ i) M* j6 P: p 姓名 & 语文 & 数学 \\ \midrule
" g5 Y: D' H! d2 |7 S. s. { 阿汪 & 93 &97 \\ \cmidrule {2-3}& O/ a6 C3 T) T8 i$ R
阿喵 & 98 &92 \\ ) ^6 ?. N- e# a: h$ M6 b, [
\bottomrule7 R+ P' Q: v0 `8 d) Z! q( t' ^
\end{tabular}
, l3 B a; T. f; `% C %阿汪先生的博客# i v- f4 j o
\end {table} . f' F. D8 o! F: w) g% W) K. @7 w4 u
2 V) H$ N- b$ V9 \- D+ u3 ~# l! l
2、功能强大的tabu宏包
9 `% h- N+ h8 \+ N- d$ w* u7 w/ Q(1)tabu宏包提供的基本表格环境
t! N$ N* Z( e& U0 Y\begin{tabu}[<垂直对齐方式>]{<tabular列格式说明>}! M9 \0 ]; r9 N2 t
\begin{tabu} to <尺寸>[<垂直对齐方式>]{<tabularX列格式说明>}
8 v. z$ |( I6 K6 I\begin{tabu} spread <尺寸>[<垂直对齐方式>]{<tabularX列格式说明>}
3 a+ q/ w; d. g" \+ I: a, 其中**spread <尺寸>**表示:在表格的自然宽度下再增加一个<尺寸>。' [' y- Z r5 N
(2)画线格式9 ?) v+ [/ m& {7 d5 h
tabu环境中的画线命令:竖线|有一个可选项,可用来设置表格竖线的宽度。& ~& o$ T8 b- [8 c
\begin{tabu}{|[2pt]c|c|[2pt]}
l: n8 b9 O Z" a: M# o \tabucline[<尺寸>]{-}用来画横线,<尺寸>设置横线厚度,
7 V2 h/ h3 @. T: V {-}指从本行起到本行末尾画一条横线,/ @9 L, e7 s. f4 h5 x% C2 \) A
{2-}指从第二个单元格开始画线至行尾。
8 `4 `! j& P. W: @& ?- ]: J$ ~1 q' J3 q
(3)单独设置一行的格式
. { T* \; v' F$ U \rowfont[<对齐方式>]{<字体格式>} 可以设置一行单元格字体的格式。
% }+ v4 p' x' w$ p使用示例:
, H5 ^) {9 N1 S6 v; e$ \+ C6 l# N8 A. i1 w
\begin{tabu}{|X|X|}1 u) h C% {1 X* L) [
\tabucline- %“-”表示无厚度等参数
6 S1 p# c3 S I; u. X& G% x \rowfont[c]{\bfseries} This & is \\ \tabucline-
) R. ?6 ]1 l$ k8 M2 Y) h& S for & everyone \\ \tabucline[2pt]-5 m/ g' E F# J4 `6 F' L6 ~5 D
\rowfont [r]{\itshape} Mr & Wang \\ \tabucline- 1 V* l, Z" l9 H J8 L% r2 U0 [' t9 D
%阿汪先生的博客
" l4 `$ k* S: q' f6 `\end{tabu} . L, l5 v- d% j0 U5 c
! L Q, v" n" {! C(4)其他操作
6 w2 T5 D, R, c8 q7 M, E在tabu环境中合并与tabular环境不一样,前\extrarowsep后要在\end{tabu}之前添加命令 \tabuphantomline。
+ h, T/ t$ ]0 j/ q- ]3 h, x\extrarowsep可以在每行垂直方向上添加额外空白,得到相同的行高。
8 n0 B0 S Z8 x0 ^4 a, N" o* N# j' X" A使用示例:9 I' R) D' D: X: W
\begin{tabu}{| X | X |} \hline6 M* V% }! ]- c% s
\multicolumn 2 {|c|}{Hello}&World \\ \hline
' I1 N3 ^; ]) q* B2 F( C/ Z\tabuphantomline %阿汪先生的博客: }. }8 O8 G$ A) g3 \$ q/ u
\end{tabu} %表格中不能有空行
( s$ t/ i5 C- o9 E1 u! A( e& N/ G c- H* |4 j7 a# @" U: o4 v1 T
————————————————1 B* G2 F8 y6 j5 e
版权声明:本文为CSDN博主「阿汪先生」的原创文章。: C6 | i5 \# x! F: G( U5 e9 @: F
原文链接:https://blog.csdn.net/qq_43499622/article/details/96894437& A. M- ~# ^# q" b5 I$ }: O9 h
|
zan
|