我想要一个带上标的矢量:
\vec{o}^t
但这会产生非常糟糕的结果:t 与向量箭头重叠。我该如何解决这个问题(以及为什么这会产生糟糕的结果)?
答案1
我不知道结果为什么这么差;我怀疑这与字母的宽度有关。我不会使用这样的符号,但这只是个人观点。
和
\vec{o}^{\,t}
上标向右移动了一点。也许可以让 TeX 做一些计算,以便自动将上标向右移动。
答案2
尝试这个:
\documentclass{article}
\usepackage{esvect}
\begin{document}
$\vv{o}^t \ \vv{o^t}$
$\vec{o}^{\,t}$
\end{document}
(我已经包含了 egreg 的代码以便于比较。)
前两个是使用esvect
包完成的,第三个是egreg的代码。
答案3
比如
\documentclass{article}
\makeatletter
\newcommand{\vo}{\vec{o}\@ifnextchar{^}{\,}{}}
\makeatother
\begin{document}
$\vec{o}^t o$ $\vo^t o$
$\vec{o} o$ $\vo o$
$\vec{o}^t_t o$ $\vo^t_t o$
\end{document}
对于 来说这看起来没问题$\vo^t$
。(^
必须紧跟 之后\vo
。)我不知道如何只进行 中的上标移位$\vo^t_t$
。
这里是关于如何工作的讨论\@ifnextchar
。