文本中使用 \\ 和 \newline 的水平对齐问题和差异

文本中使用 \\ 和 \newline 的水平对齐问题和差异

这个最小的例子展示了我所想知道的行为:

\documentclass[11pt]{book} 
\usepackage[english]{babel}
\usepackage[a4paper]{geometry}
\begin{document}
\frontmatter 
\pagestyle{plain} 
\newgeometry{left=2cm,right=2cm,top=4cm,bottom=4cm}
\begin{titlepage}
\begin{center}
\textsc{\Huge Super duper words\newline 
for whatever title it will\newline 
have in the end}

\vspace{2cm}

\textsc{\Huge Super duper words\\
for whatever title it will\\
have in the end}
\end{center}
\end{titlepage}
\end{document}

编译后为

PDF 截图

因此,使用\\不会影响水平对齐,但会导致“不正确”的行距,同时\newline弄乱对齐。

我知道

\textsc{\Huge Super duper words}

\textsc{\Huge for whatever title it will}

\textsc{\Huge have in the end}

做了正确的事情,但实际的命令是

\textsc{\Huge \phdtitle}

我无法将其分开。

答案1

我想我从来没有\newline在我的文档中使用过。我使用过很多\\(但当然从来没有用于结束段落)和几个\linebreak

有什么\newline用?我真的不知道,也不关心;我知道的是,它永远不应该在centerflushleft或环境的文本中或在、或flusright的范围内使用。\centering\raggedright\raggedleft

要在环境中设置字体属性center(例如论文标题),请使用“声明性”形式:

\begin{center}
\Huge\scshape
Super duper words\\
for whatever title it will\\
have in the end
\end{center}

注意\\而不是\newline。如果标题在宏中,请不要担心:

\begin{center}
\Huge\scshape\phdtitle
\end{center}

会做正确的事。

在第一种情况下会发生什么?该\textsc命令将其参数放在一个组中,因此段落使用准备,\Huge但当此大小声明失去效果时结束:三行段落的行距错误。请注意,\newline永远不会发出段落结束。

第二种情况有三个段落,因为\\实际上是一个段落的结束。因此,前两个段落按照\Huge特定行距排版(居中),但最后一个段落的行距错误,原因与前面相同。

相关内容