为什么 \halign 在显示数学模式下不居中?

为什么 \halign 在显示数学模式下不居中?

这是居中的:

$$\vbox{\halign{#\cr A\cr}}$$

为什么这不居中?

$$\halign{#\cr A\cr}$$

顺便问一下,为什么\hbox{\halign{#\cr A\cr}}不起作用?

答案1

\halign垂直的命令,这意味着它在遇到时启动垂直模式,如本例所示

\parindent=0pt % To see the left margin
Foo bar baz \halign{#\cr A\cr} bar foo baz
\bye

在此处输入图片描述

\hbox在受限水平模式(即在内)下使用时,垂直命令会引发错误。

然而,显示对齐,指定为

$$⟨assignments⟩ \halign⟨box specification⟩{...} ⟨assignments⟩$$

其中 ⟨作业⟩ 是可选的,例如参数更改,不会产生任何数学列表。这样的对齐方式被移位并被\displayindent包围\abovedisplayskip\belowdisplayskip粘合。(来自 TeX by Topic,第 25.2.1 节。)通常在段落内\displayindent0pt(但\parshape\hangindent可以更改这一点);这就是为什么你看到左对齐的公式

\parindent=0pt % To see the left margin
Foo bar baz
$$\halign{#\cr A\cr}$$
Foo bar baz
$$\displayindent=1em\halign{#\cr A\cr}$$
\bye

在此处输入图片描述

相关内容