标题内的行距不一致

标题内的行距不一致

我想为 Frontpage 添加标题并手动控制换行符。当我添加\\以添加新行时,第一行和第二行之间会出现额外的空格,但第二行和最后一行似乎没有问题。为什么会发生这种情况?我该如何修复?

\documentclass[12pt,twoside,a4paper]{book}
\usepackage{setspace}
\begin{document}
\begin{center}
  \onehalfspacing
  \thispagestyle{empty}

\textsf{\LARGE{what is going on\\why this linespacing?\\why vertical space is so screwed?}}

\end{center}
\end{document}

在此处输入图片描述

答案1

你问:发生了什么事,为什么是这个行距?答案在这里。

您的代码是

\textsf{\LARGE{what is going on\\why this linespacing?\\why vertical space is so screwed?}}

LaTeX 宏\textsf{parameter}打开 TeX 组,选择所需的字体和排版parameter。然后关闭 TeX 组。

LaTeX 宏\LARGE选择所需字体并将更大的值设置为\baselineskip寄存器。然后您有{打开第二个 TeX 组的,然后您有文本,然后第二个 TeX 组由关闭}。如果您删除这个不相关的括号对,结果是相同的:

\textsf{\LARGE what is going on\\why this linespacing?\\why vertical space is so screwed?}

现在,为什么要使用这种行距? LaTeX 宏在此上下文中\\运行\parTeX 基元。因此,您的示例相当于:

\textsf{\LARGE what is going on\endgraf why this linespacing?\endgraf why vertical space is so screwed?}

第一个\endgraf(即\par)创建一行段落。第二个\endgraf创建第二个一行段落,当它分发到主垂直列表时,\baselineskip由于宏的原因,寄存器的值更大\LARGE。因此,这两个段落之间的行间距更大。

接下来:打开第三段,即打开水平模式。然后确定的why vertical ...参数,宏关闭 TeX 组。这意味着返回到宏启动时有效的先前较小值。然后,标记处理器扫描上述代码后的空行,并在此处创建。这确定了第三段,并将其连接到垂直列表中的前两个段落,但现在更小,因此行间跳跃更小。\textsf\textsf\baselineskip\textsf\par\par\baselineskip

答案2

您缺少尾随\\,但有更好的方法来完成您的任务。

\documentclass[12pt,twoside,a4paper]{book}

\begin{document}

% set up the front page
\thispagestyle{empty}

%the author
\begin{center}
\sffamily\large

Dumbo

\end{center}

\addvspace{5cm}

\begin{center}
\linespread{1.25} % or \onehalfspacing if you're using setspace
\sffamily\LARGE

what is going on\\
why this linespacing?\\
why vertical space is so screwed?

\end{center}

\end{document}

在此处输入图片描述

答案3

您的代码应如下:

\documentclass[12pt,twoside,a4paper]{book}
\usepackage{setspace}
\begin{document}
\begin{center}
  \onehalfspacing
  \thispagestyle{empty}

\LARGE{
\textsf{what is going on\\why this linespacing?\\why vertical
space is so screwed?}\par}

\end{center}
\end{document}

在此处输入图片描述

相关内容