- 在线时间
- 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 田老师国赛冲刺课 |
一、常用的表格宏包
( F4 X* k: M6 I$ P' K1 x dcolumn 对齐小数点: z7 A, M. f9 U
makecell 单独控制单元格格式
7 k4 u5 E4 f' l" ?. X. w# _ diagbox 对表格进行斜线分割0 S% X) S* c1 T, U H
* longtable 长表格,可用于处理分页表格(表格超过一页时使用)$ G7 X9 c) T3 r; S5 I: [ v
ltxtable longtable和tabularx的结合体
* E+ Z& m5 g! D9 i5 \7 |0 F array 各个表格宏包都依赖于它
9 ]! u+ g4 i9 \! j2 |8 W* tabu 命令简单、功能强大% H4 u& L& l0 n6 p3 O
9 l* ^+ B W1 b5 Q; f. k/ L
二、输入格式及说明8 ~0 w9 ?7 ]% i8 c" n3 R9 q- C/ d" X
1、一般输入格式( ?; c" H: Q( S
\begin{tabular}[<垂直对齐方式>]{<列格式说明>}
1 {# `7 d( o$ } & & & & \\
6 e# ~: k* T6 U9 p9 Y1 ]+ g5 P \end{tabular}
/ C9 `* H4 @$ N1 Q# n; {5 K: m: `! q$ t; F: `
2、一些说明
" j4 [+ V$ V2 o" K( @* C/ I. [! C(1)特殊符号:' f0 [4 @0 w3 D7 o9 \: a* P/ P
\\ 表示换行$ x' V! s; n% A
& 表示分隔单元格
: r- D9 d6 F* Y6 z* V; r1 f. o# e5 ]# k; N5 u, g: W7 `% L
(2)垂直对齐方式:& Z+ I- y: r+ n$ N x! @/ M
t 表示按表格顶部对齐9 L+ U7 D# B& R. d2 v- z; g
b 表示按表格底部对齐6 c0 K! w$ T5 K: O _" i. N) p/ u2 {& `
默认为:垂直居中,非t和b的参数都看作居中
4 F- m# ?1 u) o( r* x& M; K/ o; Y! w
(3)列格式:, W% B6 Z: H ], h+ C4 r
l 表示列左齐 (小写的 L)
K1 {9 s* Y1 y( U( v$ H1 }/ j: m7 c8 |# L c 表示列居中对齐
9 \7 t/ L5 \6 }' Y+ F r 表示列右对齐
( h. i" p$ Z( Q# ?- p& x2 n$ v$ D
: j8 i0 k& X5 k3 I7 L# W- x三、单元格的合并" ^: q5 n: z7 n7 A9 d$ R
1、行内单元格合并命令5 a% z* B8 d8 R2 X7 ~7 T# V
\multicolumn{<项数>}{<新列格式>}{<内容>} %<内容>为合并后的新内容 : Y# D5 q# l$ }3 p& p
$ S0 ~% M0 x- u- D$ z. H+ K(1)基础模板:- i$ w+ K9 M M8 l% O" {& I8 E) m
\begin{tabular}{ | c | c | }
2 W* _) N+ G' f+ u! a/ { \hline' ~( o! f2 h' L) _/ `& ?- c7 U* I
\multicolumn{2}{ | c | }{成绩} \\* O* g7 F9 b( h! p
\hline; F( M/ p; R& Y r2 U
语文 & 数学 \\ \hline
: N+ A$ v( \$ F. p- g 100 & 100 \\ \hline
4 P/ G1 Q6 _) H/ s' e %阿汪先生的博客8 l7 V2 U+ `$ A+ m% z4 q
\end{tabular}/ a4 @6 W [; Y! q" ~
; e- E2 Z$ e* V- O0 z(2)进阶模板:/ I/ r$ E1 ^$ l! a. Y$ V
\begin{tabular}{ | c | r | r | }5 S5 }0 T% H5 B$ a+ c: r
\hline) H4 o' s0 c/ U$ _$ r
&\multicolumn{2}{ c | }{成绩} \\3 A& L' j% x z) Q# t
\cline {2-3}+ e& L" T2 ?1 l5 I* l
姓名 & 语文 & 数学 \\ \hline
" A8 g5 j! z N( M& v7 H 阿汪 & 93 & 97 \\ \hline ( ]$ x& u+ B2 R
%阿汪先生的博客
d( Y. w- C( b# B: D+ k. h1 x \end{tabular}
, R! b* M8 Z9 F" l
* S+ c/ T; R7 y8 n; w5 Y6 x语句技巧:画水平表格线需要指定线的起始和终止列号。
9 ]) a% a+ k1 w用 \cline {<起始位置> - <终止位置>} ,如\cline{2-3} 。( c c% ^1 j- w' x8 X0 n# {
! M% t+ U" Y& u8 F9 L2 X5 C: ~: d# j' E
2、列内单元格合并命令
G8 |& r7 {& `* t3 u; j需要用 multirow宏包
! i% {5 K. s# J' o, }% Q\multirow{<行数>}{<宽度>}{<内容>}:内容达到指定宽度后自动换行
" c1 F4 E' B! {( y% B\multirow{<行数>}*{<内容>}:单元格的宽度即为输入内容的宽度( ~4 ~! a* O! J9 L* i$ s! K
P$ B( R' A* ?4 x基础模板:
5 B7 ?! B; R( M, \& O, P%导言区 \usepackage{multirow}
) Q1 O' _& D& c& h+ ` \begin{tabular}{ | c | r | r | }; E- k: K) `9 Q) `" \
\hline! V5 ~2 s( X" k7 j
\multirow{2}*{姓名}&; Z. H: u% t$ Z
\multicolumn{2}{ c | }{成绩} \\+ B6 W* [) W, P( g* G* s4 K
\cline {2-3}
/ `* ?+ M2 _& }0 T1 S) ? & 语文 & 数学 \\ \hline# b: ?/ Q, n/ w" B' |6 i$ J
阿汪 & 93 & 97 \\ \hline
0 D" ]6 B; r2 \8 ?) | %阿汪先生的博客
* l2 T4 m# I' p3 Q2 s4 ?' T \end{tabular}
$ c2 ?; s4 L' ?# F, d; P% x: ?
# c/ B3 f2 @0 p四、特殊表格
3 a6 x; L) u: @1、定宽表格—tabularx
l. S: o% C) F& f# o9 a1 x: G" u(1)注意点:
2 d+ n' j M. i' a v P tabularx宏包提供tabularx环境
/ ?* q: b6 |3 O5 w, u X为列格式说明符(列宽自动延伸),单元格内部默认左对齐,使其居中需要array宏包支持。, L3 L& G) p7 o8 i2 @5 k8 l
5 l6 S" E1 u4 s# I! R" O4 B" Y% l(2)使用示例:
( n# v- c; I* J1 c* n; P%导言区 \usepackage{tabularx}5 v( B5 k. s4 E ^, O
\begin{tabularx}{400}{ | c | X | X | X | X | X |}
/ _& N& K. \6 Z \hline! j% d1 Y1 k* {1 c" \$ R
数字 & 1 & 2 & 3 & 4 & 5 \\ \hline
1 n+ `6 U8 I! F 汉字 & 一 & 二 & 三 & 四 & 五 \\ \hline
* h& g8 [( a( t1 q; Y4 u %阿汪先生的博客- t- d- R9 p5 B' c
\end{tabularx} q) n0 F- \; i% v4 g" R$ e
n( A9 v# Y. q% v2、三线式表格—booktabs
2 @: I* F1 p, @' W(1)booktabs提供了如下命令:7 t2 q5 S2 h& e" |; i: \" m9 N' b
\toprule ,画表格顶部粗线。% E( ?- }8 V; J6 N- a0 e
\midrule,画表格中部粗线。4 \& D% D. F/ c) |; q% N& f
\bottomrule,画表格底部细线。
/ J8 y2 e% @4 H, t \cmidrule 与 \cline命令相似。
1 d8 m+ l j5 l5 d# Z+ ^0 f
5 V+ d9 r) Y( |, @* z% U9 a. Q(2)使用示例:3 K6 T/ r1 g d2 k1 v, l
%导言区 \usepackage {booktabs}, l2 {9 P( q& J+ u! X
\begin {tabular}{c c c}
% |5 r9 ^% h9 h \toprule. B; x: [8 I9 i8 j j4 z
姓名 & 语文 & 数学 \\ \midrule& n. G+ o* k( C" |' m3 z
阿汪 & 93 &97 \\ \cmidrule {2-3}* j5 P0 Y2 w% K c/ G8 M1 {
阿喵 & 98 &92 \\ . _! C% { [, }& P/ K/ @* Q6 ^
\bottomrule
$ O; k( V' M6 y3 v! K9 V %阿汪先生的博客
9 q1 a$ y7 C+ {( G& I\end{tabular}* i- w* K3 P! a" O5 \( z5 S
/ ^! c( J/ T9 O8 I
五、常用表格参数的设定2 u$ ]% Y) A4 ^; x( A& X
1、表格浮动环境
! M5 R" |4 F$ R7 h; K控制表格(浮动)在本页中的显示位置需要table环境。
; c2 r( { f: s7 y9 R位置参数有htbp四种:here 、top 、bottom 、float page。& ~/ P- j$ Q- F# S& v! l l: Z
table环境中可以通过 \caption 命令表格的标题。
- M) d* Q- H7 ?" w7 s6 f: D6 l& G7 v, E7 K4 x/ C( E% q' O* ^
(1)位置参数htbp释义:# u) U/ B0 P/ D6 {
here:在输入表格的位置排版
, l2 U3 a" }4 v5 Ztop:在输入页面的顶部排版
. D2 ]: S! R: Jbottom:在输入页面的底部排版
) ]5 I: ~6 O+ x/ h) d( }/ h* Afloat page:在单独的浮动页面排版+ \& N& L/ r4 ]3 t
(2)使用模板:( T* g5 ~9 e; L: X g
\renewcommand\tablename{表}
; [$ X5 w* [; k, ]& Z' t# F+ ]) W \begin {table}[htbp]
5 K1 p w/ [# P4 A. H$ ~9 z m# V+ f \centering \caption{成绩一览表}
" [ U1 Q% B1 O \begin {tabular}{c c c}# T4 M3 f( i9 ~# e& H" d. v5 W ?
\toprule
$ G! t, N5 C. l. E2 s. B 姓名 & 语文 & 数学 \\ \midrule% j" R! H% D$ A6 w( y+ A1 s- M" ]
阿汪 & 93 &97 \\ \cmidrule {2-3}+ p; E: i! J" B! q" {
阿喵 & 98 &92 \\
6 X$ e$ x! P- G+ f4 `- H2 R \bottomrule
6 a9 r2 E: F+ ^$ X' [ \end{tabular}
. P0 k# Y8 H( e %阿汪先生的博客
+ t# H; b* m+ [. ~7 K \end {table} / C3 ^# z8 u6 I2 H+ ]
0 F' I0 a5 j1 `4 H8 ~$ |2、功能强大的tabu宏包
0 M6 d' }2 v W3 w7 j- Y/ n(1)tabu宏包提供的基本表格环境: h7 P) b$ U7 h# V
\begin{tabu}[<垂直对齐方式>]{<tabular列格式说明>}( _$ B, \+ c8 s: S5 c8 ?, j3 [+ U
\begin{tabu} to <尺寸>[<垂直对齐方式>]{<tabularX列格式说明>}
- z4 y! F( U' ~\begin{tabu} spread <尺寸>[<垂直对齐方式>]{<tabularX列格式说明>}1 t5 U6 l6 _1 O, c
, 其中**spread <尺寸>**表示:在表格的自然宽度下再增加一个<尺寸>。+ C1 I( X3 h5 C; K6 z- z! j) ^
(2)画线格式; ?) X3 t/ {9 d2 j% U
tabu环境中的画线命令:竖线|有一个可选项,可用来设置表格竖线的宽度。, S+ L1 R! D% K) j. p9 |0 _1 L
\begin{tabu}{|[2pt]c|c|[2pt]}
6 d6 [; X& \1 `6 B \tabucline[<尺寸>]{-}用来画横线,<尺寸>设置横线厚度,
3 g& j4 b) n- K$ O$ a {-}指从本行起到本行末尾画一条横线,5 K: `% H o. Y0 i& X2 E8 ^; c
{2-}指从第二个单元格开始画线至行尾。
( Q" g: e* O2 H
' \7 ?; j, o0 u5 e0 z1 g(3)单独设置一行的格式
, u6 T' h4 w. c$ G0 F/ G2 g \rowfont[<对齐方式>]{<字体格式>} 可以设置一行单元格字体的格式。
4 T- W4 k% `, Z6 Q1 e使用示例:
/ P7 w9 O3 ~0 D ~& r/ c3 ^3 Z* _2 a. e: g# ]/ b& G
\begin{tabu}{|X|X|}
9 R( Y: b: _; q! u. j% q$ ]( W! i8 s \tabucline- %“-”表示无厚度等参数4 }8 f; T) g% x+ g6 I, P
\rowfont[c]{\bfseries} This & is \\ \tabucline-
" t0 q4 q- g& o* a3 D$ [. g" N$ P for & everyone \\ \tabucline[2pt]-
( U& L$ R' v+ R) c% t5 e' c \rowfont [r]{\itshape} Mr & Wang \\ \tabucline-
* w: o) E9 o2 B' I% f %阿汪先生的博客( o- B" ^; \2 _. S, v, R
\end{tabu} 0 j8 k$ l! f% c( C% x1 y
u. b. I7 W! _& @+ a; u/ k$ u
(4)其他操作
5 H2 z u4 i4 Q) M$ i在tabu环境中合并与tabular环境不一样,前\extrarowsep后要在\end{tabu}之前添加命令 \tabuphantomline。3 b3 d0 Q% a! X4 D; r( W% ?
\extrarowsep可以在每行垂直方向上添加额外空白,得到相同的行高。4 U7 K3 C p x. k
使用示例:% g# w+ e q3 b: W0 x6 g
\begin{tabu}{| X | X |} \hline
; n/ y5 O, G2 n" y. } d\multicolumn 2 {|c|}{Hello}&World \\ \hline
0 e3 K: B; K6 f\tabuphantomline %阿汪先生的博客- W* D3 z3 c6 n1 \: K( ^) p
\end{tabu} %表格中不能有空行% J# l% Q$ H1 k2 w- d0 w
1 k" r# Z! O2 Z; y
————————————————7 x' w9 x: I/ r- j
版权声明:本文为CSDN博主「阿汪先生」的原创文章。
1 a# T8 C0 {3 D) e* O原文链接:https://blog.csdn.net/qq_43499622/article/details/96894437
- |! }5 n4 y: y' h2 i |
zan
|