自问自答一下。
\documentclass{ctexbeamer}
\usepackage{amsmath}
\usepackage{unicode-math}
\setmathfont{Fira Math}
\setmathrm{Fira Sans}
\begin{document}
$fit$\\
$\mathit{fit}$
\end{document}
XeLaTeX 编译结果如下:
其实就是加上了 \setmathrm{Fira Sans}
,但其实是有很多侥幸因素的,比如恰好针对 Fira Math 能找到同源的 Fira Sans,从而最终结果看起来还算搭。
其实我的想法就是最好 \setmathrm{Fira Math}
也能行得通,那就不用 \setmathrm{Fira Sans}
了,但是如问题描述中所说的,并不行。我的理解是 Fira Sans 的 italic 版本能被 \mathit
“抓到”,但“Fira Math 的 italic 版本”(不知道是不是有)不能被 \mathit
直接“抓到”,但我感觉应该能以其他方式,比如设置哪项参数,获取到 Fira Math 的“italic 版本”(因为看了 https://stone-zeng.github.io/2020-05-02-use-opentype-fonts-iii/ 中设置 StylisticSet
的例子,感觉可能可行,当然可能并不是从这设置的),但我不会,所以感觉这个答案也是说不上完美的。(beamer 里把数学字体调成协调的无衬线真是头疼)
问 如何解决 \mathit 字体与数学字体不搭的情况?