- 在线时间
- 661 小时
- 最后登录
- 2023-8-1
- 注册时间
- 2017-5-2
- 听众数
- 32
- 收听数
- 1
- 能力
- 10 分
- 体力
- 55539 点
- 威望
- 51 点
- 阅读权限
- 255
- 积分
- 17613
- 相册
- 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 田老师国赛冲刺课 |
一、常用的表格宏包# D& m/ S" y! p
dcolumn 对齐小数点
+ Z2 S9 [6 `4 k makecell 单独控制单元格格式
6 D1 K+ \' n9 F8 `8 l& A. Y! g diagbox 对表格进行斜线分割2 `% m9 ^6 U' ]
* longtable 长表格,可用于处理分页表格(表格超过一页时使用)
0 _- i w; `$ t2 n# l f S& q ltxtable longtable和tabularx的结合体
$ _) G8 b' K4 k! R* h. [7 D& Y8 U array 各个表格宏包都依赖于它
* R1 @7 u" G; _( Z/ o4 }6 O* tabu 命令简单、功能强大6 j. x7 t) U) O0 ^
3 P$ c8 L$ n; f# n) _* @ ^
二、输入格式及说明
# o' ?' O) ]4 c9 c& k1、一般输入格式
t/ p, h: s' o6 v( `+ f\begin{tabular}[<垂直对齐方式>]{<列格式说明>}/ t7 `7 g1 b# r# t; E% i
& & & & \\: w/ S0 w7 g+ h5 B% Z& q
\end{tabular}( J+ T: C6 a, F8 y
+ X, C- b+ Y8 A: W- X* W, X
2、一些说明+ Q' D: H! J) n% v8 M- J# S
(1)特殊符号:
2 x3 o& K( R$ Q \\ 表示换行% M( y/ N( q: I% ~
& 表示分隔单元格) }9 i9 W$ P0 O# I7 o
& b- z1 K- ]2 K+ {% A. [
(2)垂直对齐方式:
" x( S1 j0 F" k7 x1 [; A' L t 表示按表格顶部对齐/ @; s/ U8 M8 p2 `
b 表示按表格底部对齐
% [; _% l' Z1 m4 U/ F2 Z 默认为:垂直居中,非t和b的参数都看作居中
8 I$ b$ i0 N/ t' V5 D: @
8 k0 H* U! i+ Y# Y1 R' L, X(3)列格式:
! |1 r% m# b' l5 q8 B" g/ a" V& D l 表示列左齐 (小写的 L)
~3 `' l8 X6 f$ x% O# y) A9 l c 表示列居中对齐
+ i/ m3 g1 z& b4 P5 E# Q$ p r 表示列右对齐5 w9 p3 J) q) y2 U0 i
+ ?! j, z4 d- A% f6 t
三、单元格的合并: Z. Y L9 m. t, V6 u% m" C
1、行内单元格合并命令
4 r7 j' T9 N: n\multicolumn{<项数>}{<新列格式>}{<内容>} %<内容>为合并后的新内容 0 E1 Y2 Z: Z. R+ C0 e$ K% d
$ ^1 ^( F/ H; P- |(1)基础模板:; o+ j/ _ z% }" T w v
\begin{tabular}{ | c | c | }+ [2 i, k5 b2 X: Z# }0 ~
\hline
+ {' l+ p7 {; C& e5 _7 z+ E \multicolumn{2}{ | c | }{成绩} \\
0 `+ a6 \6 y1 V; U' o; e& a \hline% [4 Q9 K; S1 z) \1 m0 w: U
语文 & 数学 \\ \hline
% u+ n3 y6 b- n% a* @) m 100 & 100 \\ \hline( Q' h9 v3 E0 p v
%阿汪先生的博客, N. r* _( h3 s1 l5 z% g/ d/ N
\end{tabular}
+ C; R, e/ G7 P) ?! y/ P 8 T' Q* G/ C9 L9 E" _3 n
(2)进阶模板:: m% @2 W2 b- a, ]+ `4 l
\begin{tabular}{ | c | r | r | }
0 g& d6 g) v) W6 g* w7 y \hline6 ~) u) |0 _* [6 Z- z
&\multicolumn{2}{ c | }{成绩} \\
6 W, }: ?8 i; ?- A, L \cline {2-3}" r F _8 X; U4 t u
姓名 & 语文 & 数学 \\ \hline
( G8 ?5 m. ]6 Z# B! q2 z 阿汪 & 93 & 97 \\ \hline 7 T! C! ^4 d; l; H& O* m; Z
%阿汪先生的博客3 M* V' q V, ` R( A
\end{tabular}
9 Z+ e2 w0 U2 b( e5 o% F 2 Q0 K8 Q* ^7 B e( s9 z
语句技巧:画水平表格线需要指定线的起始和终止列号。) u" c' {) ]2 e! e8 V
用 \cline {<起始位置> - <终止位置>} ,如\cline{2-3} 。' c D4 o `% n" V
: r' r4 o% [ B1 `
2、列内单元格合并命令( i6 G3 o- F. W+ B4 h4 Q1 l0 x9 U1 R
需要用 multirow宏包, h! n5 ]3 }! ]% E: b
\multirow{<行数>}{<宽度>}{<内容>}:内容达到指定宽度后自动换行
6 t! Z! `6 [8 y0 L\multirow{<行数>}*{<内容>}:单元格的宽度即为输入内容的宽度
% ?$ G8 e/ @5 E G3 d: j" K
+ Y& q5 Q! V: m2 Q. X- _基础模板:# Y3 @$ k3 `. Q5 o1 z# t T, C( Y
%导言区 \usepackage{multirow}! E( |9 T1 [( ]
\begin{tabular}{ | c | r | r | }
) L2 N7 [; p/ c( T' h! U \hline
* N$ I: |+ `7 O( z2 @( ? @: q \multirow{2}*{姓名}&
1 W" L9 B( o% X, I: D1 U \multicolumn{2}{ c | }{成绩} \\& U; r' A+ I* p6 c7 X X, d! y
\cline {2-3}
" N9 d9 W7 `# h+ [% k & 语文 & 数学 \\ \hline
5 e- E# }; b: a J5 v$ ]' w s, _# `' x 阿汪 & 93 & 97 \\ \hline
# { t O3 [0 C3 H: m %阿汪先生的博客( L' n; v) E3 c1 d4 E
\end{tabular}- A# K7 C# U! a3 v
5 m" f0 N/ r7 X2 o* w四、特殊表格% l4 y2 R _5 q, ^" l
1、定宽表格—tabularx, ~& u7 t( M) R
(1)注意点:
* u' x9 K0 d' i; j- e, b/ } tabularx宏包提供tabularx环境
8 |; b" G0 Q3 G* K X为列格式说明符(列宽自动延伸),单元格内部默认左对齐,使其居中需要array宏包支持。1 _4 p0 |: ]2 j& t* d! |
1 Q- k, `: M u1 E5 C! L- f(2)使用示例:9 z& B8 k& Y9 a* U) u/ e
%导言区 \usepackage{tabularx}
* |1 @, V4 q! k2 B- M \begin{tabularx}{400}{ | c | X | X | X | X | X |} x Y- v! C$ Z& A* W9 o, ~- P2 a3 v
\hline! h8 f* g3 Y" X0 _1 r+ b1 z3 B$ U
数字 & 1 & 2 & 3 & 4 & 5 \\ \hline
1 K* Z3 V1 Y1 a- N 汉字 & 一 & 二 & 三 & 四 & 五 \\ \hline
, t2 d4 L, d: R* ~ %阿汪先生的博客& ?$ M8 i7 m9 t4 X5 l2 n5 R
\end{tabularx}9 V4 I& ~- a5 @+ v* {- X |
# f, W, \' R8 k8 v2 E# O2、三线式表格—booktabs
7 o% I6 D6 n3 O- ? Q6 I9 e2 a(1)booktabs提供了如下命令:- \& n4 l: T9 y, p/ @: F' u
\toprule ,画表格顶部粗线。
6 C) G9 d# x, y! A \midrule,画表格中部粗线。
% t. Z0 z7 d" k. j6 b8 T \bottomrule,画表格底部细线。
1 o2 F& U! |6 ~% I6 E7 d7 W \cmidrule 与 \cline命令相似。! |( _) b# H& O L% s) j( ?. q* i
; U. K7 {- E/ {6 p; T; R
(2)使用示例:& M- F$ o2 X( F$ U- ?3 W( m
%导言区 \usepackage {booktabs}
' E0 D# a. j5 ?% F4 i \begin {tabular}{c c c}: F4 v J1 ?* v) y2 i$ O
\toprule8 Y$ V8 A" K2 ^/ c* j3 {
姓名 & 语文 & 数学 \\ \midrule
" j6 e: Z `, c; u) y5 |' x& c 阿汪 & 93 &97 \\ \cmidrule {2-3}
7 R, ]9 D6 c- x" Z" a2 k 阿喵 & 98 &92 \\ ( ~0 q ~; n6 f1 {
\bottomrule
& {/ n# [/ x2 Q %阿汪先生的博客
; Y9 M+ b7 w2 _5 h' ]5 K+ j- \\end{tabular}
% v. G0 I. Y/ ^8 N+ | ^6 g
4 B8 Y5 Q3 A4 [五、常用表格参数的设定% C- A/ N8 W0 j/ p$ Q) F
1、表格浮动环境; S; W& ]2 o1 J
控制表格(浮动)在本页中的显示位置需要table环境。7 z3 e) j5 @+ G/ M* w; Q7 p/ [
位置参数有htbp四种:here 、top 、bottom 、float page。
* {6 n9 E+ L, htable环境中可以通过 \caption 命令表格的标题。7 G. g$ {3 x/ M/ G3 C
" C- A" Q# D# h5 `5 V; ?7 A
(1)位置参数htbp释义:( P( A9 u) ?& d2 I
here:在输入表格的位置排版
u0 s9 g2 U6 gtop:在输入页面的顶部排版: m0 a2 B, j7 Y2 D4 ~
bottom:在输入页面的底部排版) H' G( o) o( R9 W/ [, Q
float page:在单独的浮动页面排版
; l/ @( b! O. [2 F; ]. f: z* b8 h(2)使用模板:
# R$ p/ M! d3 c. p% ]) a9 G\renewcommand\tablename{表}
" o: Z2 C1 n& @2 ^8 J \begin {table}[htbp]
# s* O' e4 c# W& o \centering \caption{成绩一览表}
, @ v$ ?1 C t J0 I0 o; F \begin {tabular}{c c c}
9 {3 L* Z5 W: n0 E& Y) ? \toprule
( E6 m% H9 V# G/ @ X1 _1 C# h6 Q; p$ { 姓名 & 语文 & 数学 \\ \midrule& t! e( x- t) f: s# b7 l" K
阿汪 & 93 &97 \\ \cmidrule {2-3}
# i: j$ A( g- o/ s3 L6 K) M 阿喵 & 98 &92 \\
/ ~( n, j" P/ X: ~4 v8 D0 X \bottomrule
, E+ L, w* `% }6 b7 v* l \end{tabular}2 |' S' _; Z" ]* E
%阿汪先生的博客
, N# i6 L3 M6 N r! k& v \end {table} - ^( s, L) @. H
0 Q: g( x8 f9 e9 S, d2 c# Y2、功能强大的tabu宏包
: I; v! W: r3 W. ^(1)tabu宏包提供的基本表格环境
# H/ _2 s1 P' y. K5 T3 l1 {0 \\begin{tabu}[<垂直对齐方式>]{<tabular列格式说明>}
Z; B: E" I+ `% _! E6 r2 ^1 `3 O\begin{tabu} to <尺寸>[<垂直对齐方式>]{<tabularX列格式说明>}
' o# @& h& z/ a+ ^) N% R\begin{tabu} spread <尺寸>[<垂直对齐方式>]{<tabularX列格式说明>}
4 h U0 O6 \( a9 i2 z% q( \* G9 H, 其中**spread <尺寸>**表示:在表格的自然宽度下再增加一个<尺寸>。
: N0 o7 [8 m. I& k1 y(2)画线格式
3 F% X3 A0 Q# W tabu环境中的画线命令:竖线|有一个可选项,可用来设置表格竖线的宽度。
8 ^, l6 z. S' ]% \# O \begin{tabu}{|[2pt]c|c|[2pt]}
% W) v! C3 d; T( V) ]' F% _. Z- } \tabucline[<尺寸>]{-}用来画横线,<尺寸>设置横线厚度,
. O( u/ m( Z8 g1 }$ L7 e. |- m {-}指从本行起到本行末尾画一条横线,8 @. t. h8 C P& c
{2-}指从第二个单元格开始画线至行尾。5 ~0 d9 x3 N% y6 @7 p
% W0 \, g G9 d+ E, T9 r
(3)单独设置一行的格式
& J% X9 ~4 s" g& w. u \rowfont[<对齐方式>]{<字体格式>} 可以设置一行单元格字体的格式。! \' ]. f3 z. C: W) `( h7 n R5 x
使用示例:: e G. P7 z$ S ?2 f
0 }# C, y" J6 Y: R! l\begin{tabu}{|X|X|}6 s9 E* N. R$ W
\tabucline- %“-”表示无厚度等参数& I p9 \: w7 U% E( _* c4 K
\rowfont[c]{\bfseries} This & is \\ \tabucline-
$ D \+ r" }7 g1 `7 I2 s) Z for & everyone \\ \tabucline[2pt]-
0 x9 E: e7 m! m6 u$ D \rowfont [r]{\itshape} Mr & Wang \\ \tabucline-
0 J& _, Z; }# H T4 O %阿汪先生的博客- {- R* ~' F8 }, {* [6 F$ |
\end{tabu}
+ _6 |/ ^0 G: M+ g# q% |& v1 E7 M& {' {
(4)其他操作
9 H9 Q) _) g* E* c& T在tabu环境中合并与tabular环境不一样,前\extrarowsep后要在\end{tabu}之前添加命令 \tabuphantomline。
& d9 O3 }7 r* v0 g\extrarowsep可以在每行垂直方向上添加额外空白,得到相同的行高。
4 F* h2 M8 o: X0 _# v使用示例:: H. A% J6 G: S2 u0 A; S# j+ W- X
\begin{tabu}{| X | X |} \hline" ~- h7 q5 O' P0 k4 ~5 s+ W
\multicolumn 2 {|c|}{Hello}&World \\ \hline5 `. i% T8 e8 x$ c! w* l |9 F9 W: L
\tabuphantomline %阿汪先生的博客
, a& ~/ V. p; a2 f) S- x3 d\end{tabu} %表格中不能有空行2 A3 i8 \2 A. T& v
7 A- J' e* x* ~. w
————————————————
2 j. k; c4 _0 o2 @% B4 U3 v: M$ @版权声明:本文为CSDN博主「阿汪先生」的原创文章。) L$ s1 [: ^& w+ Y
原文链接:https://blog.csdn.net/qq_43499622/article/details/96894437
( u+ @6 D3 h& _& x+ x+ ~) k |
zan
|