- 在线时间
- 661 小时
- 最后登录
- 2023-8-1
- 注册时间
- 2017-5-2
- 听众数
- 32
- 收听数
- 1
- 能力
- 10 分
- 体力
- 55572 点
- 威望
- 51 点
- 阅读权限
- 255
- 积分
- 17623
- 相册
- 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 田老师国赛冲刺课 |
一、常用的表格宏包# K- d% v" ? A/ |2 e4 l
dcolumn 对齐小数点
- r2 B0 {3 n3 ~" o y) ` makecell 单独控制单元格格式
8 U1 h4 h5 n! r' d8 v diagbox 对表格进行斜线分割
3 Y4 a/ V5 e3 g( B* longtable 长表格,可用于处理分页表格(表格超过一页时使用)7 v) F% B) Y8 C, ^# c8 o5 `5 x! b
ltxtable longtable和tabularx的结合体, B5 j- o6 L4 F. P6 m3 P: b. l
array 各个表格宏包都依赖于它3 W$ h+ b" {! @/ K. e+ ^
* tabu 命令简单、功能强大
$ G4 t& j' s0 v1 |4 q s
$ D& k5 t: Q7 E; s: }# d! ?: w* Y二、输入格式及说明5 ?9 d% }4 g# |- b
1、一般输入格式
& A! U# F' o% P\begin{tabular}[<垂直对齐方式>]{<列格式说明>}
: i- d1 }8 A! m- @ & & & & \\, G* _3 A+ Z7 A( z f/ U- ~
\end{tabular}
8 g2 h- H7 Z% _3 x" _6 l2 F% f
' \- |4 @* R5 o- [, W& l" e2、一些说明6 [* {+ w F! q# R- q" w. i: \
(1)特殊符号:! F8 k, _2 i6 r" l! d
\\ 表示换行
; x+ o& w5 ]& ^" ] & 表示分隔单元格0 t, d% k% I+ K) s& r" r" P
4 t+ X) b% d( z, h(2)垂直对齐方式:4 u/ H6 Q& ]7 \: I* r& ^1 ?3 c2 R$ W5 e
t 表示按表格顶部对齐$ V" R& g$ ?1 x6 t: h' z/ t
b 表示按表格底部对齐( T7 B% M% ]& B
默认为:垂直居中,非t和b的参数都看作居中9 D- Z1 _: K" Z# L) q# F4 p, j" W; s
! n/ Y$ f. F2 I: q7 Q6 G j$ c(3)列格式:
' \; y9 t: _% F- H' P; G l 表示列左齐 (小写的 L)
}. p; F' b3 P# `3 O) h c 表示列居中对齐7 s2 Z# I- _5 M: P
r 表示列右对齐& a' d9 `& |5 z
, y4 [+ `9 ?6 T) W8 T4 V
三、单元格的合并' K' G' G" k* @; A: k
1、行内单元格合并命令( L/ n! C$ u8 v/ t W4 @5 N, ]# x: O
\multicolumn{<项数>}{<新列格式>}{<内容>} %<内容>为合并后的新内容
' `; K! \, w# q6 V( Q
1 S& L, }1 p& w(1)基础模板:/ o; \6 U6 w# `/ p
\begin{tabular}{ | c | c | }3 T3 `' |2 w# O, j/ ^: d2 R
\hline2 T! ~3 c9 @" j. o; b
\multicolumn{2}{ | c | }{成绩} \\
8 Y3 N) B/ M$ ^" z+ g% [ \hline
8 g1 l, R/ u1 l/ K/ r" U 语文 & 数学 \\ \hline+ ~' Y9 J0 [) S; w
100 & 100 \\ \hline; w2 P% S) ^2 z$ g
%阿汪先生的博客
' {# f% s- n3 m( L, K, [% \" R \end{tabular}& H6 R" A5 p9 X: q
* a$ `5 u- j; `& _(2)进阶模板:
! a) q- o' e$ n, U% {* Q& [! } \begin{tabular}{ | c | r | r | }
( {* l3 b) y+ g+ z7 B) }2 z# M \hline
% U8 R3 Q- S: ]! d4 _9 @ &\multicolumn{2}{ c | }{成绩} \\
. u, ~* b# M( n0 B6 ~ \cline {2-3}% A5 b: i" }0 C
姓名 & 语文 & 数学 \\ \hline" T- I; O8 l1 Y: {& r% Z! L
阿汪 & 93 & 97 \\ \hline
- p# e" D% ?# u %阿汪先生的博客: l: \3 F, Z1 O, x# [) P
\end{tabular}( n0 |$ g; d& Z
3 h) u G7 o' X语句技巧:画水平表格线需要指定线的起始和终止列号。
2 h/ M4 B6 d! m0 M, z: O! q! U' Q用 \cline {<起始位置> - <终止位置>} ,如\cline{2-3} 。+ [1 `6 B0 ?1 j+ G/ V& J" ]. \/ x
$ G$ C5 ^' o# [* q- P
2、列内单元格合并命令
) @/ g% B( h9 P1 T$ r: i' e! B需要用 multirow宏包3 U+ ]0 j3 g3 K3 Q" c' ~( t* x! f" t; ?) o
\multirow{<行数>}{<宽度>}{<内容>}:内容达到指定宽度后自动换行
6 `- c# d4 V- G6 ^5 w. T7 q# M\multirow{<行数>}*{<内容>}:单元格的宽度即为输入内容的宽度/ y7 M! Y+ r6 _5 b# T+ O
9 r4 f+ q! f* E# k/ B: W3 J7 h
基础模板:' b( `0 n) U& K# K! g
%导言区 \usepackage{multirow}
& K$ ]8 g* Z' k6 V; f7 b1 [' E \begin{tabular}{ | c | r | r | }
+ ]$ e1 J- s3 u" B& N/ I* G) l: B \hline
& {" W/ W2 c4 i \multirow{2}*{姓名}&
, W4 W* _4 D% P6 F. {) S% _+ n3 E \multicolumn{2}{ c | }{成绩} \\
2 P$ k+ g" [) X1 q0 @, W& [3 x \cline {2-3}
8 p7 o0 V4 U0 q" f* p& ]; R & 语文 & 数学 \\ \hline
- I; B% W! H1 {' B, g; } 阿汪 & 93 & 97 \\ \hline
, b! q& g7 F3 ^- H %阿汪先生的博客6 L) H9 v7 j1 Y+ J9 E# z3 K
\end{tabular}2 S% e2 L" Q. ~0 d6 U
. A$ ?# D2 S! P E
四、特殊表格
( j4 ]+ t4 q M/ d1、定宽表格—tabularx
6 d: X: z3 L" j& v# M(1)注意点:
6 l1 }" Z- _, Q/ [6 }) t tabularx宏包提供tabularx环境
. a! ^' R- j$ r+ { X为列格式说明符(列宽自动延伸),单元格内部默认左对齐,使其居中需要array宏包支持。5 O' i# J- R( m
6 q- [6 c7 g3 s" W: F(2)使用示例:' f6 k) _# i' Y$ J0 }5 I }) U" V
%导言区 \usepackage{tabularx}
7 f3 X+ k* I* a1 q' d \begin{tabularx}{400}{ | c | X | X | X | X | X |}
/ `1 L1 G( E- a$ {" y/ @/ Y) n3 @( ] \hline
! y/ j6 |% O' z! u. y& ` 数字 & 1 & 2 & 3 & 4 & 5 \\ \hline
. M v" X7 q. o8 p 汉字 & 一 & 二 & 三 & 四 & 五 \\ \hline
, {' F0 ]" p k& u %阿汪先生的博客
( L7 | {4 n! Y. T8 k/ B \end{tabularx}
0 I& S6 @2 W, G4 I0 l1 i ' K, Q" `7 H( p7 M. I7 s. }' n7 O
2、三线式表格—booktabs
2 Y1 R8 ] M1 n2 p, F(1)booktabs提供了如下命令:
$ E( Q0 Q6 I7 e B6 \: v: J \toprule ,画表格顶部粗线。
+ ^, P) C6 @* J" ]: L0 ? \midrule,画表格中部粗线。
* g. H2 i5 i, L \bottomrule,画表格底部细线。
G+ N7 \$ r* _ \cmidrule 与 \cline命令相似。
+ {* V- B R0 y5 c0 l. `
9 }, I# K* ~3 I6 J3 }(2)使用示例:8 M3 ^( @ B" k
%导言区 \usepackage {booktabs}
& F& ]$ Z% T3 K% v1 [3 h" | \begin {tabular}{c c c}9 {: A/ ?% g! [' i' P1 E3 U4 N
\toprule5 G2 s+ }6 C5 i( @5 c9 ]
姓名 & 语文 & 数学 \\ \midrule
- F' u6 x+ Y3 N 阿汪 & 93 &97 \\ \cmidrule {2-3}
D. P' C1 E4 W# N4 }5 \$ O 阿喵 & 98 &92 \\
5 v$ _+ U" W# f7 {% Z \bottomrule
5 s( d$ J# z4 U" {* q' j8 e- i& f %阿汪先生的博客
6 ]. d) E8 w, w6 f: d3 B4 }: Q: X. a\end{tabular}, G5 H D6 j9 d8 d% v
/ O9 i% |+ a4 H) [五、常用表格参数的设定
, b9 h& j l% G! N" q; q. G( z" E1、表格浮动环境+ t6 L6 \5 N" S% P1 B4 o! k
控制表格(浮动)在本页中的显示位置需要table环境。
$ X3 `+ {# Q# g2 `; p; W+ _3 R位置参数有htbp四种:here 、top 、bottom 、float page。8 G4 z1 B5 u9 U4 I
table环境中可以通过 \caption 命令表格的标题。
, }" `4 B8 {" X
8 t0 d8 e0 Z/ J7 R: X9 O/ c(1)位置参数htbp释义:7 C7 t3 v% @9 W2 H! f
here:在输入表格的位置排版( }4 v% ]2 q8 m3 W: r1 W2 V6 _
top:在输入页面的顶部排版
. Y1 E- d+ e4 t: Y" pbottom:在输入页面的底部排版
6 i% ?6 G) D" r1 K hfloat page:在单独的浮动页面排版4 H" S2 t! E8 N1 D
(2)使用模板:
5 Y7 x2 ]2 U0 J. r\renewcommand\tablename{表}2 S" D( U' b8 D6 F1 W" ]
\begin {table}[htbp]. ~9 b* g0 J; u- x7 C f! E% A
\centering \caption{成绩一览表}
* Y+ w* M" ]1 A0 e. Q \begin {tabular}{c c c}
% ` m' p5 M' x8 C \toprule 8 F5 ]6 c6 x! d) }, o" k# _' A) N
姓名 & 语文 & 数学 \\ \midrule
/ u8 {3 k, {& Q3 q0 k/ F) T 阿汪 & 93 &97 \\ \cmidrule {2-3}1 f' S; Z6 z3 t
阿喵 & 98 &92 \\
# u& T( N8 z& T9 g- c \bottomrule0 ~1 l" D5 _) p+ n4 Z' g$ K& \
\end{tabular}
# {3 M1 E6 `3 ?; o" V, @4 k7 W) X %阿汪先生的博客
. f- n; V) X& Y/ f, d" D \end {table} ) r! F" G! _% p
' V$ t! i( w* Q2、功能强大的tabu宏包& H7 k/ X8 x- h6 H
(1)tabu宏包提供的基本表格环境
, o- \1 F' y9 M2 ~; }+ B4 T\begin{tabu}[<垂直对齐方式>]{<tabular列格式说明>}6 e$ F4 Z8 k; C- F3 ~
\begin{tabu} to <尺寸>[<垂直对齐方式>]{<tabularX列格式说明>}
6 ~7 ^# X' @' y7 s y! c! J\begin{tabu} spread <尺寸>[<垂直对齐方式>]{<tabularX列格式说明>}
0 ?; U- \% q1 o/ Y W8 K, 其中**spread <尺寸>**表示:在表格的自然宽度下再增加一个<尺寸>。" _6 K: ]: Q. B8 Z$ m
(2)画线格式/ t0 m6 Q+ h% m8 h
tabu环境中的画线命令:竖线|有一个可选项,可用来设置表格竖线的宽度。
( _ P. r2 D' J7 P \begin{tabu}{|[2pt]c|c|[2pt]}8 E+ V) D% |5 {' L. a
\tabucline[<尺寸>]{-}用来画横线,<尺寸>设置横线厚度,
4 s# C8 c1 k' n1 A {-}指从本行起到本行末尾画一条横线, {: h0 j- d/ T1 _. X2 w( ?
{2-}指从第二个单元格开始画线至行尾。/ U5 G; k" c0 ~& M! H
! B* e% t9 D* K! y& l2 x
(3)单独设置一行的格式. G0 i' g( M4 d! c) j+ x1 g2 {
\rowfont[<对齐方式>]{<字体格式>} 可以设置一行单元格字体的格式。5 J9 j' J0 N3 w4 r! C, B( [
使用示例:1 B% {0 N+ u8 M* I
0 D. f6 z: G4 i8 k+ D- b\begin{tabu}{|X|X|}: }/ K( k9 p. Q1 \: M
\tabucline- %“-”表示无厚度等参数3 F2 x n) e/ C3 C6 l m! i
\rowfont[c]{\bfseries} This & is \\ \tabucline-0 c7 I) |* p4 l, ^# k1 w
for & everyone \\ \tabucline[2pt]-8 R0 K3 ?' H0 v0 ?8 l
\rowfont [r]{\itshape} Mr & Wang \\ \tabucline- 4 X, X' r- d1 D) [- u) g8 i
%阿汪先生的博客7 o6 j3 f- r0 p1 A6 s" O7 W
\end{tabu} 2 z# |9 a! X0 L; E8 |1 H! {
& ]# s6 Y! m2 F- Q# ^4 Y(4)其他操作
; U$ i, }2 q' o5 C5 p# W2 u在tabu环境中合并与tabular环境不一样,前\extrarowsep后要在\end{tabu}之前添加命令 \tabuphantomline。
* O1 X0 r2 h, X\extrarowsep可以在每行垂直方向上添加额外空白,得到相同的行高。5 H$ t: ?& f# r1 Z
使用示例:
' c) G& w% n& B1 P\begin{tabu}{| X | X |} \hline
. ]. Y, C- n5 q( O\multicolumn 2 {|c|}{Hello}&World \\ \hline2 \# n% w1 A7 i v: N/ d
\tabuphantomline %阿汪先生的博客
V& e r9 t+ X' ]\end{tabu} %表格中不能有空行2 x5 _2 V' R, j; x
9 s0 |" U8 f- r6 j) t: w————————————————4 Z( L: z( ]9 C
版权声明:本文为CSDN博主「阿汪先生」的原创文章。
" p c% z* Y2 T4 Q6 D* s: Z原文链接:https://blog.csdn.net/qq_43499622/article/details/96894437
) Z6 Z8 W% @' y, Y# ]4 f |
zan
|