使用lualatex
我unicode-math
想定义一个类似于\vec
生成箭头的宏以下一个字母(使用 Unicode 字形 0x20EF)。
添加行
\UnicodeMathSymbol{"020EF}{\vecunder}{\mathbotaccent}{combining right arrow below}
在unicode-math-table.tex
内/usr/local/.../unicode-math
我使用 获得了所需的结果$\vecunder{a}$
,但$\vecunder{a}_i$
在字母和箭头之间呈现了额外的空间(\vec{a}^i
没有)。
我该如何摆脱多余的空间?
顺便问一下:我如何在文档中定义宏?包括\UnicodeMathSymbol{...}
使用\AtBeginDocument
都不起作用。
提前谢谢了!
答案1
我不确定\Umathaccent bottom fixed
当生成的数学原子有下标字段时会如何工作。但这里有一个解决方法:将下标设置为没有箭头的符号。
\documentclass{article}
\usepackage{unicode-math}
\newcommand{\vecunder}[1]{%
\Umathaccent bottom fixed 7\symoperators "020EF\relax#1%
\vphantom{#1}%
}
\begin{document}
$\vecunder{a}$ $\vecunder{a}_{i}$ $a_{i}$
\end{document}