花括号和 \fontsize 有错误吗?

花括号和 \fontsize 有错误吗?

我注意到,第二个参数\fontsize在用花括号括起来时有时会被忽略。相反,文本似乎设置为最小行距。

示例 1:

\fontsize{18}{100}
\selectfont
Blah Blah Blah Blah Blah Blah Blah Blah
Blah Blah Blah Blah Blah Blah Blah Blah
Blah Blah Blah Blah Blah Blah Blah

输出的行与行之间的间距非常大,如下所示:

示例 1 的输出

示例 2:

{\fontsize{18}{100}
\selectfont
Blah Blah Blah Blah Blah Blah Blah Blah
Blah Blah Blah Blah Blah Blah Blah Blah
Blah Blah Blah Blah Blah Blah Blah}

尽管要求行间留出足够的空间,但输出结果却没有行间空格:示例 2 的输出

我尝试过几种设置:在我自己的机器上,以及在两个在线编译器中,在开箱即用的 PDFLaTeX 中,没有加载任何软件包。不过,我第一次注意到它是在使用 XeLaTeX 时。

这是 \fontsize 的一个错误吗?它是否应该以这种方式工作——当将内容放在花括号中时,行距会中断,这有合理的原因吗?

更奇怪的是,如果在结束花括号前添加一个空行,奇怪的行为似乎就会消失。因此,以下示例的输出与示例 1 的输出似乎相同。

示例 3:

{\fontsize{18}{100}
\selectfont
Blah Blah Blah Blah Blah Blah Blah Blah
Blah Blah Blah Blah Blah Blah Blah Blah
Blah Blah Blah Blah Blah Blah Blah

}

答案1

没有任何错误,但行为有据可查。

当遇到并执行该命令时,段落将以基线跳过为激活状态进行排版\par。请注意,空白行与 相同\par

当你这样做

{\baselineskip=100pt abc}\par

结束}的效果\baselineskip=100pt,将其设置回{扫描时的值。段落将设置为 的\baselineskip外部群组。

反过来,

{\baselineskip=100pt abc\par}

abc将以100pt 基线跳过的方式排版段落(由 表示)。

在前面添加一个空行}与明确输入的效果相同\par

为了完整性,\fontsize{18}{100}\selectfont将字体大小设置为 18pt,基线跳跃设置为 100pt。在您的例子中,18pt 被替换为 17.24pt,并且段落设置为标准基线跳跃;巨大的字体大小使得\lineskiplimit\lineskip进入场景,因此行与行之间有\lineskip垂直空间分隔。

相关内容