使用 TeX Gyre Pagella 作为我的数学字体时,“流数”点没有正确位于大写粗体拉丁符号上方的中心。
以下是 MWE:
\documentclass{article}
\usepackage{unicode-math}
\setmainfont{TeX Gyre Pagella}
\setmathfont{texgyrepagella-math.otf}
\begin{document}
How to centre the dot over the character? $\dot\symbf{x}$ works but $\dot\symbf{X}$ does not.
The same happens if displayed:
\begin{displaymath}
\dot\symbf{X} \qquad \dot\symbf{x}
\end{displaymath}
\end{document}
如果我注释掉该\setmathfont
行,那么一切就正常了。我正在使用最新的 TL 2016 发行版进行编译。
先感谢您。
答案1
受影响的字符似乎是 D、X 和 Y。这是一个字体中的错误,因为它在 LuaTeX 和 XeLaTeX 中都会发生,但在其他数学字体中不会发生。
\documentclass{article}
\usepackage{unicode-math}
\setmainfont{TeX Gyre Pagella}
\setmathfont{TeX Gyre Pagella Math}
%\setmathfont{Asana Math}
\begin{document}
How to centre the dot over the character? $\dot{\symbf{x}}$ works but $\dot{\symbf{X}}$ does not.
\count255=\numexpr`A-1\relax
\loop\ifnum\count255<`Z
\advance\count255 1
$\dot{\symbf{\Uchar\count255}}$
\repeat
\count255=\numexpr`A-1\relax
\loop\ifnum\count255<`Z
\advance\count255 1
$\acute{\symbf{\Uchar\count255}}$
\repeat
\count255=\numexpr`A-1\relax
\loop\ifnum\count255<`Z
\advance\count255 1
$\mathring{\symbf{\Uchar\count255}}$
\repeat
\count255=\numexpr`a-1\relax
\loop\ifnum\count255<`z
\advance\count255 1
$\dot{\symbf{\Uchar\count255}}$
\repeat
\end{document}
Asana Math 也一样
解决方法可能是添加
\setmathfont[range=\symbf]{Asana Math}