LaTeX 之浮动体标题样式

简介

Caption 宏包中的一些参数说明及案例分析,用于自定义设置浮动体中标题的样式 o (^▽^) o

  1. 修改全篇浮动体标题格式(包括图片,表格等)
1
2
3
4
5
% 导言区
\usepackage[font=small,labelfont=bf]{caption}
% 下面命令与之等价
\usepackage{caption}
\captionsetup{font=small,labelfont=bf}
  1. 单独对浮动体的图片或表格环境中标题的设置
1
2
3
4
% 导言区
\usepackage{caption}
\captionsetup[figure]{font=small,labelfont=bf}
\captionsetup[table]{font=small,labelfont=bf}

案例 1:加粗标题的图标签

1
2
3
4
5
6
7
8
9
10
11
12
13
\documentclass{ctexart}
\usepackage{graphicx}
\usepackage{caption}
\captionsetup{
labelfont=bf%设置图片标题的编号为加粗
}
\captionsetup[figure]{skip=3pt}
\begin{document}
\begin{figure}
\includegraphics[width=4in]{example-image}
\caption{这个图片标题的图标会加粗}
\end{figure}
\end{document}

01-将图片标题编号加粗.png

实际上,使用 caption 命令不一定真的需要加入图片或者表格,只需要将其应用在浮动体环境当中即可

1
2
3
4
5
6
7
8
9
10
11
12
\documentclass{ctexart}
\usepackage{graphicx}
\usepackage{caption}
\captionsetup{
labelfont=bf%设置图片标题的编号为加粗
}
\captionsetup[figure]{skip=3pt}
\begin{document}
\begin{figure}
\caption{这个图片标题的图标会加粗}
\end{figure}
\end{document}

01-只需将caption插入浮动环境中即可.png

案例 2:设置标题与图片、表格之间的间距

1
2
3
4
%语法
\captionsetup[float type]{options}
%举例
\captionsetup[figure]{skip=3pt} %设置图片标题与图片之间的间距为3pt

对于 Latex 标准的 article、book、report 等文档,默认的 skip 值为 10pt

1
2
3
4
5
6
7
8
9
10
11
12
13
\documentclass{ctexart}
\usepackage{graphicx}
\usepackage{caption}
\captionsetup[figure]{skip=0pt}
\begin{document}

\begin{figure}
\centering
\includegraphics[width=2in]{example-image-A}
\caption{设置标题与图片间的间距为0}
\end{figure}

\end{document}

03-设置标题与图片之间的间距为0.png

案例 3:更多的标题样式设置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
\documentclass[11pt]{ctexart}
\usepackage{graphicx}
\usepackage{caption}
\captionsetup[figure]{
name=Figure,
listformat=empty, %和List of Figures/Table相关
justification=justified, %即两端对齐(默认)
labelsep=quad, %标题编号与标题之间的分隔符
position=above, %不一定能够设定标题与图片相对之间的位置
skip=3pt, %图片标题与图片之间的距离
width=4in, %图片标题的宽度(这里设置为了和图片一样宽)
labelfont={huge}, %图片标题编号的字号
font={small} %图片标题的字号
}
\begin{document}
\begin{figure}
\centering
\includegraphics[width=4in]{example-image-duck}
\caption{这是一个很长很长很长很很长很长很长长很长很长图片标题}
\end{figure}
\end{document}

02-标题样式设置大汇总.png

参数说明

labelsep

语法

1
labelsep=〈label separator name〉

对应值有

格式 说明
default 同 colon
none 无间隔
colon 英文分号
period 英文句点
space 空格
quad 一个 em 的间隔
newline 标题另起一行
endash 英文 dash 连接符

Justification

语法

1
justification=〈justification name〉

对应的值有

说明
justified 两端对齐,也就是正文默认对齐方式
centering 居中对齐
raggedright 左对齐
raggedleft 右对齐
Raggedright ……

Font

语法

1
2
3
font={font options}
labelfont={font options}
textfont={font options}

对应的 font options

说明
small Small size
normalsize normalsize size
large Large size
it Italic shape
up Upright shape
bf Bold series
rm Roman family
sf Sans Serif family
tt Typewriter family
stretch=amount \setstretch{amount}
color=colour color{colour}

标题宽度

语法

1
2
3
margin=amount %同时设置左右外边距
margin={left amount,right amount} %分别设置左右外边距
witdh=amount %设置标题的宽度

03-图片标题宽度.png

skip

语法

1
skip=amount

position

1
2
3
position=top or position=above
position=bottom or position=below
position=auto(which is the default setting)

请注意:Caption 官方文档中对于该参数的说明

Please note that position=top does NOT mean that the caption is actually placed at the top of the figure or table.
the caption package tries its best to determine the actual position of the caption on its own. Please note that while this is successfully in most cases, it could give wrong results under rare circumstances.

参考资料