- 在线时间
- 661 小时
- 最后登录
- 2023-8-1
- 注册时间
- 2017-5-2
- 听众数
- 32
- 收听数
- 1
- 能力
- 10 分
- 体力
- 55453 点
- 威望
- 51 点
- 阅读权限
- 255
- 积分
- 17587
- 相册
- 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 田老师国赛冲刺课 |
一、常用的表格宏包
( N! O7 c- u0 p9 ]/ G dcolumn 对齐小数点
! m, |) D/ n% d2 e. J makecell 单独控制单元格格式6 W; L! L; r3 h2 f+ ?
diagbox 对表格进行斜线分割" t1 j- n1 b* q& h0 T, R. `
* longtable 长表格,可用于处理分页表格(表格超过一页时使用)6 N' [( v: w5 _( |
ltxtable longtable和tabularx的结合体
1 U! i- i& B: U% z# `6 ` array 各个表格宏包都依赖于它, W' W+ e3 B1 P
* tabu 命令简单、功能强大
" J. y: ]6 Y+ h0 R2 Q) D* R' q* f4 y F3 D7 d
二、输入格式及说明4 u1 {: Q: S) W
1、一般输入格式" `9 i$ y5 g. S
\begin{tabular}[<垂直对齐方式>]{<列格式说明>}1 ?$ l5 u+ m. k' t$ y' F8 Q
& & & & \\
. ]+ X! c- F3 }$ t \end{tabular}# j! \- w8 ?8 } Y1 U, a
7 z) v- @. S9 S% F2、一些说明
. k6 n0 Z) _* x! m9 K(1)特殊符号:, k* w$ x& `3 D
\\ 表示换行3 N1 _+ M! d! k' H
& 表示分隔单元格
- d# s2 C1 ~; p4 \+ q6 u
! K) L# v, l+ h3 N( g1 `4 {+ h W(2)垂直对齐方式:. X4 K: i, U! k( L+ g1 r
t 表示按表格顶部对齐
/ t6 U+ g7 P( ~" c b 表示按表格底部对齐0 W2 O. F/ W, I9 l A8 k
默认为:垂直居中,非t和b的参数都看作居中
# x6 G! ~( h1 H' {: \
% O& t+ S. D+ p$ I/ w* i. f0 O) L& d" V5 [(3)列格式:
6 X/ g/ Y+ A2 _! r, N l 表示列左齐 (小写的 L)
& _/ m6 l! a$ p2 E1 ~: p- x c 表示列居中对齐' X* C+ M3 m% o7 r' N0 c9 p
r 表示列右对齐: |- u% S& l; H, ]7 q
/ X4 Z m1 ^% u6 z0 C4 k三、单元格的合并
2 [4 ^- e5 z/ ^# o- p$ K0 _" x" h1、行内单元格合并命令
$ s: l4 ]7 H) d! `% O' M\multicolumn{<项数>}{<新列格式>}{<内容>} %<内容>为合并后的新内容 . T, k M3 T+ K( G, {8 f
8 {/ Y, x# b& a" l
(1)基础模板:
5 l4 \9 w [8 Q% W; H" E" E, l+ c \begin{tabular}{ | c | c | }% g8 ^/ T4 y1 \& ]9 B# o$ E
\hline# j9 z5 ~8 Y3 ]) c
\multicolumn{2}{ | c | }{成绩} \\1 I8 u7 y0 b- t# {
\hline. l& L9 N% V" o# ^! U& Z1 u* _3 W
语文 & 数学 \\ \hline
/ X- Y2 Z+ [ ]4 N 100 & 100 \\ \hline8 b0 F: d6 q2 p4 k, n2 x; d
%阿汪先生的博客
" u: x5 I. e( k& l \end{tabular}4 `5 g7 r6 }' v& U
6 Z+ ?4 A- F, H4 Q6 E! b(2)进阶模板:
2 A, T* U% }1 G: X& [9 G# Z \begin{tabular}{ | c | r | r | }
+ n0 k5 S( |5 d2 w1 N% }% R a \hline. \; e9 ~6 Z) P, f" y, A7 o
&\multicolumn{2}{ c | }{成绩} \\
' C' h3 c, R8 V J! d1 z \cline {2-3}
% y1 D* b2 R) p. C 姓名 & 语文 & 数学 \\ \hline' ]3 f- A/ R: o2 S. h; y
阿汪 & 93 & 97 \\ \hline
0 G2 S2 b: W9 z; J* j/ x %阿汪先生的博客4 @2 F2 G5 D4 B1 F, O
\end{tabular}4 x' L6 o3 `7 R! Z$ o j) {
) o$ }! @* E# j& z1 r" L# G语句技巧:画水平表格线需要指定线的起始和终止列号。) |) N, W5 `, S: _ f# k& H
用 \cline {<起始位置> - <终止位置>} ,如\cline{2-3} 。6 p% r3 P5 h9 X' y+ G. Q" [# B5 k# `4 T
* W3 \" i1 Q4 |- {$ M2、列内单元格合并命令$ e7 ?. b- b" V( t1 _5 `7 n
需要用 multirow宏包8 F0 e" }$ U" X4 z3 M: \
\multirow{<行数>}{<宽度>}{<内容>}:内容达到指定宽度后自动换行- p, u- X3 D2 E6 D2 Y# I1 v
\multirow{<行数>}*{<内容>}:单元格的宽度即为输入内容的宽度
+ i4 w) S( N/ ?0 ~- H! N: `% i6 z1 @3 d0 \# x
基础模板:" ?: S0 z$ K8 i6 K Y& K
%导言区 \usepackage{multirow}. a+ v/ M, |# {& }
\begin{tabular}{ | c | r | r | }
3 J) Y9 x) Q5 J& \9 L5 d2 m \hline% [- m3 ? X, ^: i! D, @
\multirow{2}*{姓名}&2 p; X* w/ l9 \* g& A* g( j! ~4 M
\multicolumn{2}{ c | }{成绩} \\
4 |* n1 L4 p. e2 e \cline {2-3}6 l6 _" q% I, F6 }
& 语文 & 数学 \\ \hline
$ k( V5 c0 a8 ]8 O, Q! f# i 阿汪 & 93 & 97 \\ \hline4 h- D1 T6 T7 P) a4 I( h( a
%阿汪先生的博客& G% ]1 b! ?! o. }
\end{tabular}
9 T0 ~! K; U7 |; A5 O/ l
0 j3 ]! T2 T3 i' T% s6 ~+ W四、特殊表格
! f$ i) b- n' E2 R9 X8 b; Q5 f; [( U1、定宽表格—tabularx
/ M8 R. Y4 t g(1)注意点:9 r/ ~, \( b, b% P) z
tabularx宏包提供tabularx环境; C, A; e9 W* e" M' B$ {
X为列格式说明符(列宽自动延伸),单元格内部默认左对齐,使其居中需要array宏包支持。2 c( Q. q! N- l1 v0 G
?4 {- s& ?) R+ s. f0 x(2)使用示例:3 V) l: |& x* x3 }" J/ N! `
%导言区 \usepackage{tabularx}. c) o, k+ t) L; Z( U* ]
\begin{tabularx}{400}{ | c | X | X | X | X | X |}3 e* `0 }& s2 ?3 P8 C
\hline
) t4 t- a9 H, ?0 }. |4 _# ? 数字 & 1 & 2 & 3 & 4 & 5 \\ \hline5 T9 S# M |9 Z Y5 t4 V8 X8 J- {
汉字 & 一 & 二 & 三 & 四 & 五 \\ \hline
7 ~' }' d C' W! t# o %阿汪先生的博客
" t) V w# B6 e d \end{tabularx}3 G& j& \+ U9 @. l+ g7 V2 m2 U
5 n* R1 X6 X1 I3 Q& B) z- o2、三线式表格—booktabs
2 u9 j9 I7 Z" @6 U S3 W5 i5 ?1 ^(1)booktabs提供了如下命令:: m) {- O, g# x; p( L
\toprule ,画表格顶部粗线。
* |6 F1 D$ z- j( _8 [$ v \midrule,画表格中部粗线。
& f4 K( q4 z, J \bottomrule,画表格底部细线。
" @9 {9 J0 ]1 |: B0 u8 k9 ^+ N+ q ? \cmidrule 与 \cline命令相似。
" d4 e. G: I' B1 p* h A
0 B, _. l$ w& ^(2)使用示例:
" @3 J# Z, [, V%导言区 \usepackage {booktabs}: n5 c9 T* H/ K* Q5 V
\begin {tabular}{c c c}8 z0 N/ j" O% D+ M' B& r0 g# T C
\toprule
' l3 H6 }; e$ W! a6 u. R! C 姓名 & 语文 & 数学 \\ \midrule( m+ ~$ p0 j1 w
阿汪 & 93 &97 \\ \cmidrule {2-3}
: j2 p$ g% C. \# |8 ` 阿喵 & 98 &92 \\ 0 A/ J8 B) V( y5 ]% F! s" ]! k
\bottomrule
9 Q! H: G. F5 z %阿汪先生的博客0 z/ N7 r# _' i2 Z6 _+ D4 k9 }: X
\end{tabular}2 D1 l: c) R) G5 b9 e" [
5 _ m6 O! Z3 s- e" L C' i
五、常用表格参数的设定
6 u, u! y2 L2 m Z1、表格浮动环境
; g! v! v9 D5 \4 [控制表格(浮动)在本页中的显示位置需要table环境。4 L2 c+ P( |; ` I: L( H1 e
位置参数有htbp四种:here 、top 、bottom 、float page。* Q( V, V" ]3 K% D
table环境中可以通过 \caption 命令表格的标题。
5 U: Z4 X+ R8 [% L# y7 o
- r& c1 p( c8 O1 t+ Z. q1 c6 _6 E9 N, O(1)位置参数htbp释义:
/ |/ A2 `$ [+ L0 Ohere:在输入表格的位置排版+ z- N4 U, G( c& \: h. v% f
top:在输入页面的顶部排版
" h, o# E z' {6 z2 r" ~1 S* W8 l, Bbottom:在输入页面的底部排版1 \1 u, H' }4 V) R) l9 y! w
float page:在单独的浮动页面排版0 p% V; @7 c, S L/ H+ A- { w4 L
(2)使用模板:; [3 D4 i: l# D7 j7 M
\renewcommand\tablename{表}
. x N- n1 _% ~5 P# n4 \0 M \begin {table}[htbp]
" ]2 C3 H! w& y \centering \caption{成绩一览表}" `3 N' D# J. {8 R& p
\begin {tabular}{c c c}
7 X) S6 [& i' e4 P4 a \toprule
5 A( w' @1 y. g+ w2 ]8 L 姓名 & 语文 & 数学 \\ \midrule4 Y% y1 ^" o5 ]0 |4 L' F2 e
阿汪 & 93 &97 \\ \cmidrule {2-3}, k( F6 X& o* P# \+ b, ?
阿喵 & 98 &92 \\
1 f8 Y0 G6 O9 ~( m" b) o# ~ \bottomrule
: I1 a1 p" n( V* l4 U, G0 o% W \end{tabular}' h3 J4 c0 i, K$ ^9 `* f" h
%阿汪先生的博客
7 \8 L, z Y. ` \end {table}
+ a. C; j) J- N2 Q+ K4 f; C$ A. U
2、功能强大的tabu宏包
J$ i7 `. |3 S- m' L8 m3 i(1)tabu宏包提供的基本表格环境
1 V5 S% E- m1 u# A2 P\begin{tabu}[<垂直对齐方式>]{<tabular列格式说明>}
# P! i# S0 B* r, o% b/ u\begin{tabu} to <尺寸>[<垂直对齐方式>]{<tabularX列格式说明>}
% g# S2 w; o5 J1 G2 O7 i# E% _\begin{tabu} spread <尺寸>[<垂直对齐方式>]{<tabularX列格式说明>}/ q- R0 `, O. [
, 其中**spread <尺寸>**表示:在表格的自然宽度下再增加一个<尺寸>。
2 M" o2 t9 h% m8 D J) i(2)画线格式
^( M$ `7 M6 W7 ` tabu环境中的画线命令:竖线|有一个可选项,可用来设置表格竖线的宽度。
7 t; @; u u: r" J \begin{tabu}{|[2pt]c|c|[2pt]}' d* b; L R7 D+ }* Q
\tabucline[<尺寸>]{-}用来画横线,<尺寸>设置横线厚度,: b0 H- d/ s0 w2 F& s7 e
{-}指从本行起到本行末尾画一条横线,
% O+ k! i: t) i* K {2-}指从第二个单元格开始画线至行尾。6 W _, S" n" H4 X
! o7 U- R& {) ~
(3)单独设置一行的格式
; K _0 R, J0 ^* D/ d) i \rowfont[<对齐方式>]{<字体格式>} 可以设置一行单元格字体的格式。/ x+ `) z0 H9 q( u% E
使用示例:
) q) G/ Z8 x% e( ?0 K
" G( [+ z/ e- k' }/ S& [4 g5 @3 l5 q\begin{tabu}{|X|X|}
% m7 L7 K7 y0 z: F1 H* ] \tabucline- %“-”表示无厚度等参数
) R% Y: }) Z, l1 s6 t* ]7 @ \rowfont[c]{\bfseries} This & is \\ \tabucline- m/ y4 A6 r3 R t. O0 i
for & everyone \\ \tabucline[2pt]-
# f4 p! | p' y6 ^& d4 ]9 l \rowfont [r]{\itshape} Mr & Wang \\ \tabucline-
7 u- o4 X; |5 F+ e+ Z/ I %阿汪先生的博客$ {8 {! T# X$ J; k
\end{tabu} : _2 w7 K# ~. g( L% i) w* U
5 z& m, B1 y3 i8 F' I5 \5 u; q5 A(4)其他操作' [& ~/ N. l' c: A# Z
在tabu环境中合并与tabular环境不一样,前\extrarowsep后要在\end{tabu}之前添加命令 \tabuphantomline。
: U( \& Q) D) o. T W( W& D( Q\extrarowsep可以在每行垂直方向上添加额外空白,得到相同的行高。" |% w( E0 k2 H! a9 M+ L" ]8 b
使用示例:
$ v1 C3 w7 I( N3 G& S\begin{tabu}{| X | X |} \hline
) N. h) A" S8 M/ L5 Q+ R! O\multicolumn 2 {|c|}{Hello}&World \\ \hline9 |0 p& ?1 J- T$ y1 p
\tabuphantomline %阿汪先生的博客, g. W, k" X7 l
\end{tabu} %表格中不能有空行
: g& t$ ]) m# j, t; Z2 R& T+ _/ I% g- v6 x: I, e2 f
————————————————
2 S/ ~7 Y; M/ ?& ?9 _. X) N* c版权声明:本文为CSDN博主「阿汪先生」的原创文章。$ v* M" g* g! y6 G
原文链接:https://blog.csdn.net/qq_43499622/article/details/96894437
: U9 O" o8 D: l' l |
zan
|