- 在线时间
- 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 田老师国赛冲刺课 |
一、常用的表格宏包
, I2 v7 r! p/ U% g4 d" B9 ] dcolumn 对齐小数点4 Z! k3 v1 n J) M
makecell 单独控制单元格格式3 z: {0 W% E- Q" F9 j8 C1 t
diagbox 对表格进行斜线分割
( ` m! ?& L. e3 i+ \* longtable 长表格,可用于处理分页表格(表格超过一页时使用)% J5 o1 B/ R1 G
ltxtable longtable和tabularx的结合体1 r* f4 a g/ N* V- @( b4 T0 E
array 各个表格宏包都依赖于它
/ I" w) Q% Q+ m4 @$ o* tabu 命令简单、功能强大
9 q; Y& q7 N6 E g8 b* G! c0 ^0 D* ~3 w5 X" g
二、输入格式及说明* [: p8 e/ X# d2 X
1、一般输入格式. E$ P, v. T$ P2 o# U, B+ q$ U
\begin{tabular}[<垂直对齐方式>]{<列格式说明>}: p! O; e8 I, p( y' a5 E# R
& & & & \\4 s" {. \/ k8 b$ o$ y% @
\end{tabular}9 l* n \- ^6 |0 [$ ]6 k9 s. [' j
. S' o6 @+ X1 E) A2、一些说明5 |8 A$ T* i$ ^! G# j
(1)特殊符号:
+ b! q( d6 e" W1 u \\ 表示换行
# c5 H4 L: }6 C8 m) A & 表示分隔单元格
5 \6 X8 r H: j
8 r3 }: Y6 W6 v8 q* X(2)垂直对齐方式:
! a3 Z. ^7 \ Q" o9 S t 表示按表格顶部对齐
$ x, u& |3 M3 w* I b 表示按表格底部对齐. N% Z5 v9 P9 \% i) U% G- S
默认为:垂直居中,非t和b的参数都看作居中
- D% h( M- k# Z& Q1 v1 ]5 [6 f) }! x% O+ b5 b7 x) B1 b
(3)列格式:) b# i% C6 f3 n4 x
l 表示列左齐 (小写的 L)
9 ?. m( ~ q Z! {2 ~- s1 }) g) ` c 表示列居中对齐
8 [4 G2 u1 F ?; A3 b9 [& ` r 表示列右对齐8 d1 `4 ]. ?# x9 `- F, v; L& D
9 d% q7 _$ e, p
三、单元格的合并
3 s. f, m+ X, I: ?4 c0 T' |! m5 y1 [1、行内单元格合并命令5 s& e5 q( C# k' t
\multicolumn{<项数>}{<新列格式>}{<内容>} %<内容>为合并后的新内容
7 B. e' \; V& A; p, P9 Z4 N
9 }$ y: Q) @6 u(1)基础模板:$ Z1 \* S: ?. S/ t/ c( T# s5 C8 \
\begin{tabular}{ | c | c | }6 H, L& q! ~. `( b
\hline6 W2 K- n% Q5 ]" x: M
\multicolumn{2}{ | c | }{成绩} \\
7 k8 ~# h% x$ }- Z2 i5 e0 M \hline! Y7 P9 `( O5 i" `+ D
语文 & 数学 \\ \hline" D! h+ h4 [. ^/ R
100 & 100 \\ \hline
+ h; s( j" H! k7 J. f) t. \7 ?2 E# H %阿汪先生的博客( M! E7 ]" M' U9 }! C. A# D9 c( r
\end{tabular}
9 p" J7 r, V* z# m: e ) r6 h8 W1 Q; S) u J2 d
(2)进阶模板:$ E0 c% s/ [" t8 R6 V
\begin{tabular}{ | c | r | r | }
& e" Z- k2 D' b9 r! P9 M' D \hline
8 N5 E: O/ W/ n" r: q! a &\multicolumn{2}{ c | }{成绩} \\% L3 \8 z. h0 ?) ~% q1 J* J
\cline {2-3}
: `- e6 h0 f5 N, X( `! |: j( Q 姓名 & 语文 & 数学 \\ \hline
* m1 P$ n) b9 s. e$ \# |& J" f. L; p 阿汪 & 93 & 97 \\ \hline
* f u# ~( r( \" Y+ R6 r8 x- U$ S %阿汪先生的博客8 P* x5 S/ G) X, C- L
\end{tabular}, U$ V- X# {+ l9 o8 Y
/ ~. e2 C+ G2 Q M9 ?
语句技巧:画水平表格线需要指定线的起始和终止列号。# _$ l8 z% l/ K @) w
用 \cline {<起始位置> - <终止位置>} ,如\cline{2-3} 。8 S; B* z( M5 S K
# F; }( B) c& S0 g
2、列内单元格合并命令% ], Y: H; j0 M: o1 z
需要用 multirow宏包3 G# t/ [4 D( T7 a" z
\multirow{<行数>}{<宽度>}{<内容>}:内容达到指定宽度后自动换行
7 T7 W9 ^ \2 f0 |\multirow{<行数>}*{<内容>}:单元格的宽度即为输入内容的宽度) Y4 F1 H' \8 h4 D
; x( ?- u0 r' l" O- E基础模板:' \1 w( g! t( W9 W7 {, }: C! L
%导言区 \usepackage{multirow}1 y3 b; h$ A; K2 q+ f2 X: V
\begin{tabular}{ | c | r | r | }
! H4 \- O5 u4 b0 W( y \hline2 M& \- I1 k% \: E# t. j
\multirow{2}*{姓名}&" n3 R7 w$ X, d! }& b) Z
\multicolumn{2}{ c | }{成绩} \\
' Q7 h" v) V/ c, @7 J Z \cline {2-3}8 r5 t; U9 ]$ @ ^7 g$ j6 Z* x; d
& 语文 & 数学 \\ \hline
2 Z% a* {8 n+ l 阿汪 & 93 & 97 \\ \hline
+ _5 I( U6 b8 r %阿汪先生的博客
. t4 G. a& N+ K' T- Q* U1 S \end{tabular}2 P6 D$ `. q& u% t& w- {
, S" X8 R |7 x0 l5 F
四、特殊表格
6 j+ A) {$ q" i- H- i e1、定宽表格—tabularx
; k2 \" S8 o& j+ @$ c(1)注意点:
' q" m2 Z& ^/ F0 s) V7 y$ b* _ tabularx宏包提供tabularx环境
6 u: i) _& a2 T3 a X为列格式说明符(列宽自动延伸),单元格内部默认左对齐,使其居中需要array宏包支持。
1 ]( {; V4 J/ J; I, F" u" k, M0 b) p
2 T9 I& n9 m; \; r(2)使用示例:9 g' y+ G6 ~) f% h9 Q- B
%导言区 \usepackage{tabularx}
_ w' |7 R' E# ~5 x" w/ C2 Y. x \begin{tabularx}{400}{ | c | X | X | X | X | X |}/ s- c. C! @2 d4 C' ^
\hline) S" j3 O& V/ \4 n
数字 & 1 & 2 & 3 & 4 & 5 \\ \hline
9 f+ k; K' B% d! W) z 汉字 & 一 & 二 & 三 & 四 & 五 \\ \hline2 s7 ]8 f8 ]: z! K- D3 c# E
%阿汪先生的博客
# }# D" o" k1 B4 { \end{tabularx}7 q0 W7 y9 _/ H, J% p2 h. S1 v
4 i6 h: Y/ H2 v; n5 z
2、三线式表格—booktabs
9 W" J* p' t& _6 f7 h(1)booktabs提供了如下命令:1 h5 u2 b/ a, q9 S
\toprule ,画表格顶部粗线。2 J4 v9 U% S8 w; U8 M
\midrule,画表格中部粗线。. i( k& _" J1 i- M
\bottomrule,画表格底部细线。1 e1 F: H0 Y! H$ `. C
\cmidrule 与 \cline命令相似。
& y, q' t# n- \: Y' q: k6 ?( R* n" m- a/ X. L+ H9 W. ^' E
(2)使用示例:1 s3 U& V9 N9 S2 `' c2 \, J1 e
%导言区 \usepackage {booktabs}- [. k9 C4 n3 t! B+ Z% ~& d- V
\begin {tabular}{c c c}
$ d# s. t8 p- I- S* C \toprule
; b4 M! B" `: E) M( ~; z 姓名 & 语文 & 数学 \\ \midrule
7 u& q& J) d% @) b' T, A 阿汪 & 93 &97 \\ \cmidrule {2-3}0 y7 K# N. U2 g$ |3 `
阿喵 & 98 &92 \\ : P9 ?3 ?+ j s8 Q3 c( L7 d+ }+ O
\bottomrule 4 ?. ~ M C/ \7 n
%阿汪先生的博客( S6 h& O; g8 e( x1 y
\end{tabular}
; G' l+ b; }8 E" J+ r+ `. M- I7 l1 P2 x
五、常用表格参数的设定
, P. J; G3 k: X$ H1 n5 ?& e" `/ t1、表格浮动环境
" w" Z; _8 a+ P6 L. q5 `8 g) `/ X控制表格(浮动)在本页中的显示位置需要table环境。, y; S J% J+ `% N/ `
位置参数有htbp四种:here 、top 、bottom 、float page。
N' |- ` N$ z5 I" ]/ Q: ~table环境中可以通过 \caption 命令表格的标题。4 f9 R! o. ]! T3 r* v
4 ?5 L2 k$ B# H9 n: G' T
(1)位置参数htbp释义:
/ j0 G) z) n! `here:在输入表格的位置排版% Y! V9 L R+ X: F6 v6 B# b
top:在输入页面的顶部排版
6 y0 |- T! v- T7 o, s: Z+ Y( Xbottom:在输入页面的底部排版
" d+ p% B* {5 h& o$ [9 r" W, Qfloat page:在单独的浮动页面排版
: u! t7 q* o0 V, q0 ]+ E, Z# t! G(2)使用模板:8 @' \, [. V# U, |' z- n" T6 I: C
\renewcommand\tablename{表}: H/ |! Z: s0 ~7 m3 l
\begin {table}[htbp]1 O5 |, y; q" K) j. R1 Y: [9 L( e2 b
\centering \caption{成绩一览表}
; W+ Z/ t: C D, `" N. {, { \begin {tabular}{c c c}5 i( N9 v; C8 r% _, U# q+ s5 A
\toprule
5 R8 W* Z' X6 ^% l p" w+ R 姓名 & 语文 & 数学 \\ \midrule' ]5 S' Y, ^1 Q5 V" o, ~& A
阿汪 & 93 &97 \\ \cmidrule {2-3}5 Y) u" p( o& r0 ?( d' a" Q* c
阿喵 & 98 &92 \\
4 u- k2 Z) T. k* e \bottomrule
# |+ k5 _7 H$ g- C$ `) i D \end{tabular}8 g D; k- O: @1 Z
%阿汪先生的博客
+ B$ A* D, W! _ \end {table}
/ U. v0 H1 j& F+ _5 k, I; \: i7 v4 c- K& Y
2、功能强大的tabu宏包7 O6 Q' [$ j: u- @+ F# b/ c6 a& k* ~
(1)tabu宏包提供的基本表格环境
7 y8 Q1 s& U5 Z! Y\begin{tabu}[<垂直对齐方式>]{<tabular列格式说明>}
6 R9 o6 |; S7 E& @' e4 G/ w+ p Y\begin{tabu} to <尺寸>[<垂直对齐方式>]{<tabularX列格式说明>} Y9 u4 b3 B9 b5 P* q/ w
\begin{tabu} spread <尺寸>[<垂直对齐方式>]{<tabularX列格式说明>}' R* ?* R5 d% _
, 其中**spread <尺寸>**表示:在表格的自然宽度下再增加一个<尺寸>。
! v% F! Q3 `9 o' c(2)画线格式
, T4 e6 U7 R0 \& K. `" Y5 a. y& ~ tabu环境中的画线命令:竖线|有一个可选项,可用来设置表格竖线的宽度。
n0 ~1 v# r- R% b! w; w2 ? \begin{tabu}{|[2pt]c|c|[2pt]}
9 z+ ]6 S7 o9 I5 l* g" |5 r3 p \tabucline[<尺寸>]{-}用来画横线,<尺寸>设置横线厚度,' b" E1 K1 s9 y) ^; N; m
{-}指从本行起到本行末尾画一条横线,* ?" s8 a4 Z- Y- y0 _
{2-}指从第二个单元格开始画线至行尾。
$ g4 G v* G, ^9 x9 _: X: @: Y% j! ?2 @9 X3 V
(3)单独设置一行的格式& Q) T) y: O( @" Y- ?$ R& P
\rowfont[<对齐方式>]{<字体格式>} 可以设置一行单元格字体的格式。
$ X* H9 n9 s5 ^( a; w F3 `* H; K; G使用示例:, d; _* N) n& n4 d! Z+ e
+ G( h0 s$ J$ P0 J
\begin{tabu}{|X|X|}0 P% {* ^# ^. X! r
\tabucline- %“-”表示无厚度等参数! r, J) J+ G4 K) p( {6 H4 r6 ~
\rowfont[c]{\bfseries} This & is \\ \tabucline-! F! I e# F# \$ o
for & everyone \\ \tabucline[2pt]-
2 p3 ]! R" T Q3 I( z+ q \rowfont [r]{\itshape} Mr & Wang \\ \tabucline- % j' k$ D7 B! B
%阿汪先生的博客
( U, ~- @/ a0 C& w3 G\end{tabu}
4 i2 I3 v% Y* s4 X( T
$ |" R' k0 m) A(4)其他操作
: I2 }, Y4 {' @# |" q' F$ z在tabu环境中合并与tabular环境不一样,前\extrarowsep后要在\end{tabu}之前添加命令 \tabuphantomline。& P1 q& P6 {% P
\extrarowsep可以在每行垂直方向上添加额外空白,得到相同的行高。; b4 U1 `4 h7 r! U" L
使用示例:+ l; Z/ B2 k5 v- J. |$ g. y
\begin{tabu}{| X | X |} \hline
! x/ C1 Q8 M8 c\multicolumn 2 {|c|}{Hello}&World \\ \hline
% R; N3 p- G7 o\tabuphantomline %阿汪先生的博客
q7 X k" P. f) T2 [\end{tabu} %表格中不能有空行& |) i, @1 G d
/ \" V' ~, ^6 \————————————————* M# Q2 s7 O6 P% m Z* C, ] c' t
版权声明:本文为CSDN博主「阿汪先生」的原创文章。0 ^* I' m. B6 L5 E
原文链接:https://blog.csdn.net/qq_43499622/article/details/96894437% Z5 Q+ i( f4 e! q# {' x: Z1 x9 p
|
zan
|