\@afterheading 的“beforeheading”对应项

\@afterheading 的“beforeheading”对应项

假设出于赎金原因(在我的情况下,因为我的文档是从 XML 转换而来的),我想手动排版所有标题。那么我可以这样做

\documentclass{memoir}

\begin{document}

{\samepage\vspace*{2\baselineskip}\centering%
Chapter 1\\
\Large The beginning of everything
\vspace*{\baselineskip}

}
\makeatletter\@afterheading\makeatother

\noindent Some text.
\end{document}

出色地,\@afterheading很好地确保了在任何情况下标题后面有一个分页符。但我徒劳地寻找\@beforeheading命令告诉 LaTeX 应该考虑分页如果 替代方法是让标题出现在页面底部附近,则标题将出现。我尝试使用\@startsection{chapter}{1}{0pt}{0pt}{0pt}{}*{},但没有看到任何效果。LaTeX 通常如何在内部做到这一点?

答案1

几乎可以肯定的是,最好生成

\section{The beginning of everything}

但否则,删除\samepage并在之前和之后添加惩罚。

{\vspace{0pt plus 3\baselineskip}%
 \pagebreak[1]%
 \vspace{2\baselineskip plus -3\baselineskip}%
  \centering
Chapter 1\\*%
\Large The beginning of everything%

\nopagebreak
\vspace*{\baselineskip}%

}

相关内容