如何正确地将矢量箭头置于字符的中心

如何正确地将矢量箭头置于字符的中心

我在数学模式下使用标准 LaTeX 矢量箭头,但它们总是以这样的方式对齐:如果它们下面没有斜体字符,它们就会发生偏移。

以下代码:

\documentclass{article}
\usepackage[e]{esvect}

\begin{document}
$\vec{A}\ \vv{A}\ \vec{\mathrm{A}}\ \vv{\mathrm{A}}\ \vv{\ell}\ \vec{\ell}$
\end{document}

生成:

在此处输入图片描述

我将传统箭头与 esvect 包中的箭头进行了比较,因为我希望 esvect 箭头以非斜体字符为中心,但保持普通 LaTeX 箭头的正常箭头类型和长度。

这种居中仅适用于非斜体字符,但如果需要的话,能够手动调整任何字符上方矢量箭头的居中也很好。

谢谢您抽出时间,我们非常感激。

答案1

您可以创建一个进行一些水平字距调整的宏。

下面 MWE\myvec有一个可选参数(默认值 1mu)来指示调整:

\documentclass{article}
\usepackage[e]{esvect}
\newcommand{\myvec}[2][1mu]{\vec{#2\mkern-#1}\mkern#1}
\begin{document}
Benchmark:

$\vec{A}\ \vv{A}\ \vec{\mathrm{A}}\ \vv{\mathrm{A}}\ \vv{\ell}\ \vec{\ell}$

With my macro:

$\myvec{A}\ \myvec{\ell}$

In case you need to adjust the kerning:


$\myvec[2mu]{A}\ \myvec[2mu]{\ell}$
\end{document}

在此处输入图片描述

相关内容