我正在使用一种字体,即 Source Code Pro,它没有数学希腊字母(例如 U+1D6FC),但有直立的希腊普通字母(例如 U+03B1),我可以使用 fontspec 的 AutoFakeSlant 使其倾斜。
\documentclass{article}
\usepackage{fontspec}
\usepackage{unicode-math}
\setmonofont[AutoFakeSlant]{SourceCodePro}
\begin{document}
Math mode: $\mathtt{\alpha}$ % nothing displayed, glyph U+1D6FC not found
Text mode: \texttt{\slshape α} % glyph found and slanted
\end{document}
倾斜的文本字母对我来说已经足够好了,但我想自动映射,这样,当 \alpha 出现在数学模式中并且正在使用 Source Code Pro 时,unicode-math 和 fontspec 会回退到倾斜的文本字形(我不希望在遇到 \alpha 并且正在使用的不是 Source Code Pro 时发生这种情况)。
我怎样才能实现这一点——而不必将每个 $\alpha$ 包装在另一个命令中?我知道我只能将字体用于特定的字符子集,但目前将 unicode 点映射到另一个点增加了难度。