我有两个子图集合(使用该subfig
包生成),Latex 决定将它们放在相对的页面上。我想将它们对齐到页面顶部,但出于某种原因,右页的图形顶部总是有一个额外的空白(请注意屏幕截图中红线的区别)。我已经检查过图像,它们被正确裁剪了。
zref-savepos
我尝试按照说明保存并调整图形的位置这里但它似乎什么也没做。如果可能的话,我想将它们与红线对齐。我还希望对 Latex 为什么需要产生额外的空白做一个小小的解释。
编辑:根据要求我添加了一个 MWE:
\documentclass[
b5paper,
10pt,
chapterprefix=on,
appendixprefix=on,
numbers=noenddot,
]{scrbook}
\usepackage{scrpage2}
\usepackage{geometry}
\usepackage{lipsum}
\usepackage{subfig}
\usepackage[demo]{graphicx}
\begin{document}
\chapter{A Chapter}
\lipsum[1-2]
\begin{figure}%[t]
\centering
%\zsaveposy{figa}%
%\ifnum\zposy{figb}>\zposy{figa} %
% \vspace{-\dimexpr\zposy{figb}sp-\zposy{figa}sp}%
%\fi
\subfloat[fig1]{
\includegraphics[width=4.5in, height=1.13in]{fig1}
}\\
\subfloat[fig2]{
\includegraphics[width=2.2in, height=0.82in]{fig2}
}
\subfloat[fig3]{
\includegraphics[width=2.2in, height=0.82in]{fig3}
}
\caption{First caption.}
%\ifnum\zposy{figb}>\zposy{figa} %
% \vspace{\dimexpr\zposy{figb}sp-\zposy{figa}sp}%
%\fi
%
\label{fig2a}
\end{figure}
\lipsum[1-2]
\begin{figure}[t] % This [t] is commented out in the real code
\centering
%\zsaveposy{figb}%
%\ifnum\zposy{figa}>\zposy{figb} %
% \vspace{-\dimexpr\zposy{figa}sp-\zposy{figb}sp}%
%\fi
\subfloat[fig1]{
\includegraphics[width=2.2in, height=0.82in]{fig1}
}
\subfloat[fig2]{
\includegraphics[width=2.2in, height=0.82in]{fig2}
}\\
\subfloat[fig3]{
\includegraphics[width=2.2in, height=0.82in]{fig3}
}
\subfloat[fig4]{
\includegraphics[width=2.2in, height=0.82in]{fig4}
}\\
\subfloat[fig5]{
\includegraphics[width=2.2in, height=0.82in]{fig5}
}
\caption{Second caption.}
%\ifnum\zposy{figa}>\zposy{figb} %
% \vspace{\dimexpr\zposy{figa}sp-\zposy{figb}sp}%
%\fi
%
\label{fig2b}
\end{figure}
\lipsum[1-10]
\end{document}
更新:我用一个解决方案回答了我自己的问题,以防以后有人发现它有用。我可能会尝试稍后设置赏金,看看是否有更好的解决方案。
答案1
我正在用一个不太理想的解决方案回答我自己的问题,直到出现其他答案。
目前,我发现唯一可行的方法是在命令\vspace*{-.35cm}
后手动设置\begin{figure}
。显然,这并不完美,因为对于存在此问题的每个图形,尺寸都需要进行微调,我宁愿有一个自动解决方案,或者至少有一种方法来计算 latex 产生的额外空白的尺寸。
\documentclass[
b5paper,
10pt,
chapterprefix=on,
appendixprefix=on,
numbers=noenddot,
]{scrbook}
\usepackage{scrpage2}
\usepackage{geometry}
\usepackage{lipsum}
\usepackage{subfig}
\usepackage[demo]{graphicx}
\begin{document}
\chapter{A Chapter}
\lipsum[1-2]
\begin{figure}%[t]
\centering
\subfloat[fig1]{
\includegraphics[width=4.5in, height=1.13in]{fig1}
}\\
\subfloat[fig2]{
\includegraphics[width=2.2in, height=0.82in]{fig2}
}
\subfloat[fig3]{
\includegraphics[width=2.2in, height=0.82in]{fig3}
}
\caption{First caption.}
\label{fig2a}
\end{figure}
\lipsum[1-2]
\begin{figure}[t]
\vspace*{-.35cm} % <-- FIX: manually adjust spacing
\centering
\subfloat[fig1]{
\includegraphics[width=2.2in, height=0.82in]{fig1}
}
\subfloat[fig2]{
\includegraphics[width=2.2in, height=0.82in]{fig2}
}\\
\subfloat[fig3]{
\includegraphics[width=2.2in, height=0.82in]{fig3}
}
\subfloat[fig4]{
\includegraphics[width=2.2in, height=0.82in]{fig4}
}\\
\subfloat[fig5]{
\includegraphics[width=2.2in, height=0.82in]{fig5}
}
\caption{Second caption.}
\label{fig2b}
\end{figure}
\lipsum[1-10]
\end{document}