我发现子图和顶部边距之间存在难看的间隙。我真的很困惑,因为当只有一个图时,它对齐得很好。我怎样才能将子图与顶部边距对齐?
我正在使用 koma-script 书,但是当我换成书时问题仍然存在。
\documentclass[11pt,english,british]{scrbook}
\usepackage{mathptmx}
\usepackage[showframe, paperwidth=17cm,paperheight=23cm]{geometry}
\usepackage[draft]{graphicx}
\usepackage{subfig}
\usepackage{lipsum}
\geometry{verbose,tmargin=2.2cm,bmargin=2.5cm,lmargin=2.1cm,rmargin=1.3cm,footskip=1cm}
\begin{document}
\lipsum
\begin{figure}
\centering{}\rule{0.5\textwidth}{0.5\textwidth}%
\caption{Single figure nicely aligned}%
\end{figure}
\lipsum[5]
\begin{figure}
\centering%
\subfloat[First subfigure]{\rule{0.49\textwidth}{5cm}}%
\hfill%
\subfloat[Second subfigure]{\rule{0.49\textwidth}{5cm}}%
\caption{Group of figures with ugly gap on top}%
\end{figure}
\end{document}
答案1
这是由 故意完成的subfig
,它使用几个参数在子浮点数的行之间添加垂直空间。
在您希望空间消失的地方使用\captionsetup{farskip=0pt}
。请注意,我已将代码缩减为 MWE,请重新添加您需要的包和设置。
\documentclass[11pt]{scrbook}
\usepackage[pass,showframe]{geometry}
\usepackage{subfig}
\usepackage{lipsum}
\begin{document}
\lipsum
\begin{figure}[htp]
\centering{}\rule{0.5\textwidth}{0.5\textwidth}%
\caption{Single figure nicely aligned}%
\end{figure}
\lipsum[5]
\begin{figure}[tp]
\captionsetup{farskip=0pt}% <--- no gap at the top
\centering
\subfloat[First subfigure]{\rule{.49\textwidth}{5cm}}%
\hfill
\subfloat[Second subfigure]{\rule{.49\textwidth}{5cm}}%
\caption{Group of figures with ugly gap on top}
\end{figure}
\lipsum
\end{document}