这是居中的:
$$\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 节。)通常在段落内\displayindent
是0pt
(但\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