LaTeX参考文献模板 BST语法

需求

调整图标题与图的间距

解决方式

利用宏包caption,使用\captionsetup,代码如下

1
2
3
4
5
6
7
\usepackage{caption}
% 使用captionsetup设置标题属性
\captionsetup[figure]{ % 适用于图表题
position=bottom,
belowskip=3bp, % 控制标题下方间距
aboveskip=3bp % 控制标题上方间距
}

附录

图表与文本的间距

出处:18.1 图形的间距 (ctex.org)

18.1 中给出的长度控制着两幅图形之间或图形与正文之间 的间距。与其它的 LATEX 长度不同的是,这三个都是弹性长度,这就使得 它们可以缩短或拉长来更好的排版页面。这些长度可用 \setlength 命令 来设定。例如:

1
\setlength{\floatsep}{10pt plus 3pt minus 2pt}

将正常的 \floatsep 的值设定为 10pt。并且在需要时可缩短到 8pt 或拉长到 13pt。
|tex命令|解释|
|—|—|
|\floatsep|出现在页面的顶部或底部的浮动对象之间的垂直距离。 缺省为 12pt plus 2pt minus 2pt。|
|\textfloatsep|出现在页面的顶部或底部的浮动对象与文本之间的垂直距离。 缺省为 20pt plus 2pt minus 4pt。|
|\intextsep|出现在页面中间的浮动对象(如使用了 h 选项 的浮动对象)与上下方文本之间的垂直距离。 缺省为 12pt plus 2pt minus 2pt。|

18.1 中给出的长度不会影响浮动页上各浮动对象之间 的距离。它们由表 18.2 中给出的长度控制。单位 fil 允许无限伸长,就像由 \vfill 产生的垂直距离 一样。当在一段距离中出现多个 fil 时,它们将按比例 充满这段距离。

tex命令 解释
\@fptop 浮动页中顶部的浮动对象上方的空白。 缺省为 0pt plus 1.0fil
\@fpsep 浮动页中的浮动对象之间的距离。 缺省为 8pt plus 2.0fil
\@fpbot 浮动页中底部的浮动对象下方的空白。 缺省为 0pt plus 1.0fil

在表 18.2 中的长度名字前的 @ 表示 这是一个 LATEX 内部命令18.1。所以,所有改变这些长度的 \setlength 命令都必须放到 \makeatletter\makeatother 之间。例如:

1
2
3
\makeatletter 
\addtolength{\@fpsep}{4pt}
\makeatother

将浮动页中浮动对象之间的距离增加了 4pt。

图形与标题的间距

出处:18.3 图形与标题的间距 (ctex.org)

LATEX 假定图形的标题位于图形的下方,故而在标题上方保留了更 多的空白。因此

1
2
3
4
5
\begin{figure} 
\centering
\caption{Caption Above Graphic}
\includegraphics[width=2in]{graphic.eps}
\end{figure}

生成的图 18.1 中标题和图形非常接近。

图18.1

标题上下方的间距由长度 \abovecaptionskip 和 \belowcaptionskip (缺省分别为 10pt 与零)。可以用标准的 LATEX 命令 \setlength 和 \addtolength 来修改这些长度。 例如:

1
2
3
4
5
6
7
\begin{figure} 
\setlength{\abovecaptionskip}{0pt}
\setlength{\belowcaptionskip}{10pt}
\centering
\caption{Caption Above Graphic}
\includegraphics[width=2in]{graphic.eps}
\end{figure}

得到图 18.2。其中标题的上方没有额外的 空白,与图形之间则有 10pt 的距离。
图18.2
如果一个文档的所有浮动对象的标题都位于该对象的上方,那么可将 命令
1
2
\setlength{\abovecaptionskip}{0pt}
\setlength{\belowcaptionskip}{10pt}

放到导言区里,从而对整个文档都起作用。如果只是有一部分标题 要求位于浮动对象的上方,那么可定义如下的命令:
1
2
3
4
\newcommand{\topcaption}{% 
\setlength{\abovecaptionskip}{0pt}%
\setlength{\belowcaptionskip}{10pt}%
\caption}

在希望得到上方标题的时候可用 \topcaption{标题文本} 来代替 \caption{标题文本} 即可。

图形的放置

图形(figure)环境有一个可选参数项允许用户来指示图形有可能 被放置的位置。这一可选参数项可以是下列字母的任意组合。

  • h当前位置。 将图形放置在 正文文本中给出该图形环境的地方。如果本页所剩的页面不够, 这一参数将不起作用。
  • t顶部。 将图形放置在页面的顶部。
  • b底部。 将图形放置在页面的底部 16.1
  • p浮动页。 将图形放置在一只允许 有浮动对象的页面上。
  • 如果在图形环境中没有给出上述任一参数,则缺省为 [tbp]
  • 给出参数的顺序不会影响到最后的结果。因为在考虑这些参数时 LATEX 总是尝试以 h-t-b-p 的顺序来确定图形的位置。所以 [hb][bh] 都使 LATEX 以 h-b 的顺序来排版。
  • 给出的参数越多, LATEX 的排版结果就会越好。 [htbp], [tbp], [htp], [tp] 这些组合得到的效果不错。
  • 只给出单个的参数项极易引发问题16.2。 如果该图形不适合所指定的位置,它就会被搁置并阻碍对后面的图形 的处理。一旦这些阻塞的图形数目超过了 18 幅这一 LATEX 所能容许 的最大值,就会产生 ``Too Many Unprocessed Floats’’ 的错误(见 第 16.3 节)。

当 LATEX ”试图“ 放置一浮动图形时, 它将遵循以下规则:

  1. 图形只能置于由位置参数所确定的地点。
  2. 图形的放置不能造成超过版心的错误(overfull page)。
  3. 图形只能置于当前页或后面的页中16.3。所以图形只能 “ 向后浮动” 而 不能 “向前浮动”。
  4. 图形必须按顺序出现。这样只有当前面的图形都被放置好之后才能被放置。
    1. 只要前面有未被处理的图形,一幅图形就不会被放在当前位置。
    2. 一幅 “不可能放置” 的图形将阻碍它后面的图形的放置。直到 文件结束或达到 LATEX 的浮动限制。参见第 16.4 节。
    3. 同样地,一表格也只能在其前面的表格都被处理完后才能被放置。 不过,表格在排版时是跳过图形而单独处理的。
  5. 必须符合在第 17 章中给出的审美条件。例如,一页上的 浮动对象的数目不能超过 totalnumber。 在浮动位置选项前加上一个惊叹号(如 \begin{figure}[!ht]) 会使 LATEX 忽略应用于文本页的审美条件,试图用最严格的标准来 放置浮动图形。不过, ! 不会影响应用于浮动页的审美条件。
latex中长度单位
单位 名称 说明
mm 毫米 1 mm = 2.845 pt
pt 点 1 pt = 0.351 mm
bp 大点 1 bp = 0.353 mm > 1 pt
dd 迪多 1 dd = 0.376 mm = 1.07 pt
pc 排卡 1 pc = 4.218 mm = 12 pt
sp 定标点 65536 sp = 1 pt
cm 厘米 1 cm= 10 mm= 28.453 pt
cc 西塞罗 1 cc= 4.513 mm= 12 dd = 12.84 pt
in 英寸 1 in = 25.4 mm = 72.27 pt
ex ex 1 ex = 当前字体尺寸中 x 的高度
em em 1 em = 当前字体尺寸中 M 的宽度

参考链接:

附录

CTeX 在线文档—Contents (ctex.org)