答案1
\vec
被定义为“数学重音”,就像\hat
和其他重音一样。放在单个字符上的数学重音将水平调整其位置,使其位于字符的视觉顶部中心。调整量或“倾斜”量编码在字体的字距调整信息中,该信息x
来自字符(x
在问题中)和另一个由 标识的字符之间的字距\skewchar
。(如果\skewchar
字体的高于基线,就像重音字符一样,那么字距对于普通排版也很有用。)
放置在复合数学对象上的数学重音不会水平调整。这就是问题中使用的不可见位的要点——将单个字符转换为组合数学列表。尝试使用字母进行测试f
,以更清楚地展示差异。
accents 和 amsmath 包具有尝试调整定位甚至复合参数的定义。
除此之外:与……\vec{\/x}
相同,\vec{\kern0pt x}
但输入速度更快。
另外,可能还提供过多的细节……
数学中的斜体字母f
有很大的斜度,因此\vec{f}
和之间存在很大差异\vec{\/f}
。在我看来,使用计算机现代数学斜体字体,不倾斜的\vec{\/f}
明显不好,但自动调整的\vec{f}
倾斜过度。
有一个 plain-TeX 宏\skew
,它被 LaTeX 继承,提供手动调整,取代基于字距值的自动定位:
\skew ⟨mu 因子⟩ ⟨accent⟩ ⟨符号⟩
⟨mu-factor⟩ 以数学单位(mu,如\mkern0mu
问题中的)的形式给出调整。对于F.这看起来像
$\vec{f} - \vec{\/f} = \skew{3.5}\vec{f}$
你不会想在所有数学符号前输入\skew
命令,但在特殊情况下,你可能想定义新的缩写,例如
\newcommand\vecf{\skew{3.5}\vec{f}}
如果这是您工作中的重要符号,并且您负责良好的呈现(而不是提交给需要重新排版的期刊)。
请注意,\hat{f}
它的自动定位看起来很棒。