当出现单词寡妇时自动应用 \enlargethispage{\baselineskip}

当出现单词寡妇时自动应用 \enlargethispage{\baselineskip}

有时我会经常遇到这种单词寡妇的情况,请找到右手边的页面,顶线scoundrel。我的设计策略是在底部边缘留出足够的空白,因此当这种情况发生时,代码\enlargethispage{\baselineskip}将应用于左手边的页面,以使scoundrel插槽回到原位。

当然,有争议的是,人们可以在所有实例中手动应用它,我想知道是否有一种自动的方法可以做到这一点?

我正在使用“COMA-SCRIPT”书籍的文档类别

附言:我也在\pretolerance=5000 \tolerance=1000序言中申请了,不知道他们做什么,据说这可以防止出现寡妇和孤儿的情况……

寡妇例子

答案1

如果没有例子就很难说,但如果你添加

\widowpenalty=10000

然后 TeX 会尽力避免出现寡妇。对于你的情况,容差设置可能没什么用,因为对于如此短的段落,换行的灵活性非常小。

如果您的页面中存在任何垂直拉伸(如标准类中的默认 parskip 间距),那么防止孤行可能会将最后几行拉到下一页。如果没有垂直拉伸,那么您将在上一页上看到未满的页面,在这种情况下,您可能会在输出例程中检测到这种情况,并在放大页面后将文本放回原位,但这种交互非常微妙,并且很大程度上取决于您拥有的内容,因为通常很难让事情正常运作。

相关内容