- 在线时间
- 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 田老师国赛冲刺课 |
一、常用的表格宏包
# S% v; ^! Z: x0 ~$ q# n dcolumn 对齐小数点
0 e6 z) \ a; O2 ?$ y' ^1 @ makecell 单独控制单元格格式/ e. Y. Y2 D" |0 t$ S- a3 |
diagbox 对表格进行斜线分割
% D6 L( g5 W0 \2 w, K* longtable 长表格,可用于处理分页表格(表格超过一页时使用)
! [7 ~$ p3 j/ G7 W: K ltxtable longtable和tabularx的结合体- F2 v/ I% J0 ^0 J' {6 g0 J
array 各个表格宏包都依赖于它5 H& `4 @# g' e5 j" q
* tabu 命令简单、功能强大
# E# J' A2 b1 h9 r2 {7 d1 G* A- _0 s( }8 a$ O, ~" u
二、输入格式及说明9 R9 ?' j! P% ^4 n2 d( h
1、一般输入格式8 F! s$ q0 q: r0 ^4 j0 q
\begin{tabular}[<垂直对齐方式>]{<列格式说明>}
* t4 W$ d5 d! `9 f & & & & \\" P& J: E+ u0 p3 b/ \& b
\end{tabular}3 O6 @6 G+ G5 i
2 s5 E0 M) C) V5 r% F) N- H7 ^
2、一些说明: Z( m# A9 e+ M6 H. b r0 B' o( h
(1)特殊符号:
1 I, Q4 V* P5 g- j, G8 j \\ 表示换行( c( ?# w( y7 W# U" |
& 表示分隔单元格
/ ^2 {8 [" G' }: Y8 A6 V2 a% g a$ e9 b' P. q6 i
(2)垂直对齐方式:8 h0 p- S/ V9 g& U( `" O# F# W( H
t 表示按表格顶部对齐
! a% I. P8 k) R8 \6 D- O7 i b 表示按表格底部对齐
1 r. g2 @% l" a8 r/ ~; l+ W. v% ` 默认为:垂直居中,非t和b的参数都看作居中" Q7 j9 P' l+ X
$ Y. F. U! f6 ^; k% S4 P1 h(3)列格式:
. X2 i* ^9 S/ F# J l 表示列左齐 (小写的 L)
$ R, i3 Q* |7 f# b& r: T c 表示列居中对齐
) S0 k( a& C1 Y! f# n5 ?5 q r 表示列右对齐
, F! d% O6 ]* @ m9 u1 [$ ] E+ U. j0 O4 L0 P3 y$ N) q' A
三、单元格的合并0 s. f+ u* b+ O T8 j/ U
1、行内单元格合并命令* H8 N U: A. ?5 @. t7 w
\multicolumn{<项数>}{<新列格式>}{<内容>} %<内容>为合并后的新内容 8 Y' }3 D. Q9 n" X) L6 @
, P! n/ a. b. N& L2 x2 N* R
(1)基础模板:
3 e6 c' s1 K/ X# t- F1 F/ m1 R3 \ \begin{tabular}{ | c | c | }- _! R! R0 A; K
\hline
! E/ \$ J1 n/ U' y0 H \multicolumn{2}{ | c | }{成绩} \\% y/ I; F! ]/ r1 |# l
\hline
_5 v6 z. Z& P( \8 M# \7 p, v* O 语文 & 数学 \\ \hline
1 N0 Z1 Q) @2 l; x! x 100 & 100 \\ \hline
; p6 L- c* l! Q: y% W( ~. J %阿汪先生的博客
( V- F; B0 c& d6 d0 P. Z K; ` \end{tabular}4 A! H6 e- ?0 s1 H- x
1 C _4 e0 i' t' [ [ K$ |
(2)进阶模板:. R- E; G6 s: |5 {, \% }0 a2 [
\begin{tabular}{ | c | r | r | }
4 p: k7 [8 d( q: B5 ]9 `- B \hline
2 l& Z9 q3 \- h# k* b5 L* n &\multicolumn{2}{ c | }{成绩} \\
2 n( m |; Y1 E3 W# o( e \cline {2-3}- I- h2 K3 N, z7 D# ]. Q" u
姓名 & 语文 & 数学 \\ \hline0 }3 Z4 v( B& N! t% N2 J; J0 w1 j
阿汪 & 93 & 97 \\ \hline 1 h4 Q% Q6 u7 S' o; ^
%阿汪先生的博客
9 |0 ^+ m( `9 m \end{tabular}2 J* V- B( r% G1 D! ^
* s4 ~1 c7 Y! h语句技巧:画水平表格线需要指定线的起始和终止列号。
& q1 b3 V9 U# w ^用 \cline {<起始位置> - <终止位置>} ,如\cline{2-3} 。$ K0 D0 I/ V4 C$ z( h3 v0 ^0 d4 _# P1 u
6 R/ R* t6 ^% b) @$ [; I
2、列内单元格合并命令8 w0 x& u" L1 v* K+ Q# C( d
需要用 multirow宏包9 |. ?3 [0 ?2 m) C
\multirow{<行数>}{<宽度>}{<内容>}:内容达到指定宽度后自动换行
. T2 F! B) C5 s- N1 R2 f7 i\multirow{<行数>}*{<内容>}:单元格的宽度即为输入内容的宽度
( Q! r7 n7 O8 ]; d
& Y. h" v8 ^; ~* }6 B基础模板:; L d+ V/ x& `- R2 n& s( }# `# ~
%导言区 \usepackage{multirow}
# z% \" s; ~) D/ j- P \begin{tabular}{ | c | r | r | }
% Y; ~# R" ?4 t7 y# r \hline9 q. v' y& v: H+ z$ g
\multirow{2}*{姓名}&' ]0 Q: z% u. ]( P$ Q( R
\multicolumn{2}{ c | }{成绩} \\
1 g; u8 j4 c. n& T) R/ P \cline {2-3}
. I3 P v5 U" h7 V+ p. } & 语文 & 数学 \\ \hline9 ]+ B! e8 Y. R% A
阿汪 & 93 & 97 \\ \hline! F4 T; L ^: u l
%阿汪先生的博客 x; u0 b6 }6 i; w! U) i
\end{tabular}
+ O- }( l) g: T9 q1 \- c- A: S# ]$ P% l' r+ [) d" h: y4 c6 v" }# l
四、特殊表格; Q7 p& W( Z. w9 r$ C) Z7 D
1、定宽表格—tabularx7 J1 [) T; }- z# q" d) O( o! l
(1)注意点:
) {) B2 d* Q+ } tabularx宏包提供tabularx环境5 N7 I1 N# C1 |8 y; y1 w6 t
X为列格式说明符(列宽自动延伸),单元格内部默认左对齐,使其居中需要array宏包支持。* P$ }+ d4 [+ P3 ~0 i- `: `
# R* |2 n+ f$ V% x2 L
(2)使用示例:; H* q* R2 Z# L+ Z. Z; P! x
%导言区 \usepackage{tabularx}
! W0 k* I, q, G, u5 A* T. [ \begin{tabularx}{400}{ | c | X | X | X | X | X |}1 T) N* L& M5 b2 l2 W+ S4 b! _
\hline
, [+ s5 H+ E$ U7 ` 数字 & 1 & 2 & 3 & 4 & 5 \\ \hline
1 d) z* s8 c+ s5 h! [& _ 汉字 & 一 & 二 & 三 & 四 & 五 \\ \hline1 T1 i1 g7 |* a! N: v h
%阿汪先生的博客
0 F2 F9 X$ C& |7 E; C( H \end{tabularx}
% s# t* K8 n4 x ) d+ M9 z* j: _! z8 {/ K6 s
2、三线式表格—booktabs: ]/ ~# m- {$ S; k* c! e
(1)booktabs提供了如下命令:& N/ @9 y% c: D, Y$ R8 W$ k+ H
\toprule ,画表格顶部粗线。+ }! `1 h q. a" K& P' B- O
\midrule,画表格中部粗线。/ G5 l' a$ k$ t! C8 v
\bottomrule,画表格底部细线。
1 y2 \' ^3 R+ \" M* }0 g7 U \cmidrule 与 \cline命令相似。
( u3 R H4 `# _) \% O0 q! ]. c
3 D7 D% _9 G2 S! H/ Y# B(2)使用示例:7 ]& A) \7 j1 k& y$ P0 B; f
%导言区 \usepackage {booktabs}7 r2 J! \# Y, ~8 r0 `
\begin {tabular}{c c c}! W! m1 T8 G; a! ]( q. K3 X- Y* \
\toprule
; p( E" ~% p2 v, Y 姓名 & 语文 & 数学 \\ \midrule
& x/ K# i3 ^) S) z! F* \# s& V 阿汪 & 93 &97 \\ \cmidrule {2-3}+ K; }! ~3 ~3 P; H$ v
阿喵 & 98 &92 \\
# m: @ S) L) X4 f \bottomrule
/ Z( m0 L- I, `4 x/ g0 _ %阿汪先生的博客+ r0 `% Y% c4 I& g: L: ~
\end{tabular}% f: Q# K7 @1 [, Q' o! U1 }
% @) S8 m4 P. M% K五、常用表格参数的设定& z( z0 ~& X; L# n( E8 F1 P
1、表格浮动环境
0 c( Y6 Z* r; p, S控制表格(浮动)在本页中的显示位置需要table环境。4 S/ c* }$ i" F' W, G
位置参数有htbp四种:here 、top 、bottom 、float page。
1 f6 \- s! `( x6 J& y8 n. Btable环境中可以通过 \caption 命令表格的标题。
3 ]/ n& J2 Q' K* j- V; k1 L0 j0 `2 y% h
(1)位置参数htbp释义:. W# D9 E* ]& S* \8 Q
here:在输入表格的位置排版
# k( h" H t* c$ F0 h* M1 X1 t" qtop:在输入页面的顶部排版7 r) r# r. b" X6 e/ W
bottom:在输入页面的底部排版
; @, S0 |$ n1 x# K8 {8 g& D& j" D' D; lfloat page:在单独的浮动页面排版
. E8 T8 B V8 s0 u6 z( _2 b6 ^7 R" o(2)使用模板:$ m. [ L0 B( v! X* r8 D
\renewcommand\tablename{表}
% J; Y2 u5 Q6 }% k1 N8 l9 } \begin {table}[htbp]9 z4 a+ L1 ~9 v! N4 [/ ?
\centering \caption{成绩一览表}$ G: M' B, C" c( c. N& u
\begin {tabular}{c c c}- F, M) s- F; E5 p
\toprule ' f: L5 N4 \/ T1 L( H4 y
姓名 & 语文 & 数学 \\ \midrule+ x2 n, [1 Z6 j. `3 t# T* T# p
阿汪 & 93 &97 \\ \cmidrule {2-3}
; d% L8 z. U+ Q4 U' M 阿喵 & 98 &92 \\
& z8 w( g8 G& d" Z* {7 B \bottomrule5 g( F! w1 n' ]- @' t
\end{tabular}
# E2 Z7 p7 U9 R5 c- F8 Y, B %阿汪先生的博客
2 B& T m i2 C1 o; r \end {table} ' V, r* z% m3 |' A+ U0 C
5 Z& i5 u2 K: T, i5 e" w
2、功能强大的tabu宏包4 J% Y* K* H$ w! ^: [4 K" |) ^; Y9 r
(1)tabu宏包提供的基本表格环境
* ~- `! h4 t/ Z& N' o\begin{tabu}[<垂直对齐方式>]{<tabular列格式说明>}
' H# ?( ` J' k7 ]9 u0 ?- x* p\begin{tabu} to <尺寸>[<垂直对齐方式>]{<tabularX列格式说明>}
2 c" E* a3 y5 P: f$ P b l/ r\begin{tabu} spread <尺寸>[<垂直对齐方式>]{<tabularX列格式说明>}
' E+ Q; `1 ?, p7 Y& T, 其中**spread <尺寸>**表示:在表格的自然宽度下再增加一个<尺寸>。6 }. \5 _, n# X" H5 S3 I
(2)画线格式; _+ ~3 h- d# u" [( Z$ ]
tabu环境中的画线命令:竖线|有一个可选项,可用来设置表格竖线的宽度。( h" y1 o3 J4 s/ Z! s! k/ m$ z
\begin{tabu}{|[2pt]c|c|[2pt]}
8 U# }/ Q( Y; R3 _5 B \tabucline[<尺寸>]{-}用来画横线,<尺寸>设置横线厚度,9 J' R% Q! ~' a f% v: A3 Q
{-}指从本行起到本行末尾画一条横线,# ]+ R( i0 O$ @% a. Z
{2-}指从第二个单元格开始画线至行尾。7 c0 x( W( O& Q. `6 m
+ s! Y8 }8 r0 ~* \- L* u(3)单独设置一行的格式! l. J1 y2 q# J+ \& g0 B- |. E( n
\rowfont[<对齐方式>]{<字体格式>} 可以设置一行单元格字体的格式。) X9 t3 Y# @" `& Y7 ?
使用示例:
9 D8 v$ a9 B" z7 l) f# f2 A
# Z4 r9 [# Z2 T ]* G0 d\begin{tabu}{|X|X|}$ Z# G. J+ P# r0 P r2 E
\tabucline- %“-”表示无厚度等参数# t1 g4 l. O% w; v$ q1 @/ d+ |
\rowfont[c]{\bfseries} This & is \\ \tabucline-& h8 e, @# K4 {' \# O+ V1 I' k
for & everyone \\ \tabucline[2pt]-. A6 M* o$ f, [: v- Z
\rowfont [r]{\itshape} Mr & Wang \\ \tabucline-
% w6 \ r2 L8 J1 Z# @* C %阿汪先生的博客
$ d4 x* C* y) y2 J- s\end{tabu} ; b* Z& m- }; N3 J" f& L3 U" U
# j4 {$ Z- A# g4 K5 y7 r(4)其他操作
1 @# w6 |: P9 G; V8 O在tabu环境中合并与tabular环境不一样,前\extrarowsep后要在\end{tabu}之前添加命令 \tabuphantomline。* _" g. G0 _% r2 ^7 d7 k
\extrarowsep可以在每行垂直方向上添加额外空白,得到相同的行高。; k2 q4 j* V1 ]3 Y6 n9 y4 ^$ C/ Z2 g
使用示例:+ M9 X7 s H7 ~3 l+ p4 q$ [
\begin{tabu}{| X | X |} \hline
- W! o5 K! H* K; K; q' d+ J\multicolumn 2 {|c|}{Hello}&World \\ \hline( l7 h1 T( N+ w# l
\tabuphantomline %阿汪先生的博客5 H3 `3 d2 P5 l
\end{tabu} %表格中不能有空行$ A7 Y+ G: x" i$ T3 ^7 @. N* d
i6 U" o9 Y! l3 f————————————————
1 {2 J, x% a3 x& r版权声明:本文为CSDN博主「阿汪先生」的原创文章。' C$ m6 d8 E/ t# X; N
原文链接:https://blog.csdn.net/qq_43499622/article/details/96894437$ ~, p6 f) [( u" u/ o, I3 I
|
zan
|