我通常会加载caption
包来修复类中表格和其标题之间的间距article
。由于我不使用caption
包的任何其他功能,我决定尝试使用专用包ftcap
来修复它。但是,当我尝试每个包时,我在页面上得到的垂直空间量略有不同。使用以下 MWE,当我使用时ftcap
,与使用时的输出相比,所有文本在页面上略微向上移动caption
。据我所知,表格和标题之间的空间在两者之间是相同的(大概是 10.0pt)。
梅威瑟:
\documentclass{article}
\usepackage{caption} % a bit less than 1mm lower
%\usepackage{ftcap} % a bit less than 1mm higher
\begin{document}
This is a paragraph.
\begin{table}
\caption{This is a caption.}
\begin{tabular}{c}
This is a table.
\end{tabular}
\end{table}
\end{document}
可以使用以下代码来更清楚地看到差异:
\documentclass{article}
\usepackage{fgruler}
\textwidth=\paperwidth
\oddsidemargin=-1in
\parindent=0pt
\usepackage{caption} % a bit less than 1mm lower
%\usepackage{ftcap} % a bit less than 1mm higher
\begin{document}
\rule{2cm}{0.1pt}
This is a paragraph.
\begin{table}
\caption{This is a caption.}
\begin{tabular}{c}
\rule{2cm}{0.1pt}
This is a table.
\end{tabular}
\end{table}
\end{document}
我尝试过查看这两个包的文档和实现,但caption
它相当复杂,所以我无法理解它。
答案1
caption
和的实现ftcap
不同。
据我所知,差异是由于caption
在标题中添加了支柱而引起的,而这并不是通过ftcap
修改\caption
命令来实现的。
让我们做三个例子。顶部细线由showframe
几何选项添加,显示字块的顶部边缘。
ftcap
没有\strut
\documentclass{article}
\usepackage[pass,showframe]{geometry}
\usepackage{ftcap} % a bit less than 1mm higher
\begin{document}
\begin{table}[htp]
\centering
\caption{This is a caption.}
Something
\end{table}
\end{document}
ftcap
和\strut
\documentclass{article}
\usepackage[pass,showframe]{geometry}
\usepackage{ftcap} % a bit less than 1mm higher
\begin{document}
\begin{table}[htp]
\centering
\caption{\strut This is a caption.}
Something
\end{table}
\end{document}
caption
\documentclass{article}
\usepackage[pass,showframe]{geometry}
\usepackage{caption} % a bit less than 1mm lower
\begin{document}
\begin{table}[htp]
\centering
\caption{This is a caption.}
Something
\end{table}
\end{document}
标题和文本之间的间距也有细微的差别。
结论
无论使用哪种包,您都不能指望不同的实现(特别是像caption
's 这样的复杂实现)产生相同的输出。