- 在线时间
- 661 小时
- 最后登录
- 2023-8-1
- 注册时间
- 2017-5-2
- 听众数
- 32
- 收听数
- 1
- 能力
- 10 分
- 体力
- 55580 点
- 威望
- 51 点
- 阅读权限
- 255
- 积分
- 17625
- 相册
- 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 田老师国赛冲刺课 |
一、常用的表格宏包4 W: K, g! h" k, |: f: V# x
dcolumn 对齐小数点9 Q* P3 p3 S3 w
makecell 单独控制单元格格式# F8 G8 e( \5 m) a# _, `
diagbox 对表格进行斜线分割0 \3 h/ Z5 l% {: p. u- {% p7 L
* longtable 长表格,可用于处理分页表格(表格超过一页时使用)6 s% n8 `. _- d
ltxtable longtable和tabularx的结合体9 Y- P. x6 A( \- P$ R$ [
array 各个表格宏包都依赖于它7 Q5 ?5 x: h6 L6 N0 M ?
* tabu 命令简单、功能强大9 c5 Y$ c6 V6 ?4 @5 |7 u) ]
8 o9 ?# c9 j$ z- [8 m
二、输入格式及说明5 J1 y- ^/ Y* A1 B
1、一般输入格式
4 \# d0 e4 K/ l* q+ y7 |\begin{tabular}[<垂直对齐方式>]{<列格式说明>}
9 \' z' n4 Z+ {5 M & & & & \\3 i, ^ T% Z/ X1 A2 D* S, _
\end{tabular}
& e- }- I/ I9 j! L) |
) D7 Q% ^. r7 _8 Q2、一些说明 ?! r* A" v6 E% r
(1)特殊符号:' h6 D6 h+ v1 j2 x; a5 F
\\ 表示换行
* ?, n2 c; u4 y0 j & 表示分隔单元格
+ a+ e( f" |) i0 j! y- C- v& u
1 c2 c U$ f. v/ U+ [(2)垂直对齐方式:
+ m1 `' A( T+ Q9 j3 t+ V: L9 q t 表示按表格顶部对齐7 r! m; d$ _+ |9 o% O
b 表示按表格底部对齐
5 y, m) Q0 x: L. s 默认为:垂直居中,非t和b的参数都看作居中
9 w8 S# O* G* c/ R6 f' |
+ J0 h3 Y G ]( e, l5 o% P7 B: k(3)列格式:- H8 X4 f$ v/ K6 }
l 表示列左齐 (小写的 L)2 q0 P; e- o+ }4 q9 P6 {: M
c 表示列居中对齐/ s: q' E( ^* ?9 j" f6 f5 |. ?5 X
r 表示列右对齐! O5 Y5 o6 d. F
H8 X! ~) ?4 |- A" t三、单元格的合并
3 [' K1 `! ^3 j1、行内单元格合并命令" k/ L* J. t" d( r+ |
\multicolumn{<项数>}{<新列格式>}{<内容>} %<内容>为合并后的新内容
4 {6 m/ |5 k2 B5 W, T- r7 j- Y4 d4 h( v/ ^0 Z/ x) P: B0 P
(1)基础模板:
, b% Z u7 o% X \begin{tabular}{ | c | c | }
4 a+ \. [& Y! E+ X; |6 _ \hline; F. K2 V. ?9 ]/ x! ?
\multicolumn{2}{ | c | }{成绩} \\/ ^, @6 B+ w; b; P) a
\hline
& p5 l; k+ g4 ~$ A1 o2 Z c 语文 & 数学 \\ \hline
$ L4 E5 H: U! E" i& o' q+ E 100 & 100 \\ \hline. ?8 f8 @+ T# M Z* O# q
%阿汪先生的博客
+ U0 W2 g0 X% R8 a- n: K \end{tabular}
3 t- {5 c, Y- L: ]; O0 w0 N . q: H1 E0 V7 i ]: O
(2)进阶模板:
0 J9 i' I% t1 S1 f( \) j \begin{tabular}{ | c | r | r | }9 G1 I0 q, ^/ S6 t; L6 L
\hline% x3 W) _* }- S' i7 @: h
&\multicolumn{2}{ c | }{成绩} \\" k+ B0 Q; V/ G
\cline {2-3}
+ e' m# L& ~6 x& J 姓名 & 语文 & 数学 \\ \hline7 B$ n# V3 Z4 R" N7 y0 p4 G
阿汪 & 93 & 97 \\ \hline 0 X& r9 a& K7 r* g* @5 T5 E3 {5 ^
%阿汪先生的博客' g/ u6 q* V6 u8 `9 l$ W& ]
\end{tabular}4 ^$ v2 @ E$ a! A/ D( W& b
" u1 O4 [% p; s- L语句技巧:画水平表格线需要指定线的起始和终止列号。
s* s9 e ?* f( u# p" P用 \cline {<起始位置> - <终止位置>} ,如\cline{2-3} 。$ M, Z* l+ r6 _, J9 O
8 q! r, E! Y- u+ s7 s( z2、列内单元格合并命令
; D* Q! D5 u- K" E6 V% I需要用 multirow宏包
3 T) P- p) i" n, T\multirow{<行数>}{<宽度>}{<内容>}:内容达到指定宽度后自动换行& u( E3 W: w- W: q- _
\multirow{<行数>}*{<内容>}:单元格的宽度即为输入内容的宽度. F' _+ m6 Z$ ^2 t" ~
$ e! f8 D/ O: g4 c& U: h$ Y基础模板:# B# g/ x! F. l& F
%导言区 \usepackage{multirow}5 J, y8 V) ~2 F; o
\begin{tabular}{ | c | r | r | } x6 b6 c3 L- l* _" @
\hline
, }0 S4 c" Z4 X3 L. U6 E, A \multirow{2}*{姓名}&
" [/ W: `/ b, }7 r \multicolumn{2}{ c | }{成绩} \\
9 {( `0 x I5 a( y& X# z* H \cline {2-3}; Z, g) j0 K* N) ^, s
& 语文 & 数学 \\ \hline/ u$ Z7 A' J E& D) ~. d% }
阿汪 & 93 & 97 \\ \hline
: x, W& A0 U2 j3 K' m& \& a5 R- l %阿汪先生的博客7 v6 L3 r: d( @: [- q" P ]* B
\end{tabular}
1 P, X9 P/ |9 K5 }1 @+ S- K( E) Q" \/ N% w
四、特殊表格1 u8 c F4 s/ ^' g( @( u& U
1、定宽表格—tabularx1 e0 _. w# f# ]& _. h* n0 d
(1)注意点:2 R7 z4 _6 Q; g$ F$ e4 u
tabularx宏包提供tabularx环境! A2 { [5 ]. a( y" \' @
X为列格式说明符(列宽自动延伸),单元格内部默认左对齐,使其居中需要array宏包支持。7 y/ a# f; r+ ]3 x& z% o2 X+ ~
i! b( ~4 R9 Y(2)使用示例: P5 \; G& b# R. n
%导言区 \usepackage{tabularx}. g$ {* B5 v+ M) W$ i
\begin{tabularx}{400}{ | c | X | X | X | X | X |}- }5 h, T* `. Y$ m5 N
\hline+ Z! Z, p& F s" c, Z5 V% U4 u
数字 & 1 & 2 & 3 & 4 & 5 \\ \hline
8 q8 P4 p1 C, D 汉字 & 一 & 二 & 三 & 四 & 五 \\ \hline/ Z8 i* V* I5 k* h2 F- q+ X
%阿汪先生的博客
. V3 N+ N8 \4 U5 {3 @! Q' b8 x# W \end{tabularx}: R G6 n( E) z6 f" r: z$ h4 s
8 A) I7 j& b1 f! m8 ?2、三线式表格—booktabs) J0 R3 k4 ~$ S. @- l, }
(1)booktabs提供了如下命令:0 _ o$ P! w6 d, X9 \# R# t* h& H
\toprule ,画表格顶部粗线。' @! r: Y- z4 }/ d: D# U: ]* N
\midrule,画表格中部粗线。
l& p. P2 F. A! R# A c e! R: q \bottomrule,画表格底部细线。
- y' X* n/ i% X: m5 p( N \cmidrule 与 \cline命令相似。
8 J0 N, C+ P% {/ k, T
4 k; d) W# z2 I% e+ x. |3 Y! X2 y4 u- n(2)使用示例:
% X+ n; S9 G# k$ y" X" V%导言区 \usepackage {booktabs}
2 ^' `1 _4 U+ n9 Y7 _ \begin {tabular}{c c c}
3 [% m1 `! y, D4 d) v \toprule
) ^: B# g r+ H" k. R 姓名 & 语文 & 数学 \\ \midrule
' A* y! Y' U% x. Y' k) O 阿汪 & 93 &97 \\ \cmidrule {2-3}
2 w' A5 ]# I; ?& ]6 O2 N7 _9 G# b 阿喵 & 98 &92 \\
6 ^3 q2 T1 _1 R3 S7 j. ` \bottomrule
! h! i4 T) O" P8 l" S- W; B; Q5 P; F5 c %阿汪先生的博客
; Q: W6 f, f* O% _. [, D6 `\end{tabular}
& P4 X: @6 v- K4 M l; k1 g! d
0 S& B# F& U( M( G6 o M# {/ G五、常用表格参数的设定- y3 n: S. Z9 v9 e* ]
1、表格浮动环境
& ?8 S$ L3 s2 ~* N8 A控制表格(浮动)在本页中的显示位置需要table环境。
" L: U2 o y2 O: N' _1 Y+ y位置参数有htbp四种:here 、top 、bottom 、float page。
' [ p' x0 D( r2 q6 N) E0 X1 Etable环境中可以通过 \caption 命令表格的标题。" y. }0 U7 S$ t/ f' R
' T Z2 X/ H# d2 d! c9 M
(1)位置参数htbp释义:
1 d& _) E2 r9 l: q9 }here:在输入表格的位置排版! i3 ?# C% ~" W
top:在输入页面的顶部排版
- H3 }0 r4 s" b2 ?bottom:在输入页面的底部排版
6 P% g, M" N4 X7 y8 S/ Q3 L* cfloat page:在单独的浮动页面排版" I v. L/ r; R4 s8 f
(2)使用模板:; d2 c: |5 A. u( C' g& |) q+ Q
\renewcommand\tablename{表}% N$ ^( F1 }& Q+ N
\begin {table}[htbp]( M4 _" C' ?. m$ c; {0 O, O' ]% t4 Y
\centering \caption{成绩一览表}0 g/ e- j* l8 \: H
\begin {tabular}{c c c}# g3 v$ Y6 z) _4 |+ I/ P# w+ Y
\toprule 2 d% B" G/ w8 }# a9 k
姓名 & 语文 & 数学 \\ \midrule8 i# j1 L1 \ A- [' |
阿汪 & 93 &97 \\ \cmidrule {2-3}
( c) H) O$ i4 f- `3 R+ p$ S 阿喵 & 98 &92 \\ 4 B& p: C) K6 d0 ?2 u, T' K; U- @
\bottomrule) m2 \8 x, P* ~4 j9 a
\end{tabular}/ ~5 H' A: O6 \
%阿汪先生的博客* @5 F5 \5 W3 _5 B5 g# U
\end {table} & V/ \1 ~; |( Z0 k& T! |
( l+ I: V4 D; f. N5 ]
2、功能强大的tabu宏包+ L% L: z7 k" W n% [3 H( Y) ]3 U- `
(1)tabu宏包提供的基本表格环境
9 b+ i& ?+ {+ X. D% v$ A\begin{tabu}[<垂直对齐方式>]{<tabular列格式说明>}. W+ l9 B4 z6 u* X: O
\begin{tabu} to <尺寸>[<垂直对齐方式>]{<tabularX列格式说明>}: [ ?9 o, j" h- I& f0 ^
\begin{tabu} spread <尺寸>[<垂直对齐方式>]{<tabularX列格式说明>}- b, N) E+ j U4 @
, 其中**spread <尺寸>**表示:在表格的自然宽度下再增加一个<尺寸>。
4 {* ?2 j2 D& `( c0 e- \6 B(2)画线格式
9 a/ n5 P4 I0 b0 X" y2 d* U8 j z tabu环境中的画线命令:竖线|有一个可选项,可用来设置表格竖线的宽度。
9 Y+ t# G- I. _; {* F, q; r \begin{tabu}{|[2pt]c|c|[2pt]}' g& a' I! T/ g3 P6 D5 `, `6 a* H
\tabucline[<尺寸>]{-}用来画横线,<尺寸>设置横线厚度,
* j/ k5 E) K+ C' c% O: ^ {-}指从本行起到本行末尾画一条横线,5 r8 S* o/ V+ G; ]. ]; z6 ]: m5 M; z
{2-}指从第二个单元格开始画线至行尾。6 I1 U7 O/ i: Q3 j+ w
5 g; h: o! k0 Q$ |* h' T
(3)单独设置一行的格式
* U+ E% [, x. q+ ]: ]2 K. t \rowfont[<对齐方式>]{<字体格式>} 可以设置一行单元格字体的格式。
0 U# X: y) N7 B( R2 `/ P8 p* K9 H使用示例:1 K0 ] M& P& V+ Y, k7 t, U
; k9 g2 a3 O: S @1 {
\begin{tabu}{|X|X|}
! i4 w9 ]7 Q3 ~ \tabucline- %“-”表示无厚度等参数
& I( B+ e3 u9 C7 @* I8 { \rowfont[c]{\bfseries} This & is \\ \tabucline-/ n8 y0 F8 j+ _! c6 O% {
for & everyone \\ \tabucline[2pt]-
8 l3 n, H5 q/ }9 M* O \rowfont [r]{\itshape} Mr & Wang \\ \tabucline-
9 O# R% V! }$ }$ \6 ~' u! C %阿汪先生的博客
% [3 K, x' T2 p- Z9 ?" a\end{tabu} ) i0 s* Z1 ~% m I0 b# V
/ r% H5 G/ n# K) G& X- F
(4)其他操作4 C8 a* _8 X: C2 V
在tabu环境中合并与tabular环境不一样,前\extrarowsep后要在\end{tabu}之前添加命令 \tabuphantomline。 B5 w# s* r& v G: @% J! @
\extrarowsep可以在每行垂直方向上添加额外空白,得到相同的行高。
, U4 d0 j: X8 t: O: C# e% P使用示例:
* O8 ]9 B/ k4 p5 E3 G* k\begin{tabu}{| X | X |} \hline; m$ T4 ]; f$ H
\multicolumn 2 {|c|}{Hello}&World \\ \hline
$ Y; M2 o3 `: N; x, e' c\tabuphantomline %阿汪先生的博客
+ C% A- ^4 s$ y$ L8 L9 h n\end{tabu} %表格中不能有空行0 m( Z0 W, C: Y5 N- I4 H* [
1 A J) e% Y8 @- Q3 l————————————————) t( r3 j$ U" ?2 T
版权声明:本文为CSDN博主「阿汪先生」的原创文章。! J4 U( y6 a# n
原文链接:https://blog.csdn.net/qq_43499622/article/details/968944378 h7 z" x3 B/ x
|
zan
|