断行与页面调整

LaTeX 的断行和分页很优秀,但有时需要一点帮助:修正无法断词的词,强制或禁止换行,或者赶走孤立的行(widoworphan)。本页整理这些工具。但它们是最后手段——与其手动插入换行,通常先稍微改写文字更安全。

断词

LaTeX 会根据各语言的模式自动断词。只调整某个词时,使用 \-( discretionary hyphen:例如 man\-u\-script 只在需要时从那里断开)。若要在导言区统一指定例外,使用 \hyphenation{man-u-script ...}(用 - 标出允许断开的地方)。hyphenat 宏包提供更细控制,例如 URL、已含连字符的词,或关闭断词。断词模式按语言区分,babel 会启用合适的模式。

latex
\hyphenation{man-u-script data-base}   % 例外をプリアンブルで / exceptions in the preamble
... man\-u\-script ...                  % \- は任意ハイフン / discretionary hyphen

断行 — \\ / \linebreak / \sloppy

\\ 强制换行(用于段落和表格中),\newline 在正文中换行,\linebreak[n](n 为 0–4,4 为强制)会在保持两端对齐的同时断行,\nolinebreak[n] 则禁止断行。对于顽固溢出的段落,可用 \sloppy … \fussy(或 sloppypar 环境)包住:LaTeX 会放宽词间距而不是冲出边界——应局部使用,不要用于整篇文档。分页使用 \pagebreak[n] / \nopagebreak[n]\newpage\clearpage(同时清出浮动体)。

latex
{\sloppy この段落だけ語間を緩める。 \par}   % 局所的に / locally
\linebreak[4]   % 行分割を強制(両端揃え)/ force a justified break

Widow 与 orphan

widow 是段落最后一行单独落在页面开头orphan(club line)是段落第一行单独留在页面末尾。可通过提高惩罚值来避免:\clubpenalty(orphan)和 \widowpenalty(widow)默认都是 1000,设为 10000 可强力避免。若只修某一页,可用 \enlargethispage{\baselineskip} 让该页多容纳一行,或用 \raggedbottom 允许页面底部高度不齐(默认 \flushbottom 会伸缩以对齐高度)。

latex
\clubpenalty=10000              % オーファンを強く回避 / strongly avoid orphans
\widowpenalty=10000             % ウィドウを強く回避 / strongly avoid widows
\enlargethispage{\baselineskip} % このページを1行分高く / one line taller here