`\mathcal` 与 `unicode-math` 不兼容

`\mathcal` 与 `unicode-math` 不兼容

MWE 是这样的:

\documentclass{article}
\usepackage{unicode-math}
\DeclareMathAlphabet{\mathcal}{OMS}{cmsy}{m}{n}
\begin{document}
$ \tilde{\mathcal{B}} $

% $ \hat{\mathcal{B}} $
\end{document}

错误显示“!内部错误:'map_char_to_glyph'中的本机字体标志错误”。

似乎\DeclareMathAlphabet{\mathcal}{OMS}{cmsy}{m}{n}与不兼容unicode-math。任何建议都值得赞赏!

答案1

您正在尝试加载与 不兼容的老式 NFSS 字体命令unicode-math

\mathcal要从 OpenType 字体加载新字母,请使用range=选项\setmathfont,例如,

\documentclass{article}
\usepackage{unicode-math}

\setmathfont{XITS Math}[
  Scale = MatchUppercase ]
\setmathfont{Latin Modern Math}[
  range = {cal,bfcal},
  Scale = MatchUppercase ]

\begin{document}
\[ \mathcal{ABC} \quad \mathscr{ABC} \]
\end{document}

这将加载\mathcal\mathbfcal字母,并缩放字体,以便它们的大写字母具有相同的高度。

相关内容