该ragged2e
包使用默认长度0pt plus 1fil
作为参数,\RaggedRightParfillskip
我测试过用该值替换该值,0pt plus \textwidth
并且我观察到 LaTeX 有时会将单词/片段从右边缘移动到最后一行。
两个问题:
(1)我不确定为什么会这样。我觉得和\textwidth
本质1fil
上是相同的测量值,因为它们都完全填满了一行。 (2)长度和
之间有区别吗?我很好奇,一般来说,使用大于当前行长的拉伸长度是否会出现错误/故障(例如,在 parbox、minipage、分项/枚举列表等中较小的行长)。\RaggedRightParfillskip
0pt plus \textwidth
0pt plus (any length greater than \textwidth)
0pt plus 2\textwidth
答案1
plus \textwidth
和之间有很大区别plus 1fil
。
第二个是无限的,因此线上的任何有限拉伸都将被忽略,特别是单词间的空白将被设置为正常大小。
\parfillskip
第一个是有限的,因此会与行上所有其他有限的拉伸一起累积,并且所有这些空间都会按比例拉伸。因此,如果需要大于零,最后一行的单词间空间将被拉伸
\documentclass{article}
\begin{document}
\parfillskip=0pt plus 1fil
1
One two three four five. One two three four five.
One two three four five. One two three four five.
One two three four five. One two three four fivexxxxx.
a a a a a a a.
\parfillskip=0pt plus \textwidth
2
One two three four five. One two three four five.
One two three four five. One two three four five.
One two three four five. One two three four fivexxxxx.
a a a a a a a.
\end{document}
你的第二个问题的答案基本相同。如果你使用2\textwidth
拉伸,单词间空间占总有限拉伸的比例会减少,因此与使用相比,单词间空间的拉伸会更少,行尾空间的拉伸会更多1\textwidth