如何获取章节和文本之间的间距?

如何获取章节和文本之间的间距?

book我在这个例子中使用了 documentclass 。

\documentclass{book}
\begin{document}
\chapter*{Test}
Lorem ipsum dolor sit amet...
\vspace{3cm}
Lorem ipsum dolor sit amet...
\end{document}

现在我想知道章节标题和文本第一行之间的距离。

上述示例的输出

两行虚拟文本之间的间距 (b) 应与章节标题和第一行之间的间距 (a) 相同。可能有一个默认长度,我可以使用,而不是手动设置的 3cm。

答案1

使用\vspace{40pt}而不是\vspace{3cm}应该会给你想要的结果:

在此处输入图片描述

你可以通过查找makeschapterhead文件 中的 定义来找到这个长度book.cls。在那里你可以找到以下几行:

def\@makeschapterhead#1{%
  \vspace*{50\p@}%
  {\parindent \z@ \raggedright
    \normalfont
    \interlinepenalty\@M
    \Huge \bfseries  #1\par\nobreak
    \vskip 40\p@
  }}

在这种情况下,重要的部分是\vskip 40\p@.\p@代表1pt(有关解释请参见此处:https://tex.stackexchange.com/a/38666/134144),以便我们可以\vspace{40pt}在文档中使用来获得相同的距离。

答案2

请在您的序言部分(即之前\begin{document})添加以下宏

\makeatletter
\def\@makeschapterhead#1{%
  \vspace*{50\p@}%
  {\parindent \z@ \raggedright
    \normalfont
    \interlinepenalty\@M
    \Huge \bfseries  #1\par\nobreak
  }\vskip3cm}
  \makeatother

相关内容