- 在线时间
- 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 田老师国赛冲刺课 |
一、常用的表格宏包0 |$ d! Q- C+ f7 D/ T/ q& `
dcolumn 对齐小数点
9 K4 D) N- o- m/ V' b makecell 单独控制单元格格式$ S+ x) e% T1 R% }5 y3 M8 ]- d
diagbox 对表格进行斜线分割
: W" T. W; L: z' s; Y2 T& r* longtable 长表格,可用于处理分页表格(表格超过一页时使用)
0 N' U1 c2 e0 [* S4 p# e ltxtable longtable和tabularx的结合体
. x: ~2 V5 v% P7 ~ array 各个表格宏包都依赖于它. P9 F* y# L0 t: Q1 N& ]
* tabu 命令简单、功能强大
: M) V" `1 t' j4 W6 Q$ n" N
* y8 a& W7 Z* V* z# [# O二、输入格式及说明, |. v6 ?; n$ w1 ^
1、一般输入格式, `4 [8 N! ]% r# u& `3 n8 V+ i* K) x; u* f
\begin{tabular}[<垂直对齐方式>]{<列格式说明>}3 E. @4 E1 M9 J( C/ J
& & & & \\ u- a+ z. L! x0 \
\end{tabular}
: s. M6 q1 U1 Y2 ^% R. ^* n& J' C; c
# }- d9 w8 @: B7 t2、一些说明
- |; m; D/ d( b1 ?9 ~(1)特殊符号:& i: d- y3 a, H6 O; P0 v, U$ [# S
\\ 表示换行( `: S* n- c1 u8 J0 U% U. R
& 表示分隔单元格# S, k* w3 Q2 a# b
7 \( K" V5 o! T# u! O
(2)垂直对齐方式:
6 @3 a* Y/ P9 N$ n$ |9 c) d t 表示按表格顶部对齐
2 k8 i- u3 M/ T( k b 表示按表格底部对齐1 z% U6 o* t' L" p
默认为:垂直居中,非t和b的参数都看作居中
$ Y5 G. ?- W3 [; j
7 u# \4 n- L( b: i& Z( j(3)列格式:$ @3 x/ t9 H/ |
l 表示列左齐 (小写的 L)
, o8 F0 d0 i$ q( G c 表示列居中对齐) v2 ?) |2 u' {4 n' J5 d- Z
r 表示列右对齐1 c8 V9 S( f$ j
/ W& p& X9 v/ U& \& b! E M; \) B三、单元格的合并3 D2 T3 }% w. s8 q0 R9 ~
1、行内单元格合并命令
! v3 U l' |+ b" `# ^) M; P' u9 U\multicolumn{<项数>}{<新列格式>}{<内容>} %<内容>为合并后的新内容
. v1 W- k) G; f/ I+ P; [$ I5 }
6 H( V% b! S# W1 ?(1)基础模板:4 ?! Y7 {5 E! @4 Y5 E5 C0 z% o
\begin{tabular}{ | c | c | } H. ~) D& |, ]7 p/ I
\hline$ X' c' ~9 h) M% R( o/ L
\multicolumn{2}{ | c | }{成绩} \\2 W% B+ U" ~$ N- z
\hline
4 v& _- T& q- g; S9 }7 D 语文 & 数学 \\ \hline' h) h- p* E) e
100 & 100 \\ \hline
m# f" Q9 S& ] %阿汪先生的博客, {' a3 I; C- E! Z9 w/ s! ^
\end{tabular}$ o; G$ a" A/ f* D6 d, s) d5 @( _8 ~! Z
5 k3 \6 d+ b7 V7 n" @+ e$ Q! J
(2)进阶模板:( g& X6 U! U' y" ~5 m5 V1 n5 ^. Y& {
\begin{tabular}{ | c | r | r | }1 U" N+ x& C3 R0 e: a8 w; Z+ E7 F
\hline
5 V$ v- q1 R5 w3 q/ A1 l &\multicolumn{2}{ c | }{成绩} \\# w. W1 {6 ]' Q0 V. [3 t
\cline {2-3}
# \/ p O8 v- v2 e4 _1 e 姓名 & 语文 & 数学 \\ \hline
2 ], D2 F. ]+ G% | 阿汪 & 93 & 97 \\ \hline ( {* C9 t* j* R8 h8 j; O- M9 U* C
%阿汪先生的博客
! i" s/ d/ G5 y+ w. B \end{tabular}
$ i$ X2 p- N, J/ y8 C2 ?
: f V. R7 Q% ]' v+ f7 p8 F: y6 a语句技巧:画水平表格线需要指定线的起始和终止列号。% N( J8 m. l. ^5 x0 q
用 \cline {<起始位置> - <终止位置>} ,如\cline{2-3} 。+ ~/ N2 W) @4 S* ^" J" a f
4 h& d7 V6 o" S) x
2、列内单元格合并命令
4 q0 I7 X {* ?需要用 multirow宏包
}8 X1 z$ p" X* b! [/ C\multirow{<行数>}{<宽度>}{<内容>}:内容达到指定宽度后自动换行% w9 r/ X+ e3 _$ r0 e8 `
\multirow{<行数>}*{<内容>}:单元格的宽度即为输入内容的宽度/ W3 D- ]" P W+ t! g
) }2 u5 T& T/ K# Z# o: i [
基础模板:
. |/ c3 \0 @- r% H$ `%导言区 \usepackage{multirow}
% Z7 Z) k9 K$ d; w: t \begin{tabular}{ | c | r | r | }# G: Y# ~6 }- a: K- r4 S
\hline
/ K; a/ g- d1 x( e+ ] \multirow{2}*{姓名}&. y4 h# ?4 U7 E, z
\multicolumn{2}{ c | }{成绩} \\. ^* `5 \2 a) S1 ]) Z. L7 a
\cline {2-3}
- R% s9 e' l4 y D/ B & 语文 & 数学 \\ \hline; b3 h. @6 h- O
阿汪 & 93 & 97 \\ \hline
3 M& A3 W, j9 F5 M %阿汪先生的博客
: ]& U6 }( E' a; R7 ^ \end{tabular}
# J# k k* v8 t* T8 o, t2 j
- G. V- X- S: `; \) f$ N四、特殊表格5 k& {3 e% n: l+ _
1、定宽表格—tabularx
" b$ W2 |) K, D1 y9 q(1)注意点:. e6 [" f: K4 V* P# m m0 t! ^. e
tabularx宏包提供tabularx环境- K$ |: Y4 G5 k
X为列格式说明符(列宽自动延伸),单元格内部默认左对齐,使其居中需要array宏包支持。
. [9 p4 M# F3 b, k# ]. p/ R" p
' [6 ]* [, y( u. b$ g5 c& S(2)使用示例:7 i o. R/ L5 N2 w
%导言区 \usepackage{tabularx}! r$ O7 R7 X: R7 y
\begin{tabularx}{400}{ | c | X | X | X | X | X |}# o$ m v0 N/ U Q
\hline
3 D9 @% z& y5 ^! h* }. r 数字 & 1 & 2 & 3 & 4 & 5 \\ \hline
! }! y1 P; C2 ~# B$ [: Z, n 汉字 & 一 & 二 & 三 & 四 & 五 \\ \hline G7 ^/ b6 O$ [8 e& Y
%阿汪先生的博客
2 M4 e- i D$ M! p( j' @ \end{tabularx}! H" r& v5 o/ E: h7 v3 [, [
! ]3 q$ R: J o- B5 c' d2、三线式表格—booktabs; c4 k1 o& }- O
(1)booktabs提供了如下命令:1 A9 I2 W0 L/ \- H: Z* }6 y* W+ @. \
\toprule ,画表格顶部粗线。
4 o' T, n/ R3 _% M/ B5 p$ f \midrule,画表格中部粗线。! q. s# i( o T- F- r! B* g
\bottomrule,画表格底部细线。4 Q* D2 o" o( s& e9 C& Z: G
\cmidrule 与 \cline命令相似。
% t# o6 s. a* U1 I. ~# K( q" k+ Y/ G7 N0 k! M1 F# i, o
(2)使用示例:
5 u4 H$ v; o' ^7 x1 b%导言区 \usepackage {booktabs}
4 s4 l6 Z& s: R/ h; I \begin {tabular}{c c c}
& @6 s/ Y0 d' t( T% e \toprule0 L) M' f/ M, p+ |4 }! ?$ N( o2 ^
姓名 & 语文 & 数学 \\ \midrule7 w4 Q1 w* A* P; v4 l
阿汪 & 93 &97 \\ \cmidrule {2-3}/ @! d" x, e! [& J
阿喵 & 98 &92 \\ * Y( T: t3 f/ w9 s
\bottomrule 8 Z u; U- C) r1 i3 g2 |$ l) y
%阿汪先生的博客
4 U' d5 y& p1 O2 H7 Q# C, s\end{tabular}
5 l9 b- p k! @& C
' \, M! p: T; m4 I) \' Y l五、常用表格参数的设定
+ A+ a1 o& ?2 T* @1、表格浮动环境, `* |8 w4 e; r5 L. N( I' X: X5 V
控制表格(浮动)在本页中的显示位置需要table环境。5 o* \3 {2 n! [- _7 l! L4 O0 P8 k
位置参数有htbp四种:here 、top 、bottom 、float page。: j w" C4 t# G z% z2 t0 r1 t
table环境中可以通过 \caption 命令表格的标题。6 f* N0 {7 d! S0 S0 U( w1 h
2 h' F3 d. ^% b% J+ w' i
(1)位置参数htbp释义:
. z1 u( S. r8 {; j/ V) nhere:在输入表格的位置排版& [+ B) Q6 b* v0 y# |( o$ W
top:在输入页面的顶部排版
5 f: `0 u9 r( J( ebottom:在输入页面的底部排版6 V5 Y7 }- K2 N. Z. t: \0 f/ a: X
float page:在单独的浮动页面排版
, A6 j0 ?2 B/ R& m5 q(2)使用模板:9 y/ ~6 p0 N" K9 ^7 c7 o
\renewcommand\tablename{表}# c( o* _. G( j" k; c
\begin {table}[htbp]
' |$ h) E* j# P/ P \centering \caption{成绩一览表}
% ] }" Q4 W9 Y5 S3 V0 E( J \begin {tabular}{c c c}5 {* h5 H+ K/ A1 f
\toprule # y4 Z |7 ]7 F
姓名 & 语文 & 数学 \\ \midrule
* n% \8 L( K4 b( k* d; X2 u 阿汪 & 93 &97 \\ \cmidrule {2-3}
; ], F6 j; A7 l( R# _1 B% S 阿喵 & 98 &92 \\
% |5 \) ]. Z c1 z5 _ \bottomrule( O5 e" N' [; Z2 u1 M; G
\end{tabular}) A( Y& @' h `+ ]9 L
%阿汪先生的博客5 D8 G8 j) E) {1 @' f' n- [
\end {table} * r3 P/ F; M: }) L+ {' t, W9 Q5 s
& P2 S- B# e) v( ?+ L: G' T2、功能强大的tabu宏包
1 B2 t. V0 G3 t% n. Q7 o(1)tabu宏包提供的基本表格环境& h$ M5 |" U5 y# ]' z2 [
\begin{tabu}[<垂直对齐方式>]{<tabular列格式说明>}. r& f( u: `3 o3 O8 r9 e: _
\begin{tabu} to <尺寸>[<垂直对齐方式>]{<tabularX列格式说明>}
9 [3 W# ?& h1 n; `\begin{tabu} spread <尺寸>[<垂直对齐方式>]{<tabularX列格式说明>}7 a W" K+ @; y* f {
, 其中**spread <尺寸>**表示:在表格的自然宽度下再增加一个<尺寸>。+ `+ F- d' Z% r5 m/ N2 x$ f
(2)画线格式
. t" w E: G% y& S! Q7 n( X( ^ tabu环境中的画线命令:竖线|有一个可选项,可用来设置表格竖线的宽度。' k( x$ H# O D# r" n& z
\begin{tabu}{|[2pt]c|c|[2pt]}* |, R2 `/ C* u/ W
\tabucline[<尺寸>]{-}用来画横线,<尺寸>设置横线厚度,
5 E; A; u1 @" x0 S, k: { {-}指从本行起到本行末尾画一条横线,
* y a' a0 B/ J O, F {2-}指从第二个单元格开始画线至行尾。
4 T) [: d: U. ~& C3 @4 L1 R! }: g7 x8 A- [2 m4 H5 @ `
(3)单独设置一行的格式
4 Z1 o" \- r. h5 V P* t \rowfont[<对齐方式>]{<字体格式>} 可以设置一行单元格字体的格式。
4 D3 w1 r5 x, T4 W0 D使用示例:
6 Z1 S+ N: P) B2 D( B& x" `4 W6 ]9 J1 C8 A+ W% m
\begin{tabu}{|X|X|}
3 ]. ?$ j* b6 H2 Y" Z \tabucline- %“-”表示无厚度等参数- m, `: d6 H u+ A8 j3 D5 a
\rowfont[c]{\bfseries} This & is \\ \tabucline-# M3 D: ]) H" v1 {+ Y+ A( w+ ]) ?7 ^
for & everyone \\ \tabucline[2pt]-
8 V- n6 K( U: U9 D J( i9 E; B \rowfont [r]{\itshape} Mr & Wang \\ \tabucline- ~& I. Z9 ^ o% x3 u4 |( w
%阿汪先生的博客
% X: p* h: I e0 J d6 K\end{tabu} 1 z$ w' [/ K% s; M! w, _* R6 w
8 ]" U9 z |2 {) {* E- ^/ r(4)其他操作( Y, k: R9 O, ?' q- U: E
在tabu环境中合并与tabular环境不一样,前\extrarowsep后要在\end{tabu}之前添加命令 \tabuphantomline。
% g7 A) b# Y6 E\extrarowsep可以在每行垂直方向上添加额外空白,得到相同的行高。
# P7 L% S# J$ h. U2 M使用示例:
# _8 Y) v5 H/ f- R% l6 E! i\begin{tabu}{| X | X |} \hline
/ u. G1 u9 G4 v- u+ P8 a4 Y\multicolumn 2 {|c|}{Hello}&World \\ \hline
$ k. e7 J. C1 o8 M\tabuphantomline %阿汪先生的博客" ?/ P7 D F( w' ?
\end{tabu} %表格中不能有空行
3 W3 E2 ?( t* w
, Y& D7 ]& Q3 T" G7 w9 X( B————————————————3 d: Z5 ?9 `0 @3 i
版权声明:本文为CSDN博主「阿汪先生」的原创文章。) H8 f/ q$ W' t* d7 d
原文链接:https://blog.csdn.net/qq_43499622/article/details/968944379 Q$ @* V! k- {- ?+ F: \
|
zan
|