使用 \pagebreak[3] 防止出现孤行

使用 \pagebreak[3] 防止出现孤行

而不是使用像\widowpenalty讨论的那样的 全局命令此主题,我希望能够使用 本地控制孤行\pagebreak[3]。由于 3 选项是强制分页的最强建议,因此似乎可以合理地预期,如果\pagebreak[3]出现在本应是页面最后一行的行之前,则建议应该足够强烈,从而导致分页。但事实并非如此,正如 MWE 所示。输出不受分页建议的影响。有没有办法自定义分页选项,以便\pagebreak[3]当且仅当它下面的行是孤行时才分页?

\documentclass[11pt]{amsart}%
\usepackage{lipsum}
\parindent=0 pt
\parskip=12 pt 
\begin{document}
\lipsum[1-4]

word
\begin{enumerate}
    \item
    \pagebreak[3]
    \underline{header}
    \begin{enumerate}
        \item \lipsum[1]
    \end{enumerate}
\end{enumerate}
\end{document}

答案1

例如,你需要添加一些弹力胶

\documentclass[11pt]{amsart}%
\usepackage{lipsum}
\parindent=0 pt
\parskip=12 pt 
\begin{document}
\lipsum[1-4]

word
\vfill\pagebreak[3]
\begin{enumerate}
    \item
    \underline{header}
    \begin{enumerate}
        \item \lipsum[1]
    \end{enumerate}
\end{enumerate}
\end{document}

如果不添加额外的拉伸,因为您已经删除了所有拉伸\parskip,并且页面上没有显示环境,那么没有低于 10000 的惩罚会允许中断,因为在没有拉伸粘合来填充空间的情况下将页面缩短会导致页面不满,最大不良率为 10000

实际上,您可能想要添加一个惩罚/粘合组合,该组合仅在有分页符时添加粘合,但细节取决于您想要如何添加控件。

如果允许手动控制,最简单的事情就是\newpage在想要分页的地方使用强制分页符。

相关内容