我认为环境选项p
是figure
必要的(如果您不希望大浮动元素占据几乎整个页面并放置在文档末尾,后面是较小的浮动元素,否则这些浮动元素很容易与文本混合),但其默认行为并不令人满意。如以下 MWE 所示(但可以举出许多其他示例),使用选项p
(figure
左侧图像)时,第二个图形最终会出现在仅浮动的页面上,而如果没有选项p
(右侧图像),第二个图形(在我看来是正确的)会与文本混合。
\documentclass{article}
\usepackage{mwe}
\begin{document}
\lipsum
\begin{figure}[htbp]
\centering
\includegraphics[width=.8\textwidth]{example-image-1x1}
\caption{A figure caption.}
\end{figure}
\begin{figure}[htbp]
\centering
\includegraphics[width=.8\textwidth]{example-image-1x1}
\caption{A figure caption.}
\end{figure}
\lipsum
\end{document}
是否有可能调整使用浮动页面,以便仅在需要时使用它们真的需要吗?我认为触发使用浮动页面的标准应该是这样的“仅当可用文本高度的 85% 以上(或大约)被填满时才使用仅浮动页面”。
提前感谢任何线索。
PS,我知道p
只能在“需要时”使用该选项,但如果数十个文档中的每个文档都有数十张图像,那么您真的不想检查每个图像中的选项p
。
答案1
你所建议的逻辑或多或少就是 latex 所做的,但是article
class 有
\renewcommand\floatpagefraction{.5}
因此截止点是 50% 而不是 85%,但是你可以将其重新定义为 0.85
但请注意,文章还
\renewcommand\topfraction{.7}
因此,如果你将其设为\floatpagefraction
0.85 而不做任何改变,\topfraction
那么大小为文本高度 75% 的浮点数对于你的新浮动页面逻辑来说就太小了,但对于放置在文本页面上来说又太大了,因此不允许它在任何地方出现,并且转到文档末尾\clearpage
,带走所有后续数字,