- 在线时间
- 661 小时
- 最后登录
- 2023-8-1
- 注册时间
- 2017-5-2
- 听众数
- 32
- 收听数
- 1
- 能力
- 10 分
- 体力
- 55575 点
- 威望
- 51 点
- 阅读权限
- 255
- 积分
- 17624
- 相册
- 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 田老师国赛冲刺课 |
一、常用的表格宏包
+ V! G0 a+ ^# e1 k+ Q- f dcolumn 对齐小数点
. X2 \8 ^5 Y4 s) A6 n; R. u# b makecell 单独控制单元格格式
3 v9 {0 ^+ o% v1 B, s4 v diagbox 对表格进行斜线分割
, a4 C4 b9 N6 A) b! G* longtable 长表格,可用于处理分页表格(表格超过一页时使用)
' m! ]0 t/ z+ F' u/ F, h ltxtable longtable和tabularx的结合体
3 O% p4 _0 e$ O' J array 各个表格宏包都依赖于它3 u: u* K' l. o$ n
* tabu 命令简单、功能强大+ |; X! a$ ^1 S5 S A; r
0 }4 H. @4 g D$ w
二、输入格式及说明
b) {; C ~1 H* F1、一般输入格式% R/ e" o0 t s3 a
\begin{tabular}[<垂直对齐方式>]{<列格式说明>}
+ d* K4 U) ]/ _: ? & & & & \\
3 ?) c4 W5 I& r* X3 s \end{tabular}
8 B$ ^" V# M9 k+ b1 q7 @/ i7 [/ h
, g( U1 v: x$ d, a; y, G6 U2、一些说明
0 z& u0 B3 P3 `: v& D ^(1)特殊符号:
4 d7 n2 _2 g8 ? \\ 表示换行
# W+ x% }7 \! W v: s7 @ & 表示分隔单元格% K+ Z) u) ^0 q. R
: l: ^- ?) w& `% J. e(2)垂直对齐方式:
3 f% n" _7 Z4 Z t 表示按表格顶部对齐
% ^+ t3 {( u8 a* C, W b 表示按表格底部对齐' ]+ G% A/ {( K. @8 J
默认为:垂直居中,非t和b的参数都看作居中& K! X2 F4 C/ S2 e$ e7 h3 o# w T( b
8 v8 m' g2 q! k. r0 J# f& Z2 Q(3)列格式:
4 b4 I: e5 J9 G, `' e l 表示列左齐 (小写的 L)1 v. m1 v0 e" K, b- w+ z4 L
c 表示列居中对齐. ?5 T; _% \: w5 G( F
r 表示列右对齐
0 G( F% r& W4 u3 S( [( W4 Z, K: A" T8 r! _5 ~% ]
三、单元格的合并, E0 f4 Q5 Y% i( v2 E/ h/ ~' j
1、行内单元格合并命令( z! J0 o! g; L
\multicolumn{<项数>}{<新列格式>}{<内容>} %<内容>为合并后的新内容
7 B x7 v' h( v& k% ~. K: V, `
" s* q T3 y c7 }( h2 ^(1)基础模板:# \8 w) d) @2 f/ @7 ~4 V
\begin{tabular}{ | c | c | }/ a6 }1 L/ b" l' j0 _9 H' }
\hline
+ r- m9 E( W- T$ D \multicolumn{2}{ | c | }{成绩} \\
7 x$ Y7 H$ K8 ^+ S2 k9 z \hline
# C8 k B: B* _4 e4 [" [" g# e 语文 & 数学 \\ \hline
2 y) E. @, x4 n4 p7 U' Y( F! [: x5 U 100 & 100 \\ \hline
% o. I' b% k% O& M3 W %阿汪先生的博客
* c) ]: Z2 S. @6 m! ^* E \end{tabular}
& t: ~9 g$ @/ v % ~% C7 r4 G9 T2 u5 a4 v& p
(2)进阶模板:& h, b9 R7 }4 T1 ]# l' O+ ?
\begin{tabular}{ | c | r | r | }
$ }9 _# ~# x7 q' P1 i( L% K# Y- Q \hline) V' O0 w }* B. ]* o/ H3 p5 T% B9 ~5 z
&\multicolumn{2}{ c | }{成绩} \\
. @& y9 S/ J' p+ V9 S# M# u/ i& |5 t. I \cline {2-3}! m$ _1 l9 u, j1 M
姓名 & 语文 & 数学 \\ \hline0 ?. U- `( E6 v1 a4 k+ J: h
阿汪 & 93 & 97 \\ \hline
/ I% s* ]/ O% b" Q6 `; x4 W5 | %阿汪先生的博客6 M" c/ F0 [% _
\end{tabular}% M2 F z# c6 E
6 `" C, ]' A% y/ D* h! i0 \' [
语句技巧:画水平表格线需要指定线的起始和终止列号。, p: F( k- ?6 @
用 \cline {<起始位置> - <终止位置>} ,如\cline{2-3} 。
9 N: Z4 F3 E* g, o8 t
( `6 i5 q4 u% D% |) k2、列内单元格合并命令 P% X, @) n( I& t) _& Z. H' w4 O8 c
需要用 multirow宏包
7 }. H' A1 W! I% E1 L7 W- o, A2 T s\multirow{<行数>}{<宽度>}{<内容>}:内容达到指定宽度后自动换行
% @( F0 k5 W; k0 b' Z\multirow{<行数>}*{<内容>}:单元格的宽度即为输入内容的宽度
- v# ~8 w/ \* {) s7 `1 X0 M, M" `
/ L- K+ y( }: z B3 x基础模板: s; c. Y3 L* x) d0 i7 T9 j
%导言区 \usepackage{multirow}
7 b+ o% x( H7 ^8 r" F \begin{tabular}{ | c | r | r | }8 t% U5 {3 u+ p, W
\hline( W& T7 J- @: h/ D$ ?$ w* B
\multirow{2}*{姓名}&
+ {5 P7 V. n% T1 I \multicolumn{2}{ c | }{成绩} \\/ g% j L. m' e9 \
\cline {2-3}: d$ q q% F2 v6 Y7 D0 E
& 语文 & 数学 \\ \hline: n+ e4 c+ }) M M& c8 K7 G3 M4 U
阿汪 & 93 & 97 \\ \hline
: s9 a. _8 a; Q: u9 R' @ %阿汪先生的博客5 {. ?# ?! o. ~8 e
\end{tabular}
8 N, d# J2 ~# p6 e: t$ K+ D
* `" r. h/ \3 l- X四、特殊表格
0 O9 O& {. M8 {) t3 h, M$ O0 {1、定宽表格—tabularx) s1 n# l2 G) o% W7 ~# G6 |
(1)注意点:
6 i2 u- K' E' z Y; |. w tabularx宏包提供tabularx环境1 d9 d: {* J4 o0 W2 G, \8 |
X为列格式说明符(列宽自动延伸),单元格内部默认左对齐,使其居中需要array宏包支持。) Z$ {: M7 u. [1 h- j) J: F
! r( N5 ^4 i" p# V* u$ O i U
(2)使用示例:
& o9 z' V( R) q- i8 v- z%导言区 \usepackage{tabularx}4 k% |2 J5 l* |
\begin{tabularx}{400}{ | c | X | X | X | X | X |}
: c3 D; p0 c- a* A& W \hline
4 T5 {1 D% C% W/ Z, I% Y' s 数字 & 1 & 2 & 3 & 4 & 5 \\ \hline* P% r6 H1 i0 A4 `6 n
汉字 & 一 & 二 & 三 & 四 & 五 \\ \hline
7 s9 B' ^# Q6 Z: E: ]: v+ D, F" E %阿汪先生的博客
8 P" G7 h7 \+ v. Q7 k \end{tabularx}- B C$ R# y9 Q% ~; P! S
% I0 b- b {8 j: N2、三线式表格—booktabs+ Y! n% x/ [( D9 P: H" W: `
(1)booktabs提供了如下命令:
/ q1 p$ K& w: o- r \toprule ,画表格顶部粗线。
; v( t% p4 Q6 y! o$ M7 L% ] \midrule,画表格中部粗线。
9 c( w7 z: s; s- ^7 U \bottomrule,画表格底部细线。: D: [+ f# u9 J' F
\cmidrule 与 \cline命令相似。
1 b2 {/ k" J1 o; d$ j- V' e
5 Q! q; R& E1 A/ S3 t7 k" `(2)使用示例:
y9 y+ J- U' X D7 Y) @%导言区 \usepackage {booktabs}
8 ^# p. G7 T& K2 t- e \begin {tabular}{c c c}& C Z4 F9 r6 A% Q
\toprule
' {: w x0 J% W% j/ C A# e 姓名 & 语文 & 数学 \\ \midrule
_+ ]# f: F$ u F$ w# r8 d 阿汪 & 93 &97 \\ \cmidrule {2-3}5 Q9 b7 X3 Z4 @. |
阿喵 & 98 &92 \\
1 d; T0 `, J. i! `# l \bottomrule - M ]3 M: `7 A+ w3 l
%阿汪先生的博客
9 _2 o5 a" v$ ~3 K\end{tabular}
4 P0 ^5 W* `% u, Q. y
9 G) n8 J# t4 I) f五、常用表格参数的设定! K+ l0 @1 T! i7 R: G! ?! U
1、表格浮动环境
) o; @4 _! w; i; I3 t- M6 B6 m, ]控制表格(浮动)在本页中的显示位置需要table环境。# _8 b7 u, j2 N3 t3 P+ u
位置参数有htbp四种:here 、top 、bottom 、float page。( E- [% g \6 N+ v: V9 }+ s" u
table环境中可以通过 \caption 命令表格的标题。
+ V5 ]5 y' b0 _; H
; ^% k# _5 F- Z, ](1)位置参数htbp释义:
( U: v6 N3 `. ^here:在输入表格的位置排版; U, |4 ~ n9 b/ ^9 |
top:在输入页面的顶部排版0 B1 E* H7 E9 v8 F5 [
bottom:在输入页面的底部排版
8 h4 n# z u: s- P" V Sfloat page:在单独的浮动页面排版4 U3 b3 o+ f( I5 z$ i8 h6 \
(2)使用模板:3 \1 r9 |2 {8 P
\renewcommand\tablename{表}
0 J$ z4 l4 v6 a$ w \begin {table}[htbp]3 n* Z' s" E! U6 r/ g7 a3 ?6 Y
\centering \caption{成绩一览表}. |) `' K2 A; y. s' `6 I2 P
\begin {tabular}{c c c}
" w u+ m8 I( {7 M& [% k9 f \toprule
% n5 T O! E) {+ B w8 J0 w 姓名 & 语文 & 数学 \\ \midrule
, w# _* g! \5 d' F. E, k& l+ U 阿汪 & 93 &97 \\ \cmidrule {2-3}
3 m& ~- C9 O3 Q ~5 s. m! a. F8 N) M 阿喵 & 98 &92 \\ 1 Z7 ^7 e( d( l. r
\bottomrule
( j/ P% y0 H* b \end{tabular}# A+ k* S/ [- x6 H: r8 ]2 P' _
%阿汪先生的博客
; j, ]6 o9 g" Z, ]- d/ o \end {table}
, \2 d6 s! ^, V* }
2 Q2 e+ V/ j2 N; {2、功能强大的tabu宏包
: g7 [' k( k) E/ p/ t- h+ |# V; h4 G(1)tabu宏包提供的基本表格环境
* W; J, W6 m( b5 _5 i\begin{tabu}[<垂直对齐方式>]{<tabular列格式说明>}
/ C( ?* Y4 v9 A( T\begin{tabu} to <尺寸>[<垂直对齐方式>]{<tabularX列格式说明>}
3 O( [& s* n* y& z5 n* z1 I\begin{tabu} spread <尺寸>[<垂直对齐方式>]{<tabularX列格式说明>}
3 R7 S5 J- q% l4 ?, 其中**spread <尺寸>**表示:在表格的自然宽度下再增加一个<尺寸>。
) v6 m, Y& h3 { t; Y/ s2 I(2)画线格式
- N$ Z6 s+ ^9 ]4 t, D; _* P- ] tabu环境中的画线命令:竖线|有一个可选项,可用来设置表格竖线的宽度。' B/ Y" F6 Z$ M' m9 z1 o" m7 x
\begin{tabu}{|[2pt]c|c|[2pt]}
0 @$ B) }: O: ]8 r4 v6 ^ \tabucline[<尺寸>]{-}用来画横线,<尺寸>设置横线厚度,9 C9 A0 O4 H1 l$ P$ v ?1 B
{-}指从本行起到本行末尾画一条横线,
& N- j" K8 S/ i+ | {2-}指从第二个单元格开始画线至行尾。( \' e7 ?7 o$ e$ k+ k4 B
3 U3 n8 ^% t2 g, j1 m/ [(3)单独设置一行的格式
1 X# t: c) ?- v# R \rowfont[<对齐方式>]{<字体格式>} 可以设置一行单元格字体的格式。/ Q. o$ Q( Q0 t" x7 W
使用示例:4 g* X, F! \0 F7 ?! R
1 V0 b8 B8 K+ y5 O+ S3 \% k" @\begin{tabu}{|X|X|}; N" @: p* ~6 \# _( n. s
\tabucline- %“-”表示无厚度等参数) f- [( a8 E2 U2 T+ b
\rowfont[c]{\bfseries} This & is \\ \tabucline-5 E8 ?) w4 N7 E" l8 s, y }# I
for & everyone \\ \tabucline[2pt]-
+ W q3 j9 u/ c g \rowfont [r]{\itshape} Mr & Wang \\ \tabucline- % m: g8 x3 h" u3 [. x3 o
%阿汪先生的博客
6 g& g3 l: @* w3 L" @3 D5 D\end{tabu}
+ _+ b# z! i" P) Z+ U; i3 W0 W3 B v+ x# ^$ S" M
(4)其他操作5 W4 w3 W# f; K" g) k( O
在tabu环境中合并与tabular环境不一样,前\extrarowsep后要在\end{tabu}之前添加命令 \tabuphantomline。1 f7 y: p3 p4 s& X( N v+ y
\extrarowsep可以在每行垂直方向上添加额外空白,得到相同的行高。
6 H* t/ g$ S) l! Q! N( D0 k使用示例:
. y8 G$ p- D) J' F$ ^- o\begin{tabu}{| X | X |} \hline
' M7 p5 e0 J4 _ T- P& O& s\multicolumn 2 {|c|}{Hello}&World \\ \hline& t2 ^& [. \% Y2 w. C/ R
\tabuphantomline %阿汪先生的博客
6 L- s5 |, W# W# N\end{tabu} %表格中不能有空行
" V: i4 P% a2 s6 w
: R( D" q3 S$ v2 l$ U————————————————- W8 L, B; g, Y+ Z
版权声明:本文为CSDN博主「阿汪先生」的原创文章。
$ _, q# v7 ]9 q4 x! t原文链接:https://blog.csdn.net/qq_43499622/article/details/96894437. w. n( {7 p3 C6 L: a' @
|
zan
|