- 在线时间
- 661 小时
- 最后登录
- 2023-8-1
- 注册时间
- 2017-5-2
- 听众数
- 32
- 收听数
- 1
- 能力
- 10 分
- 体力
- 55515 点
- 威望
- 51 点
- 阅读权限
- 255
- 积分
- 17606
- 相册
- 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 田老师国赛冲刺课 |
一、常用的表格宏包: g# Z' m7 r/ }8 ~
dcolumn 对齐小数点
6 C, k. M4 \) z: p y( c5 S makecell 单独控制单元格格式5 T$ z6 @$ \6 F" K: H! q! z
diagbox 对表格进行斜线分割
5 I! x: V# J* O i7 y: b2 c: B* longtable 长表格,可用于处理分页表格(表格超过一页时使用)
4 O3 U. h9 k% q) | ltxtable longtable和tabularx的结合体. R# a: D, r. \& V9 ^9 h$ {2 x: E
array 各个表格宏包都依赖于它
, j) ~3 z5 G8 \0 c* tabu 命令简单、功能强大' `: F8 I% |5 W0 [" p) x7 F) a
9 i7 w1 y) h" l; k二、输入格式及说明, z, n, a u% F1 D
1、一般输入格式% H6 |0 m& i9 @
\begin{tabular}[<垂直对齐方式>]{<列格式说明>}
7 I# W: g7 P( Z' q & & & & \\
/ m; o4 o* ]" _- w8 K( ] \end{tabular}
; E' P y) |! l+ g9 n) p' @5 x
0 y+ h5 P. r/ q0 A; z6 g1 L2、一些说明
- J$ g! g% p/ z3 q(1)特殊符号:
8 d7 L* E* x7 g, |: z- ]3 F \\ 表示换行
2 ?1 {' B6 H/ B! k; ^: k & 表示分隔单元格2 ?6 h: T% b) t6 F4 D* f! {
: h2 h7 d- r8 h' {9 }( _(2)垂直对齐方式:
* P8 q* W% }( h) L. L+ \ t 表示按表格顶部对齐
- h3 T6 x: ^2 V p# T4 @+ P% A b 表示按表格底部对齐8 }( j0 r Q+ O" o
默认为:垂直居中,非t和b的参数都看作居中: j# U. a" l" C3 u
8 i6 y4 r( F/ D2 V5 I% [$ [
(3)列格式:3 k5 Y. ^0 U+ i. K6 q7 d
l 表示列左齐 (小写的 L)
/ y7 n( {* t+ F2 I5 l' V6 ]* O c 表示列居中对齐+ x% F! X- l, E) z5 B9 B+ R$ w* W' c
r 表示列右对齐 }2 T! S& B+ e! @. V0 ~$ T" h
+ X! I' Y- V( {! T& `6 B
三、单元格的合并
! ?5 b) x' ]* l5 k3 P: v4 i1、行内单元格合并命令) h5 n5 H. ^- F
\multicolumn{<项数>}{<新列格式>}{<内容>} %<内容>为合并后的新内容
4 j* a0 t1 H) \9 w( R6 X: g" s1 Q' g" \) x* a% B
(1)基础模板:
& t) `; W9 X0 }4 h+ q! I! J \begin{tabular}{ | c | c | }( d6 A# z V. X! z L0 t5 }
\hline4 Q# a$ z% f" D
\multicolumn{2}{ | c | }{成绩} \\
" e; M ^- \ o4 h: Y* @$ ~ \hline( J2 C+ |5 T" E% W- n8 F: I
语文 & 数学 \\ \hline
, s! R' ~8 c1 b 100 & 100 \\ \hline
4 U2 R* Y) A6 c8 T' X% O1 s! k& q %阿汪先生的博客, c: e. n6 F1 o) r& m
\end{tabular}
- ^1 ]! l- `" m0 P/ ?5 Z F* @
, u* |! s3 C. c5 J(2)进阶模板:
+ v- Q; `8 R# S- ` \begin{tabular}{ | c | r | r | }( A# y" l% p" Z' k. r
\hline1 S d& J' _& z+ d# z
&\multicolumn{2}{ c | }{成绩} \\
$ u( C: n Z) O, }' {' P* P \cline {2-3}
7 y( y/ X9 }- d% j% b: ^3 [ 姓名 & 语文 & 数学 \\ \hline
- a' u6 `7 @# N$ M$ k 阿汪 & 93 & 97 \\ \hline 6 f- u8 V7 S$ S; z/ B
%阿汪先生的博客( z2 `7 N6 k6 h; r5 [
\end{tabular}
# V% C$ R' N" k }" o 7 J6 j2 I/ d9 w1 i2 p
语句技巧:画水平表格线需要指定线的起始和终止列号。9 k5 o0 r* @ Y6 j) B& \
用 \cline {<起始位置> - <终止位置>} ,如\cline{2-3} 。6 J# k; \# A9 X# \. P/ s
% A% n7 N; u$ E! F) N2、列内单元格合并命令
8 ]4 }0 p# \1 b, L; _, s需要用 multirow宏包
4 ?6 Y9 h3 X2 ?6 }) f# t\multirow{<行数>}{<宽度>}{<内容>}:内容达到指定宽度后自动换行
. Q$ Y+ t+ u+ L8 O8 [6 U\multirow{<行数>}*{<内容>}:单元格的宽度即为输入内容的宽度4 E+ B/ V7 r, \) d' r& r0 C
g' G. y9 ]5 L* d# l
基础模板:- a# o) s9 g5 C5 T' S- O4 e
%导言区 \usepackage{multirow}1 {3 y- J; ?) E3 D. x9 e" U
\begin{tabular}{ | c | r | r | }" C5 P- G+ B/ E t' s o8 Z
\hline& a& f/ s' |2 f4 n4 w8 a
\multirow{2}*{姓名}&* P ]/ X, O2 {
\multicolumn{2}{ c | }{成绩} \\+ P7 z: F* U2 Y9 X* r
\cline {2-3}
v; V1 y, S% n: Z: X & 语文 & 数学 \\ \hline0 {; J7 m+ Q% g; b) P
阿汪 & 93 & 97 \\ \hline
" l u' d7 g7 r: b5 w %阿汪先生的博客6 r+ w( D; {( w' ?" E- s. x0 H! Y
\end{tabular}
& n. Y3 p9 Y. B! ^/ D4 [2 m; |9 W4 I3 X0 S
四、特殊表格7 f6 a* B: f3 m6 W
1、定宽表格—tabularx
, u" f6 X1 C$ t) O' O(1)注意点:
/ v z. v: K& j tabularx宏包提供tabularx环境) @& K0 p- Q5 q+ h0 o) M- Z
X为列格式说明符(列宽自动延伸),单元格内部默认左对齐,使其居中需要array宏包支持。
: `# E4 P3 y0 M1 a9 E! G. p
$ h8 o2 s/ y* p b2 H" U(2)使用示例:' b; r* }. [# d. z
%导言区 \usepackage{tabularx}
+ n: Q9 L2 D4 T) `( r \begin{tabularx}{400}{ | c | X | X | X | X | X |}! A; I& Y. ]" P/ l) p
\hline
. ]: ?2 I' w6 `8 Y 数字 & 1 & 2 & 3 & 4 & 5 \\ \hline
7 A* N3 T! ]: t5 q, C5 F s 汉字 & 一 & 二 & 三 & 四 & 五 \\ \hline$ N3 f9 U; o- u. T3 N* v9 C" l
%阿汪先生的博客
( k4 z* O7 q1 p* M/ e% z- p4 ~! K \end{tabularx}
J$ J6 e) J! [1 O$ [' T/ G E( f8 P& O9 Q$ j
2、三线式表格—booktabs
8 H4 R9 h1 |- I# h/ G8 }, q( j(1)booktabs提供了如下命令:2 A! r0 l; Z$ c: ~
\toprule ,画表格顶部粗线。9 ? ~2 _& v& o9 c
\midrule,画表格中部粗线。
8 ]" Y& ~; y1 ]( Z \bottomrule,画表格底部细线。" v A( I% H: P
\cmidrule 与 \cline命令相似。
9 k( C* Z7 I6 S* k: b6 [5 t2 Q/ s8 \( t1 l' P0 y! F; D
(2)使用示例:# u ~ \+ s, H9 Y% j5 N O/ W
%导言区 \usepackage {booktabs}+ |' N7 u W( \/ E
\begin {tabular}{c c c}
1 x9 w' W# T* H% \! I4 q$ P2 B \toprule7 X- F* ^; l) _4 d- D0 G, y4 M9 T
姓名 & 语文 & 数学 \\ \midrule
, Q2 h9 U% h e( ]* W# f 阿汪 & 93 &97 \\ \cmidrule {2-3}. O* e3 z5 x# N* F6 ~! {
阿喵 & 98 &92 \\
5 t4 j9 q( Q% h# ~ \bottomrule / l( F2 i8 A! R0 N" f8 ]( }0 O
%阿汪先生的博客
* {! e3 D' u1 n% o# S( I\end{tabular}; D5 z6 p1 R- m* g1 {, A! Q
: A1 B+ W- n' d0 c五、常用表格参数的设定
$ g# M" T" B. ~7 U8 M1 c! ~0 a! a3 I1、表格浮动环境+ W6 B: R& V4 w* \' Q1 k |: l
控制表格(浮动)在本页中的显示位置需要table环境。: }" p0 _* X1 N( w
位置参数有htbp四种:here 、top 、bottom 、float page。' Y$ F1 O' t2 z5 H: _
table环境中可以通过 \caption 命令表格的标题。
# d0 T7 H! Z6 {" O3 H7 j! f9 \3 y( c% E) c7 D
(1)位置参数htbp释义:
5 `, @' ~ P2 d uhere:在输入表格的位置排版0 X5 W. V; N! ?# U2 a# H) Q
top:在输入页面的顶部排版
0 b9 a; M6 k9 ?4 fbottom:在输入页面的底部排版, ?3 B% E) S6 [" P1 W/ U
float page:在单独的浮动页面排版
2 w5 v- r+ A3 C6 i! x) I(2)使用模板:
/ _. Q" u8 D F' q! }$ n$ i8 B\renewcommand\tablename{表}
7 [1 u' Z& M; q2 W \begin {table}[htbp]" r3 V: m6 p- U. r5 ^1 \
\centering \caption{成绩一览表}
; j _# L* s: \0 i, [ \begin {tabular}{c c c}
, w; j" X, C: Q \toprule
$ U$ g1 s! G& P9 o8 K8 j0 z 姓名 & 语文 & 数学 \\ \midrule. h+ c. y' T7 P: P0 ?
阿汪 & 93 &97 \\ \cmidrule {2-3}
9 r* \" B, {; W! q4 q 阿喵 & 98 &92 \\
, d5 U; i' P+ H2 b \bottomrule
( I o8 X2 v- u, t# P6 j/ l2 f \end{tabular}% O7 [" L- `) B; U
%阿汪先生的博客) r9 s0 C; L& `% a4 Z$ V
\end {table} 9 S) y3 u8 }! l8 g
' W9 _ i5 [ Q% L8 ?$ ?
2、功能强大的tabu宏包% q1 n0 W4 ?* d' S) u
(1)tabu宏包提供的基本表格环境9 d+ i5 B) `6 T1 l" s# \5 \5 H
\begin{tabu}[<垂直对齐方式>]{<tabular列格式说明>}
' M7 U0 Q2 D6 {\begin{tabu} to <尺寸>[<垂直对齐方式>]{<tabularX列格式说明>}
- u+ z# b: g- O/ p\begin{tabu} spread <尺寸>[<垂直对齐方式>]{<tabularX列格式说明>} j( x8 f. u1 p: q+ i
, 其中**spread <尺寸>**表示:在表格的自然宽度下再增加一个<尺寸>。: g* ], V$ D9 z* w/ [2 }
(2)画线格式* T: T& ?' f3 B/ p8 V7 t
tabu环境中的画线命令:竖线|有一个可选项,可用来设置表格竖线的宽度。
( k+ S) `5 J8 K6 V) n' J \begin{tabu}{|[2pt]c|c|[2pt]}
3 f. H" z# @4 [; k \tabucline[<尺寸>]{-}用来画横线,<尺寸>设置横线厚度,
' }: _8 h) t, m0 p% a {-}指从本行起到本行末尾画一条横线,
; _& l3 w) \5 s; ]' w {2-}指从第二个单元格开始画线至行尾。; b# |) k4 q$ l( {$ e5 D! t# K" Z
; l5 t" `/ @# {5 x& a4 @(3)单独设置一行的格式6 i' M# a( N1 u
\rowfont[<对齐方式>]{<字体格式>} 可以设置一行单元格字体的格式。4 x9 g- y0 N+ }- A. K2 E' ?( H
使用示例:4 d/ b0 G$ _& M7 F4 d. y
* i: t& Y1 D1 z* k7 F8 a/ X
\begin{tabu}{|X|X|} |4 }) K4 H- v% p7 |; E8 B- s
\tabucline- %“-”表示无厚度等参数0 R, A5 v6 A' P
\rowfont[c]{\bfseries} This & is \\ \tabucline-
& t' o: c9 G# ^; U for & everyone \\ \tabucline[2pt]-
R1 T6 w |+ q \rowfont [r]{\itshape} Mr & Wang \\ \tabucline-
( b, Y$ s( m( n- Q %阿汪先生的博客* L% w# L; A4 G6 r* t6 m
\end{tabu}
1 k: Z. ]7 b4 r, E/ h
w+ h9 p n( h- K(4)其他操作
' I& b* U) b! F+ P" N在tabu环境中合并与tabular环境不一样,前\extrarowsep后要在\end{tabu}之前添加命令 \tabuphantomline。0 @" c% O2 M) m2 C' B
\extrarowsep可以在每行垂直方向上添加额外空白,得到相同的行高。& a ^8 D5 I% l9 x
使用示例:2 f! ]. m: b& ~) h
\begin{tabu}{| X | X |} \hline- L. M$ z3 B- a- p
\multicolumn 2 {|c|}{Hello}&World \\ \hline# q! q! D. ~. d5 O% t6 u2 d" i. C
\tabuphantomline %阿汪先生的博客4 W8 v6 O) |" h7 J& J
\end{tabu} %表格中不能有空行; X" q8 U' r- I( J% m' V
" E' E' t. I3 D; W# H' d2 a* T
————————————————- x5 z# [3 o- j7 K u6 n; w y
版权声明:本文为CSDN博主「阿汪先生」的原创文章。
0 B% Z* j( M, Z0 M) U9 d原文链接:https://blog.csdn.net/qq_43499622/article/details/96894437* o$ l7 g/ W" F! \, f
|
zan
|