我目前正在处理一个文档,其中有很多 badbox,不幸的是,除了文件之外,我没有得到有关 badbox 出现在哪里的任何信息。我如何才能有效地找到这些 badbox?
这是 Latex 给我的输出:
Overfull \vbox (19.03992pt too high) has occurred while \output is active []
Overfull \hbox (27.75592pt too wide) has occurred while \output is active
[]|
[]
Overfull \vbox (19.03992pt too high) has occurred while \output is active []
Overfull \hbox (27.75592pt too wide) has occurred while \output is active
[]|
[]
Overfull \vbox (19.03992pt too high) has occurred while \output is active []
Overfull \hbox (27.75592pt too wide) has occurred while \output is active
[]|
[]
调试该问题的正确方法是什么?
我在 Windows 上使用 MikTeX。
编辑:
这项工作没有任何警告:
\usepackage[
headtopline,plainheadtopline,
headsepline,plainheadsepline,
footsepline,plainfootsepline,
footbotline,plainfootbotline,
markcase=ignoreuppercase
]{scrlayer-scrpage}
这会产生警告:
\usepackage[
headtopline=:textwithmarginpar,plainheadtopline,
headsepline=:textwithmarginpar,plainheadsepline,
footsepline=:textwithmarginpar,plainfootsepline,
footbotline=:textwithmarginpar,plainfootbotline,
markcase=ignoreuppercase
]{scrlayer-scrpage}
BR帕特里克
答案1
使用声明
\showboxdepth=3 \showboxbreadth=30
警告信息将显示溢出框中的(部分)文本,这有助于诊断问题。
“当 \output 处于活动状态时”出现过满的垂直框可能意味着页面无法被拆分并延伸到底部边距,或者可能是页面布局上的其他问题,例如 \headheight 设置得太小。(仅限 \headheight:奇怪的是没有基于 \footheight 的限制。)尝试
\addtolength\headheight{28pt}
过满的 hbox 也可能来自标头设置。我不太熟悉 koma-script 规范格式,但headtopline=:textwithmarginpar,plainheadtopline,
看起来很可疑。嗯……“但是,该包的界面几乎太灵活了,因此普通用户不容易理解。”所以我就此打住,只能说我在 koma 文档中找不到“=:”——它有 565 页!
好的,我没有放弃,但看起来你指定了文本的整个宽度(文本加边距加分隔符)作为抵消到标题行。这太荒谬了,可能就是导致水平框溢出的原因;然后它又分成多行,导致垂直框溢出。