我抱怨的不是警告信息,而是缺少警告信息。MWE:
\documentclass{minimal}
\usepackage{lipsum}
\begin{document}
It was a dark and stormy night.\par
\newpage
% The following lorem ipsum will visually be clipped to one page.
% But the entire text is written into the PDF, mostly hidden.
\begin{minipage}[t][.8\textheight][t]{\textwidth}
First: \lipsum{}\par
Second: \lipsum{}\par
Third: \lipsum{}\par
\end{minipage}
\newpage
And so to bed.\par
\end{document}
上面的文本太多,无法适应 minipage 环境,无法继续到下一页。就我而言,这是理想的行为,因为我正在尝试进行垂直剪辑以保持在一页上。
将 minipage 高度设置为小于完整文本块高度不会在 minipage 末尾进行剪辑。这令人惊讶,但在这里可以接受。它确实在页面 MediaBox 的最底部进行剪辑。但是,日志文件中没有出现任何警告消息!我预计会出现 Overfull vbox 警告。
我知道所有文本都已写入 PDF,因为当 PDF 解压并在十六进制编辑器中打开时,我可以看到所有内容。这意味着存在不可打印的文本,这会导致 PDF 在标准合规性审查时被拒绝。
因此,我的问题是:对于上述情况,如何至少生成一个日志文件 Overfull vbox 警告消息?或者日志文件中已经有一些内容,但我不知道它是什么意思?
答案1
这是“设计使然”,minipage 和 parbox 的垂直尺寸选项与 的水平尺寸选项类似(并且共享代码)\makebox
。
\makebox[0pt][l]{...}
隐藏内容的大小并使其悄悄覆盖周围的材料。 \parbox
与[t]
内部对齐相同。
如果你使用s
,则会收到警告
\begin{minipage}[t][.8\textheight][s]{\textwidth}
日志:
Overfull \vbox (1188.41469pt too high) detected at line 12
但s
你有责任添加可拉伸胶水以达到指定尺寸。如果你添加的胶水会拉伸但不会收缩,你会收到材料过多的警告,但不会收到材料过少的警告。