换行之间的距离不同

换行之间的距离不同

我想知道,为什么换行符之间的间隙不同,这取决于由 发起的换行符\\[5pt]是在花括号内还是花括号外。

这有什么关系?难道不应该是一样的吗?

梅威瑟:

\documentclass{scrartcl}
\textwidth=6cm
\begin{document}

{\raggedleft{02.2016 -- 09.2018}\par}
{\raggedright Testline to see the gap \\[5pt]}

{\raggedleft{02.2016 -- 09.2018}\par} 
{\raggedright Testline to see the gap} \\[5pt]

{\raggedleft{02.2016 -- 09.2018}\par} 
{\raggedright Testline to see the gap} 

\end{document}

答案1

中间的情况是错误的,看起来像垂直空格的东西实际上是段落的第二行(空行),空行就是 TeX 向你尖叫的原因

Underfull \hbox (badness 10000) in paragraph at lines 9--10

10000 是不良程度的最大值,所以这说明输出已经糟糕到极致。由于这是一行文本,而不是垂直空间,因此如果分页符发生在第一行之后,它就不会被丢弃在页面开头。

第一个\\是在范围内,\raggedright这意味着由于技术原因\\是,所以在段落末尾还不算太糟糕(尽管仍然是糟糕的标记\par\\[5pt]\par\vspace{5pt}

但第二种情况是“正常”的\\,因此这不会结束段落,只是在现有段落中强制换行,然后是一行空文本。您可以通过替换看到这一点,\\[5pt]垂直\\[5pt]zzzzz 间距不会改变,但段落的第二行将不再为空。

请注意,\raggedleft不接受参数,因此

\raggedleft{02.2016 -- 09.2018}

是相同的

\raggedleft 02.2016 -- 09.2018

内部支架在这里不起任何作用。

相反地

{\raggedright Testline to see the gap} 

段落在之后结束,}此时\raggedright已经超出范围,因此这不会导致右侧文本参差不齐,它是一个两端对齐的段落(但这里不清楚,因为它只有一行),的唯一效果\raggedright是抑制段落缩进。

在此处输入图片描述

\documentclass{scrartcl}

\begin{document}

\noindent
\begin{minipage}[t]{6cm}
{\raggedleft{02.2016 -- 09.2018}\par}
{\raggedright Testline to see the gap \\[5pt]}

{\raggedleft{02.2016 -- 09.2018}\par} 
{\raggedright Testline to see the gap} \\[5pt]

{\raggedleft{02.2016 -- 09.2018}\par} 
{\raggedright Testline to see the gap} 
\end{minipage}\quad\vrule\quad
\begin{minipage}[t]{6cm}
{\raggedleft{02.2016 -- 09.2018}\par}
{\raggedright Testline to see the gap \\[5pt]}

{\raggedleft{02.2016 -- 09.2018}\par} 
{\raggedright Testline to see the gap} \\[5pt]zzz

{\raggedleft{02.2016 -- 09.2018}\par} 
{\raggedright Testline to see the gap} 
\end{minipage}

\end{document}

相关内容