在一本书中,我有一些图,它们太大了,以至于它们有自己的 [p] 页。如果可能的话(例如,受下一章的限制或其他语义的限制),我更愿意将图放在偶数页(左侧)。我知道我可以强制它们在那里,但这样我就忽略了与图定位相关的所有其他规则。有没有办法让图页更喜欢偶数页?
答案1
以下文档将浮动元素定位在第 2、3、5 和 7 页
但添加所示的定义会推迟奇数页上的浮动页面选择,因此它们会被放置在第 2、4 和 6 页上
\documentclass{article}
\let\eject\relax% just in this example
\makeatletter
\def\@floatplacement{\global\@topnum\c@topnumber
% Textpage bit, global:
\global\@toproom \topfraction\@colht
\global\@botnum \c@bottomnumber
\global\@botroom \bottomfraction\@colht
\global\@colnum \c@totalnumber
% Floatpage bit, local: don't let floats on to odd numbered p pages
\@fpmin \ifodd\c@page\maxdimen\else\floatpagefraction\@colht\fi
}
\makeatother
\begin{document}
\input{story}
\begin{figure}[p]
\centering
\write300{float on page \thepage}
\rule{3cm}{12cm}
\caption{a figure}
\end{figure}
\input{story}
\begin{figure}[p]
\centering
\write300{float on page \thepage}
\rule{3cm}{12cm}
\caption{a figure}
\end{figure}
\input{story}
\begin{figure}[p]
\centering
\write300{float on page \thepage}
\rule{3cm}{4cm}
\caption{a figure}
\end{figure}
\input{story}
\begin{figure}[p]
\centering
\write300{float on page \thepage}
\rule{3cm}{8cm}
\caption{a figure}
\end{figure}
\input{story}\input{story}
\begin{figure}[p]
\centering
\write300{float on page \thepage}
\rule{3cm}{4cm}
\caption{a figure}
\end{figure}
\begin{figure}[p]
\centering
\write300{float on page \thepage}
\rule{3cm}{4cm}
\caption{a figure}
\end{figure}
\input{story}\input{story}
\end{document}