在草稿模式下,如果文本无法换行并且延伸到页边距(超出水平盒子),LaTeX 会打印黑色标记。如果浮动元素对于页面来说太高,并且延伸到页脚区域,是否可以有类似的视觉指示?
答案1
LaTeX 在日志中发出警告,您可以让它同时打印一些内容:
\documentclass{article}
\usepackage{color}
\makeatletter
\def \@largefloatcheck{%
\ifdim \ht\@currbox>\textheight
\@tempdima -\textheight
\advance \@tempdima \ht\@currbox
\@latex@warning {Float too large for page by \the\@tempdima}%
\global\setbox\@currbox\hbox{%
\box\@currbox
{\color{red}\smash{\llap{FLOAT TOO BIG}}\vrule width 5pt}}%
\ht\@currbox \textheight
\fi
}
\makeatother
\begin{document}
\begin{figure}
\rule{2cm}{19cm}
\caption{a figure}
\end{figure}
\end{document}
请注意,\smash
此处添加的内容是为了修复注释中提出的问题,即原始代码可能会循环处理某些字体。如果没有,\smash
我假设大写文本FLOAT TOO BIG
将没有深度,但某些字体的字体度量确实会为大写字母提供非零深度。
答案2
溢出规则仅适用于水平框。
如果主体区域周围有一个方框,那么页脚区域的违规行为也会更容易被看到。geometry
如果使用 option ,则包会用方框标记页面布局showframe
。如果geometry
没有使用其他方法,则 optionpass
会通知geometry
不要触碰布局参数:
\usepackage[pass, showframe]{geometry}