我如何才能准确地放置分页符?

我如何才能准确地放置分页符?

我计划复制某本书的某个版本。如何让 LaTeX(特别是 LuaTeX)将分页符准确地放置在原版中的位置?

答案1

如果手动分页符应出现在段落内,则段落应以不分页的方式结束,\parfillskip以避免最后一行不齐:

\begingroup\setlength{\parfillskip}{0pt}\par\endgroup

\noindent防止新段落以缩进开始。\parskip新页面开始时,段落分隔空间将自动删除。

\flushbottom可以通过使用(全局或局部)并\break在垂直模式下使用 而不是 来防止页面不规则\newpage。后者会自动添加\vfil以填充页面。

\baselineskip还应设置和/或的拉伸组件,\parskip以使 TeX 能够拉伸页面内容到达页面底部。

\parskip可以在前言中设置,但\baselineskip每次更改字体大小时都会被覆盖。此外,内部字体大小设置命令也可以更改为自动添加拉伸组件。

例子:

\documentclass{article}
\usepackage[a5paper,showframe]{geometry}
\usepackage{microtype}

\newcommand*{\midparbreak}{%
  \begingroup
    \flushbottom
    \setlength{\parfillskip}{0pt}% end paragraph without ragged last line
    \par % end paragraph
    \break % end page
  \endgroup
  \noindent % start remaining lines of paragraph on new page
            % without paragraph indentation
}

\begin{document}
\addtolength{\baselineskip}{0pt plus 20pt}
  Lorem ipsum dolor sit amet, consectetuer
  adipiscing elit. Ut purus elit, vestibulum ut, placerat ac,
  adipiscing vitae, felis. Curabitur dictum gravida mauris. Nam arcu
  libero, nonummy eget, consectetuer id, vulputate a, magna. Donec
  vehicula augue eu neque. Pellentesque habitant morbi tristique
  senectus et netus et malesuada fames ac turpis egestas. Mauris ut
  leo. Cras viverra metus rhoncus sem. Nulla et lectus vestibulum urna
  fringilla ultrices.  Phasellus eu tellus sit amet tortor gravida
  placerat. Integer sapien est, iaculis in, pretium quis, viverra ac,
  nunc. Praesent eget sem vel leo ultrices bibendum. Aenean faucibus.
  Morbi dolor nulla, malesuada eu, pulvinar at, mollis ac, nulla.
  Curabitur auctor semper nulla. Donec varius orci eget risus. Duis
  nibh mi, congue eu, accumsan eleifend, sagittis quis, diam. Duis
\midparbreak
  eget orci sit amet orci dignissim rutrum.
\end{document}

相关内容