我经常要处理看起来“太高”的下标。最常见的例子是写类似的东西$\chi_\Delta$
,但即使是普通字母,我也发现自己在修复我觉得有问题的东西。
我的意思是:考虑一下
\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ $f_{k,j}\ \ \ f_{k,j}^{\vphantom{k}}\ \ \ \ a_{k,j}\ \ \ \ a_{k,j}^{\vphantom{k}}$
\[
f_{k,j}\ \ \ f_{k,j}^{\vphantom{k}}\ \ \ \ a_{k,j}\ \ \ \ a_{k,j}^{\vphantom{k}}
\]
我经常发现自己使用第二和第四个选项。这里有答案解决这个问题(似乎是通过黑客手段)这里解决这个问题。
我的问题是,除了寻找避免 vphantom 的解决方案之外,TeX 中将下标放在它们出现的位置的逻辑是什么(如上面的第一种和第三种情况)。
答案1
David Carlisle 在他的评论中给出了正确的提示,但他没有写出答案。因此,我尝试制定一个完整的答案:将 \fontdimen16 的值更改为 \textfont2。它应该获得 \fontdimen17 所具有的值。
以下是一些纯 TeX 中的可执行场景;它们可以独立执行:
% the current situation
\centerline{$
f_{k,j} \quad f_{k,j}^{\vphantom{k}} \qquad a_{k,j} \quad a_{k,j}^{\vphantom{k}}
$}
$$
f_{k,j} \quad f_{k,j}^{\vphantom{k}} \qquad a_{k,j} \quad a_{k,j}^{\vphantom{k}}
$$
% change fontdimen 16; note: this is always a global change
\fontdimen16\textfont2=\fontdimen17\textfont2
\centerline{$
f_{k,j} \quad f_{k,j}^{\vphantom{k}} \qquad a_{k,j} \quad a_{k,j}^{\vphantom{k}}
$}
$$
f_{k,j} \quad f_{k,j}^{\vphantom{k}} \qquad a_{k,j} \quad a_{k,j}^{\vphantom{k}}
$$
% increase the fontdimens 16 and 17
\fontdimen17\textfont2=1.25\fontdimen17\textfont2 % 1.25 is a guess
\fontdimen16\textfont2=\fontdimen17\textfont2
\centerline{$
f_{k,j} \quad f_{k,j}^{\vphantom{k}} \qquad a_{k,j} \quad a_{k,j}^{\vphantom{k}}
$}
$$
f_{k,j} \quad f_{k,j}^{\vphantom{k}} \qquad a_{k,j} \quad a_{k,j}^{\vphantom{k}}
$$
\bye
我不认为改变 \fontdimen16 的值是一种“黑客行为”。TeXbook 第 179 页包含以下文本,或多或少说明了您的问题:
除了改变子公式的大小或使用 |\raise|,你还可以通过改变 \TeX\ 将数学列表转换为水平列表时使用的参数来控制垂直间距。这些参数在附录 G 中描述;改变它们时要小心,因为这种改变是全局的(即,不是局部于组的)。下面是一个如何进行这种改变的例子:假设你正在设计一种化学排版格式,并且你希望设置很多像 这样的公式
$\rm Fe_2^{+2}Cr_2O_4$
。你可能不喜欢 中的下标$\rm Fe_2^{+2}$
低于 中的下标$\rm Cr_2$
;并且你不想强迫用户输入像
\begintt
$\rm Fe_2^{+2}Cr_2^{\vphantom{+2}}O_4^{\vphantom{+2}}$
\endtt
只是为了得到
$\rm Fe_2^{+2}Cr_2^{\vphantom{+2}}O_4^{\vphantom{+2}}$
所有下标都在同一级别的公式。好吧,您需要做的就是设置 '\fontdimen16\tensy=2.7pt|' 和 '|\fontdimen17\tensy=2.7pt|',假设 |\tensy| 是您的主要符号字体 (|\textfont2|);这会将所有正常下标降低到$2.7\pt$
基线以下的位置,这足以为可能包含加号的上标腾出空间。
有关 fontdimens 的详细信息在 TeXbook 的附录 G 中描述。非常好的TUGboat 文章B. Jackowski 用图表解释了本附录的规则;参见图 9-11 了解下标的位置。