转置和点上标间距

转置和点上标间距

我希望下面两个例子中的转置具有相同的高度,是否有可能让转置符号忽略字符上方的框?

\documentclass{article} 
\usepackage{amsmath} 
\begin{document} 

\newcommand{\vect}[1]{\mathbf{#1}}
\newcommand{\vA}{\vect{A}}
\newcommand{\dvect}[1]{\vect{\dot{#1}}}

\begin{align}
    {_\mathrm{K}}\dvect{\hat{\vA}}^\top \quad {_\mathrm{K}}\dvect{\vA}^\top \quad\quad {_\mathrm{K}}\vA^\top
\end{align}
\end{document}
    {_\mathrm{K}}\dvect{\vA}^\top \quad {_\mathrm{K}}\vA^\top
\end{align}
\end{document}

在此处输入图片描述

答案1

我建议你创建一个专用的宏,比如说,\tran充当转置运算符。将它设置为其高于基线的高度与它前面的字符无关,这样就没问题了。

如果您想使用\top符号来表示转置,我建议您通过\scriptscriptstyle指令来减小它的大小。

根据您使用的数学字体系列,您需要微调转置符号之前和之后的间距调整。

在此处输入图片描述

\documentclass{article}
\usepackage{amsmath}

\newcommand{\vect}[1]{\mathbf{#1}}
\newcommand{\vA}{\vect{A}}
\newcommand{\dvect}[1]{\vect{\dot{#1}}}

% "\tran": transpose operator
\newcommand\tran{\mkern-1mu{}_{}^{\scriptscriptstyle\top}\mkern-4mu}

\begin{document}
    \begin{align*}
    &{_\mathrm{K}}\dvect{\hat{\vA}}^\top \quad {_\mathrm{K}}\dvect{\vA}^\top \quad
     {_\mathrm{K}}\vA^\top \quad
     \Gamma^{\top}\Gamma \quad H^{\top}H \\
    &{_\mathrm{K}}\dvect{\hat{\vA}}\tran \quad
     {_\mathrm{K}}\dvect{\vA}\tran \quad
     {_\mathrm{K}}\vA\tran \quad
     \Gamma\tran \Gamma \quad H\tran H
     \end{align*}
\end{document}

附录:如果您想要 (a) 相对于上面的示例代码稍微提升转置符号,并且 (b) 将其稍微向左移动(以便它更接近前面的符号,您可以使用以下版本的宏\tran

\newcommand\tran{\mkern-2mu\raise1.25ex\hbox{$\scriptscriptstyle\top$}\mkern-3.5mu}

相对于 MWE 中显示的版本,该符号1mu向左移动(相当于三分之一的窄空间),并且位置也稍微靠上一些。

相关内容