- 在线时间
- 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 田老师国赛冲刺课 |
一、常用的表格宏包
! d0 T3 ]; V# a' h$ `: z. ?4 n dcolumn 对齐小数点
7 A1 P6 p9 z4 \6 \6 C makecell 单独控制单元格格式
) A1 ?6 |2 X. g, v) c diagbox 对表格进行斜线分割
. B" O* x# K3 f; G1 i* longtable 长表格,可用于处理分页表格(表格超过一页时使用)
0 [2 N/ K+ S7 k" c; S( ~ ltxtable longtable和tabularx的结合体
) M, ]. _5 z1 C array 各个表格宏包都依赖于它) ?+ Q& ^2 R/ d: Q8 X0 j
* tabu 命令简单、功能强大
. Q7 P$ B0 F4 a4 t. H
8 N9 B' A* v; L. `1 O" F% Y0 j二、输入格式及说明' g# m( g) O% C; {. C6 G
1、一般输入格式, b0 Q4 ^7 [4 J" v$ [
\begin{tabular}[<垂直对齐方式>]{<列格式说明>}
- Z* r n! O+ {4 z# P, s- r! C" p5 ~ & & & & \\2 _, \* ?- ]* \* I. l4 J
\end{tabular}
' {! U1 B% S( R
2 ~( m- I( ~ X' G2、一些说明- s. |. `1 k* t7 f# [
(1)特殊符号:/ ~1 Q9 e6 d' \ |- K
\\ 表示换行
4 }" E/ u! U. U/ M3 j, ] & 表示分隔单元格
. B8 t; C( x, @ n0 J
" j4 D3 p: r- k8 N, N1 P(2)垂直对齐方式:4 T" H. w% M: \- D8 x8 {1 j) R
t 表示按表格顶部对齐
' b6 g3 n8 D7 _) c% d1 P. G b 表示按表格底部对齐
5 g' B/ W1 r4 c5 l- H1 p5 Y, Y z 默认为:垂直居中,非t和b的参数都看作居中: L6 C2 p( z) i
3 f# e0 h; H; l9 [* ?2 B
(3)列格式:
: Z I3 ?* W( e: f l 表示列左齐 (小写的 L)7 p1 S$ l* ?( T' \/ k
c 表示列居中对齐5 z+ `$ o* g0 U/ U4 o4 H
r 表示列右对齐
+ c, ?. P4 r! [$ C, l- |
" @( m2 I4 n8 n0 v6 n( c三、单元格的合并
& J& I, |7 h+ U- }( [4 O3 R/ n: |1、行内单元格合并命令" n# ?, J5 o1 Z& x
\multicolumn{<项数>}{<新列格式>}{<内容>} %<内容>为合并后的新内容 ( s' a! X! [; b k2 c
5 v @: ]% n" T
(1)基础模板:
9 @! v F4 @+ Q/ _7 i \begin{tabular}{ | c | c | }
; }! \' E' I- [ \hline# h1 H3 H. k$ p9 L# |
\multicolumn{2}{ | c | }{成绩} \\
& X6 y- |+ _! ?; w0 c8 i0 F \hline
% M- Y- a4 d3 S7 g" `' D( L 语文 & 数学 \\ \hline
: k. ~) U% q5 k2 D R 100 & 100 \\ \hline. M' _$ C3 G5 V. X5 T4 l+ y
%阿汪先生的博客* r" w0 a+ W# A( c# q
\end{tabular}. B @5 W% w. p$ c
$ Y7 w, E W+ X# t( e4 I: J1 H' G
(2)进阶模板:& U9 }+ ]5 L0 b2 n
\begin{tabular}{ | c | r | r | }2 |. U! Q& {* V" J) K
\hline6 z& j. f" d2 P8 J, }, \2 o
&\multicolumn{2}{ c | }{成绩} \\5 y4 t0 G4 @& m! S% y
\cline {2-3}
# v6 U- ~8 `* j; h- G! o% p/ ?. i 姓名 & 语文 & 数学 \\ \hline# |5 P5 U; ~3 j4 h$ X
阿汪 & 93 & 97 \\ \hline 0 ^2 a. T( h. Z3 }
%阿汪先生的博客1 ?) m/ ~- O! T- v; k i( i1 c
\end{tabular}5 R7 \; e& k" j# P3 x
2 W, R* J7 B5 k# c
语句技巧:画水平表格线需要指定线的起始和终止列号。
& C% X- E) H/ O1 c( s用 \cline {<起始位置> - <终止位置>} ,如\cline{2-3} 。. R, ]; r( {$ A8 R. `
2 Y! F& t9 X, X O1 t$ D3 ]% o2、列内单元格合并命令0 O' ]% r( k2 B' ?+ v M
需要用 multirow宏包
4 {& t! p1 a& M+ _+ @/ p+ u\multirow{<行数>}{<宽度>}{<内容>}:内容达到指定宽度后自动换行
0 X ^' ]( O/ M$ l+ @9 s# @+ G) w\multirow{<行数>}*{<内容>}:单元格的宽度即为输入内容的宽度 X8 W, B, G/ l' X/ s' J. H% q0 q
i1 `6 [) w2 _- `9 A. O基础模板:
! l ]0 x1 d8 {! a* u( `7 k%导言区 \usepackage{multirow}! {8 Z1 `3 g5 G
\begin{tabular}{ | c | r | r | }4 Q; G6 ^4 i. I6 n9 e$ L3 E
\hline
: k" w& J' G5 [" x! O% P \multirow{2}*{姓名}&
. q* u" Q8 e; J4 ?4 d2 i! X \multicolumn{2}{ c | }{成绩} \\3 U% m" m- x1 b7 ^" j
\cline {2-3}* m/ H3 @4 [* `3 S2 f3 t5 L- v
& 语文 & 数学 \\ \hline
! I8 W. `& i6 ~; `1 C1 e$ r$ z 阿汪 & 93 & 97 \\ \hline
, w1 s9 A3 s8 r %阿汪先生的博客: q+ w. s& M" S6 f0 R8 x
\end{tabular}& {6 e# d1 x1 m" @
$ x3 N4 f9 s1 S' i; z
四、特殊表格# @" C# y3 q$ O" L2 O5 D+ @' m
1、定宽表格—tabularx* u; q. ?8 m( n) X, U" g/ A
(1)注意点:
7 @( B% Q, u0 y) e3 T2 }/ ?% P* T8 v tabularx宏包提供tabularx环境9 p7 `) C0 K1 E+ K9 G
X为列格式说明符(列宽自动延伸),单元格内部默认左对齐,使其居中需要array宏包支持。& K9 a/ i1 `: U9 f0 t$ d$ {
; |. E, d( p6 U h7 [; ?( k
(2)使用示例:
6 s/ ^. J! u/ E8 _%导言区 \usepackage{tabularx}: [3 J x/ |; B* |
\begin{tabularx}{400}{ | c | X | X | X | X | X |}" y0 a) { c4 X/ }
\hline1 [/ N" ?3 _4 X7 A1 V2 `
数字 & 1 & 2 & 3 & 4 & 5 \\ \hline
6 H, G/ Y5 L/ C0 m8 B3 ] 汉字 & 一 & 二 & 三 & 四 & 五 \\ \hline! ?1 f- H+ Y2 W
%阿汪先生的博客
- ~1 c. U( @- W6 Y8 ` \end{tabularx}3 k! K6 V: w7 `6 O$ H& a3 f
: R! u9 V4 w/ T+ k6 F; w2、三线式表格—booktabs- s; R/ p# s9 v f! w5 F. u- I
(1)booktabs提供了如下命令:
2 ^2 X i; {* V m) N: E \toprule ,画表格顶部粗线。. N4 `& R( Q$ b7 h; C* s/ Y# U6 J- N
\midrule,画表格中部粗线。3 w8 x* R% S; j! A+ {
\bottomrule,画表格底部细线。1 ~; S* D; N- B' m4 A
\cmidrule 与 \cline命令相似。
( @4 G, L# P" \% t
u* _. Y. K* g& h1 [(2)使用示例:* q' `; o0 y! \, [3 `7 c( b
%导言区 \usepackage {booktabs}
! L# V4 x' ?6 p; h \begin {tabular}{c c c}
; R$ j+ D5 X0 W8 S! o1 ] \toprule
- U3 A$ j: @8 C0 @- U" L 姓名 & 语文 & 数学 \\ \midrule
7 @. x4 o( g% J0 r: @( x5 j+ { 阿汪 & 93 &97 \\ \cmidrule {2-3}
% H; `( R9 i* j 阿喵 & 98 &92 \\
) e! O6 P# M1 m$ f, B \bottomrule
1 ]' P+ p6 F @ e2 y %阿汪先生的博客: G$ v3 ?2 ]1 t+ K2 I
\end{tabular}
) C# s& w0 A5 e6 R9 l, [/ J7 g# u7 G# G: T9 r( r1 V
五、常用表格参数的设定6 d# i2 v* ]8 z& J h M5 z
1、表格浮动环境/ J z2 `( i& ]8 A
控制表格(浮动)在本页中的显示位置需要table环境。
: S+ r( T' l& y位置参数有htbp四种:here 、top 、bottom 、float page。
; v6 ~6 m& ~/ J$ Etable环境中可以通过 \caption 命令表格的标题。
& d; H* y' D9 d `( c1 _5 k, O8 D1 H0 R, c0 R, i
(1)位置参数htbp释义:# V3 u6 d3 r/ D$ b
here:在输入表格的位置排版8 E5 t5 Z. u5 \8 i3 @! U
top:在输入页面的顶部排版$ y. ~4 k5 i& a# \& N) o
bottom:在输入页面的底部排版& H8 K; ]; d/ u+ u$ W
float page:在单独的浮动页面排版 X+ ?0 h W1 r
(2)使用模板:
7 @) b# S9 B( R+ u) o0 T\renewcommand\tablename{表}
0 r n) @% [8 C# ~7 d5 z \begin {table}[htbp]: K" [3 p! J7 p: P9 B3 A
\centering \caption{成绩一览表}
8 J6 ?" W5 a% _8 q$ L- P l- W/ r; M \begin {tabular}{c c c}7 N& B+ g% @7 j0 T
\toprule . j G+ w4 V+ T0 E
姓名 & 语文 & 数学 \\ \midrule4 U+ H: C% B2 v1 n( |
阿汪 & 93 &97 \\ \cmidrule {2-3}
6 V0 y, N+ J. @) W% A0 T 阿喵 & 98 &92 \\
5 R3 x: X* P$ k \bottomrule
& @0 p# j2 ]2 C0 }0 f1 D) M, r) n \end{tabular}& v( V. _* A1 a
%阿汪先生的博客; f" ~ a1 Z5 u# m' s' o7 B1 q; {
\end {table} % H! ?/ `7 ]4 w: X0 f
2 z( x" T- b( h) h$ p+ ^2、功能强大的tabu宏包' F% t4 x8 A; Q7 _+ O
(1)tabu宏包提供的基本表格环境) |8 I) ^$ x ]% {' X6 M( p( M
\begin{tabu}[<垂直对齐方式>]{<tabular列格式说明>}
0 J5 L0 N* o7 D) U' r4 V2 o X6 ~" w\begin{tabu} to <尺寸>[<垂直对齐方式>]{<tabularX列格式说明>}% p& D+ E% ~: x2 k$ a& n
\begin{tabu} spread <尺寸>[<垂直对齐方式>]{<tabularX列格式说明>}/ c) T, _& D2 o
, 其中**spread <尺寸>**表示:在表格的自然宽度下再增加一个<尺寸>。
, j2 O7 S0 O% B# W! b7 e1 a(2)画线格式$ H# ?. z/ s! w/ d! f
tabu环境中的画线命令:竖线|有一个可选项,可用来设置表格竖线的宽度。
5 T) e; O( I$ V B! I \begin{tabu}{|[2pt]c|c|[2pt]}
0 N8 k0 A1 o2 F2 U- \9 }% b9 F \tabucline[<尺寸>]{-}用来画横线,<尺寸>设置横线厚度,! h7 w4 ^# t0 Q6 N" `$ G
{-}指从本行起到本行末尾画一条横线,
$ c% `9 V7 H" \. K {2-}指从第二个单元格开始画线至行尾。$ z2 n% g; C* b9 \7 l
0 P' m1 o% R( Y: s(3)单独设置一行的格式
: B/ t+ _" i& m& G \rowfont[<对齐方式>]{<字体格式>} 可以设置一行单元格字体的格式。3 c5 V+ ~" ^$ T0 w4 @: F
使用示例:
. A0 {# h d( J( O
3 q5 a' [0 v9 z: e D\begin{tabu}{|X|X|}
9 ~9 M7 y& ?0 i# T- H4 s \tabucline- %“-”表示无厚度等参数
6 j7 G+ H g5 B* Z7 ? \rowfont[c]{\bfseries} This & is \\ \tabucline-
3 ~& d: `$ i \7 A* ^5 C1 W7 A for & everyone \\ \tabucline[2pt]-
+ Z" e, \9 O* h; {) c# {3 F \rowfont [r]{\itshape} Mr & Wang \\ \tabucline-
W1 s& c0 {1 f7 u. h* R( Y1 | %阿汪先生的博客
# V+ Q+ d6 b$ G. [ E9 Y\end{tabu}
3 ]3 Q" `; w- i/ S- l$ N" `, a2 B' ?2 x; O" B- H) c+ T' M9 V
(4)其他操作
6 ^3 U: @& T5 s6 T在tabu环境中合并与tabular环境不一样,前\extrarowsep后要在\end{tabu}之前添加命令 \tabuphantomline。
# U+ E! ?, {2 k* U" p: j5 d\extrarowsep可以在每行垂直方向上添加额外空白,得到相同的行高。
" E; G6 L4 \% p使用示例: `0 I" y( C0 H! `7 X; v2 {
\begin{tabu}{| X | X |} \hline
) A$ M: `0 i+ u\multicolumn 2 {|c|}{Hello}&World \\ \hline0 {/ [* B; j, o% N7 E0 j
\tabuphantomline %阿汪先生的博客
& ] M9 o8 o& G. ]4 x8 s\end{tabu} %表格中不能有空行
! I" ]2 G+ Q- X( |2 i: `: v9 ?5 L1 x! y3 C4 s* C
————————————————
3 }5 |( {! v( D& y% L/ f+ {0 ?* H( E1 t版权声明:本文为CSDN博主「阿汪先生」的原创文章。
" k5 V2 K6 P- b2 S2 {4 o原文链接:https://blog.csdn.net/qq_43499622/article/details/968944377 }& Y: I% {4 Z! D
|
zan
|