答案1
您正在告诉 TeX 将线拉伸至线宽,因此它会遵守您的命令。
让我们看一个更简单的例子(纯 TeX):
\hbox to\hsize{A\leaders\hrule\hskip 0pt plus 1em minus 0pt B C}
\noindent\the\badness
\bye
你得到
打印的值\the\badness
是最后一个排版框的坏度。事实上,终端还会显示
Underfull \hbox (badness 10000) detected at line 1
\tenrm A B C
一旦胶水具有非零的可拉伸性,它就会按需要拉伸,但代价是坏处。就像 B 和 C 之间的胶水一样。
如果你将第一行改为
\setbox0=\hbox to\hsize{A\leaders\hrule\hskip 0pt plus 1em minus 0pt B C}
\showbox0
你会在日志文件中找到
\hbox(6.83331+0.0)x469.75499, glue set 38.11542
.\tenrm A
.\leaders 0.0 plus 10.00002
..\rule(0.4+0.0)x*
.\tenrm B
.\glue 3.33333 plus 1.66498 minus 1.11221
.\tenrm C
因此胶水拉伸比为 38.11542;这意味着第一团胶水(来自\leaders
)将变成
38.11542 * 10.00002 = 381.15496
点宽,第二个球将变成
38.11542 * 1.66498 = 63.46141
點寬闊。
我可以说“最多拉伸 X”吗?不能,因为有上述规则。通过一些计算,这当然是可能的。