- 在线时间
- 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 田老师国赛冲刺课 |
一、常用的表格宏包
3 r* [' j- n- l5 H/ _2 K3 s" m4 J dcolumn 对齐小数点 z v, a; O D0 j! i
makecell 单独控制单元格格式! g3 ?! c7 g0 m- f" \3 ?) \
diagbox 对表格进行斜线分割
; w& L6 `8 G0 _9 E9 Z, J* longtable 长表格,可用于处理分页表格(表格超过一页时使用)
8 e9 q4 d+ f3 E2 f2 Z L9 v ltxtable longtable和tabularx的结合体0 D+ w- [9 B+ R- }1 j
array 各个表格宏包都依赖于它8 c5 |5 m0 E+ G4 U+ {+ D* N3 x
* tabu 命令简单、功能强大2 {3 l5 }) X8 N: e; ^, W
: @$ a& x9 E# E# c0 y二、输入格式及说明
! s( O! I+ {- T2 v0 @8 S1、一般输入格式" W4 J/ E0 j8 G/ k3 q, r1 j# X
\begin{tabular}[<垂直对齐方式>]{<列格式说明>}
$ @' y8 L( G$ H: e- c- X. M7 _ & & & & \\
) v" M) |& ?2 U9 N7 K \end{tabular}
" D# p" C! {3 Z% Z3 ?+ w, o/ `# `4 J1 S9 e. P w6 Z
2、一些说明
5 g& N7 |2 e* f(1)特殊符号:0 e2 \9 x) h. Q% i
\\ 表示换行
2 e( t5 i4 H6 l & 表示分隔单元格; ?# [" X9 f$ V3 v
$ K& e; J% q( f5 Z
(2)垂直对齐方式:/ f) C" _5 o. w3 y5 Z
t 表示按表格顶部对齐6 m( R6 ?- K5 T: _
b 表示按表格底部对齐
" ]* P7 n# r0 b/ e' X* H 默认为:垂直居中,非t和b的参数都看作居中
6 K3 R0 o; M4 K. _- C0 b, I2 v7 M: `% @( s% d( {
(3)列格式:
. [: V. B8 f X8 n, ?9 o! I l 表示列左齐 (小写的 L)
5 v3 E6 s- u9 j7 y c 表示列居中对齐: s, m- j% }9 ^' q0 }. A/ k
r 表示列右对齐8 s$ Z) G, ^- u; x# E
0 K3 E5 | B" R2 G三、单元格的合并7 B* v N3 S% |- @ T- W. [0 x# z
1、行内单元格合并命令
Z6 o2 y, R$ {! o# f\multicolumn{<项数>}{<新列格式>}{<内容>} %<内容>为合并后的新内容 - V- w; N3 ?# t
7 i1 R, H0 Q% [4 V8 S(1)基础模板:' D M4 w+ K9 f. j/ o# z- y7 @
\begin{tabular}{ | c | c | }+ j$ q5 E. V& o, Q
\hline
. R [1 h/ R) i* j9 l+ P, }1 ?( f \multicolumn{2}{ | c | }{成绩} \\1 |5 Y+ X) F- g# w- n
\hline* h) }7 k0 a1 I7 g- V. s6 |5 p
语文 & 数学 \\ \hline5 {: X$ J! [0 Z3 u- g
100 & 100 \\ \hline2 e- K- W. Z$ `( T
%阿汪先生的博客
$ d, V$ ]9 s8 w! o/ ~: S \end{tabular}* d ^, I/ U1 v1 M1 `2 k
( ^$ K4 L; e; I, }; D(2)进阶模板:
0 @1 e) t2 @6 n. ^# q7 p0 a# v \begin{tabular}{ | c | r | r | }
# S# C% ]' z3 b& {+ ]6 J, x \hline5 E# t3 @7 p& t* a0 O' N8 N9 M0 s$ m
&\multicolumn{2}{ c | }{成绩} \\+ E* f9 k) S% B$ R) W
\cline {2-3}" r5 ?1 @# t% o8 Z: v
姓名 & 语文 & 数学 \\ \hline5 h' B# _$ b+ m+ l8 ~$ P# T
阿汪 & 93 & 97 \\ \hline
" t! w$ `9 j, b% ` %阿汪先生的博客
: X) m7 e! |' W4 q" K4 ?$ A \end{tabular}
6 E8 v) Q+ i. K8 J. f" @& t0 R' `) k / D* g1 u0 V! Z+ m& V: a
语句技巧:画水平表格线需要指定线的起始和终止列号。
. N( s5 G: {. e用 \cline {<起始位置> - <终止位置>} ,如\cline{2-3} 。. J; n1 ?# W" i; e' u( u
$ X+ U- ]" w4 s" M* v$ }2、列内单元格合并命令/ o, ^& k( j8 @4 [/ w: B1 N6 E; _
需要用 multirow宏包: }- J7 }2 b0 ~$ z4 |
\multirow{<行数>}{<宽度>}{<内容>}:内容达到指定宽度后自动换行
8 q' k0 y* F$ c5 w( x# ?" Y+ X3 [\multirow{<行数>}*{<内容>}:单元格的宽度即为输入内容的宽度! x* N3 Y! X9 v4 I4 L7 p, r5 H
: w* W# \. u+ Y: Q7 {6 y2 H
基础模板:- T# M% {6 m# g8 _, E
%导言区 \usepackage{multirow}
$ a5 s4 m" s$ i. M \begin{tabular}{ | c | r | r | }
0 l3 C/ t2 A, a3 O" s( l5 P, B+ \% T8 L \hline/ G& P& {% E+ f' ^( M9 d/ s
\multirow{2}*{姓名}&
& \) A% s' a" h4 C9 N y1 h4 e \multicolumn{2}{ c | }{成绩} \\
7 L' d& F o* G- t( P \cline {2-3}
6 _/ H; c" k* j* a+ d, } & 语文 & 数学 \\ \hline7 e& O% M$ z# I& x; a2 w1 w
阿汪 & 93 & 97 \\ \hline
9 W3 |8 c/ Q/ B %阿汪先生的博客
% O1 q& D2 r) ^% D4 F- g# i4 X \end{tabular}
6 Y) R, @% s% ?0 Q3 t6 b9 K! R9 e+ X. W6 R; j! P
四、特殊表格( ^7 v# E' @0 i4 i0 g+ Q' ~1 {
1、定宽表格—tabularx1 y% [: x0 y6 D" f8 x3 F6 Z% w
(1)注意点:6 Y% b# ?2 p* A7 p4 L
tabularx宏包提供tabularx环境
! X8 a; e# a6 _/ S X为列格式说明符(列宽自动延伸),单元格内部默认左对齐,使其居中需要array宏包支持。) R" N X) \' S2 J H
" B( v. p- x4 D" L: n. C! i
(2)使用示例:
: p$ h @/ N! Y: O%导言区 \usepackage{tabularx}
- J1 Y5 G1 @5 J& k \begin{tabularx}{400}{ | c | X | X | X | X | X |}) e$ A6 H! Z- R: f: ] O$ s3 Z+ r! S
\hline
! C# g" j+ u) e, l8 ]1 B& H. t 数字 & 1 & 2 & 3 & 4 & 5 \\ \hline8 @8 I) A1 x0 X, K8 h* M) h
汉字 & 一 & 二 & 三 & 四 & 五 \\ \hline
+ e3 d' y8 V* i [. |: b %阿汪先生的博客, }/ Y$ Q/ [6 @. O
\end{tabularx}( \, V$ k$ ?9 S4 @
. K* A& F3 B0 q8 T2、三线式表格—booktabs
* G* b7 E& f) y9 q(1)booktabs提供了如下命令:" F0 m' j- u5 p T" e& p' B( b
\toprule ,画表格顶部粗线。+ C- Y: ~0 T, h. i
\midrule,画表格中部粗线。
4 G" T$ `8 O6 o: c" ^/ V \bottomrule,画表格底部细线。
. y$ k' R. U& ^8 n" G7 | \cmidrule 与 \cline命令相似。2 g# p1 \& x$ N S3 Q
0 H! @: o% E9 s6 D: J# u
(2)使用示例:! Z- W! @8 _4 T" M
%导言区 \usepackage {booktabs}
R) @$ ~* b8 s: g# @. K \begin {tabular}{c c c}
+ b, N: d) y, s+ W# j0 z, M0 @ \toprule7 K& A$ x" ]% d# b- w
姓名 & 语文 & 数学 \\ \midrule% }3 U$ O! t( `4 |) t- z" k, b& H
阿汪 & 93 &97 \\ \cmidrule {2-3}# h1 N- R5 \- M- `/ H
阿喵 & 98 &92 \\
! \' m: j C7 P \bottomrule
/ r$ k; x( X% `: ] %阿汪先生的博客0 `6 Z6 W0 a# s& E3 G, i& j5 ~
\end{tabular}
7 N. m$ N2 m; Z" d9 u/ _& t
- } S4 k" m' W i" L9 g% T/ C+ I五、常用表格参数的设定
8 B6 T9 t- C& `) c* R1、表格浮动环境
( D/ Z# [+ s8 }5 I+ E# U$ Q9 `, p控制表格(浮动)在本页中的显示位置需要table环境。5 b+ v1 c! r# d# M& ]+ n& N5 W
位置参数有htbp四种:here 、top 、bottom 、float page。1 T5 l H, w. v- E, X' F
table环境中可以通过 \caption 命令表格的标题。
$ v' e5 \, U) i. b v& H1 V0 r( C0 O% P5 ~. s% J1 _ h; K
(1)位置参数htbp释义:4 h; u6 M4 ?# K5 p. {5 H
here:在输入表格的位置排版
7 u! M8 s! J! Y! Q( F6 ]7 Ctop:在输入页面的顶部排版2 M/ f4 L- L' G9 V
bottom:在输入页面的底部排版5 K$ T' i, Z J
float page:在单独的浮动页面排版
6 Z. }& ~4 O7 W/ d/ t8 m6 P(2)使用模板:( P. |4 C* P1 x6 F, _' Y+ s
\renewcommand\tablename{表}6 q5 [0 \( ], `
\begin {table}[htbp], G7 _/ y3 G+ f& z, x
\centering \caption{成绩一览表}* q6 Y }+ Y& w! j2 B0 k/ X2 m
\begin {tabular}{c c c}
5 I" O0 ]5 _# f' C# b9 Q0 X \toprule
8 W. N. x5 y. R' g 姓名 & 语文 & 数学 \\ \midrule
: e% N/ v6 }8 g( [1 C8 I 阿汪 & 93 &97 \\ \cmidrule {2-3}* R# v. n* E9 j
阿喵 & 98 &92 \\ t( K0 p: x; q; \. N+ v7 I
\bottomrule0 K# f- i* f: q" q3 \0 {+ T
\end{tabular}# B0 l4 a; Q$ n1 h' n/ x. F- [6 A
%阿汪先生的博客
: c; p! h0 q, W* h/ A6 g# c1 u' @' k \end {table} ! J) U6 Y# a6 g2 o$ j# I
* ~& d) w' S4 L8 Q4 H( ]
2、功能强大的tabu宏包- x* z$ J- X: n1 K" N
(1)tabu宏包提供的基本表格环境5 G5 l5 k$ Y+ `7 P- n, h
\begin{tabu}[<垂直对齐方式>]{<tabular列格式说明>}
- u/ o3 _' \/ {6 \' F% G, ^3 V1 A\begin{tabu} to <尺寸>[<垂直对齐方式>]{<tabularX列格式说明>}
6 u+ l3 G7 E# g\begin{tabu} spread <尺寸>[<垂直对齐方式>]{<tabularX列格式说明>}5 ^9 I2 Y/ V8 O6 |7 D' K* m4 P
, 其中**spread <尺寸>**表示:在表格的自然宽度下再增加一个<尺寸>。
* R( j7 [( x- `( e! C% q$ N(2)画线格式
/ o) S! V3 [* ]+ I" D8 T tabu环境中的画线命令:竖线|有一个可选项,可用来设置表格竖线的宽度。 B# ~' F3 A4 C
\begin{tabu}{|[2pt]c|c|[2pt]}
! m: D8 B* ]% w$ M' o% J% R5 @ \tabucline[<尺寸>]{-}用来画横线,<尺寸>设置横线厚度,
@' H: q* O5 ~ {-}指从本行起到本行末尾画一条横线,! M/ t9 O1 w5 s) S
{2-}指从第二个单元格开始画线至行尾。3 G9 m) j- @7 E7 z, m6 D- [9 y; U
) N5 Y2 w; H% J9 V! R(3)单独设置一行的格式
) F# Y+ g! d2 }% T6 f: U, m \rowfont[<对齐方式>]{<字体格式>} 可以设置一行单元格字体的格式。
- f; ^; ^6 C+ L5 x) q使用示例:+ i0 X6 I; _) D3 I
- G4 _; s: p& t7 A/ v# F
\begin{tabu}{|X|X|}: \, c) j1 X- r0 o# `& p0 l5 Z8 Z
\tabucline- %“-”表示无厚度等参数* \ e$ Y. J5 n7 y/ d
\rowfont[c]{\bfseries} This & is \\ \tabucline-$ e6 c- h" a; [. y! k) y
for & everyone \\ \tabucline[2pt]-
" N" C$ ?/ b8 W- r# \ \rowfont [r]{\itshape} Mr & Wang \\ \tabucline- 6 {7 I; F# b9 ` i, C
%阿汪先生的博客" z ~& u7 T7 { c; H
\end{tabu} + m8 H; s x# T @: x
% Y2 ?: x1 _# g8 a/ ]0 `0 b9 \
(4)其他操作/ B: W# t' E' v' M& ^' ^
在tabu环境中合并与tabular环境不一样,前\extrarowsep后要在\end{tabu}之前添加命令 \tabuphantomline。9 j* q! V8 `) Q
\extrarowsep可以在每行垂直方向上添加额外空白,得到相同的行高。
/ a' Z4 O- c9 N# F0 r" \" _8 D使用示例:' d: _/ I4 m! }) n
\begin{tabu}{| X | X |} \hline
Z6 K6 I# M2 H5 h- Z( W+ n9 D\multicolumn 2 {|c|}{Hello}&World \\ \hline* R I8 ^# _: s* X- G6 b
\tabuphantomline %阿汪先生的博客
2 ]3 F# m6 a& O" b\end{tabu} %表格中不能有空行( n2 J* ]/ z' g8 d
* h/ n, d+ D. B" X1 d5 u
————————————————
) P1 I# e" A8 N. G版权声明:本文为CSDN博主「阿汪先生」的原创文章。, i' D! x5 N7 A9 X, F
原文链接:https://blog.csdn.net/qq_43499622/article/details/96894437
9 |( w$ x* w i' y5 C/ o# \! L h |
zan
|