![Unicode-math 更改超出范围的字体](https://linux22.com/image/359053/Unicode-math%20%E6%9B%B4%E6%94%B9%E8%B6%85%E5%87%BA%E8%8C%83%E5%9B%B4%E7%9A%84%E5%AD%97%E4%BD%93.png)
我正在使用unicode-math
带有 LuaLaTeX (TeXlive 2017) 的软件包。我正在尝试设置数学字体\setminus
带有 LuaLaTeX (TeXlive 2017) 的软件包。我正在尝试为字符就像这个答案一样,因为它不存在于拉丁现代数学字体中。
具有以下 MWE:
\documentclass{article}
\usepackage{unicode-math}
\setmathfont{Latin Modern Math}
\begin{document}
\[ \pi \in \mathbb{R} \setminus \mathbb{Q} \]
\end{document}
我得到这个结果:
正如预期的那样,\setminus
字符没有出现,而我有拉丁现代字体。
但现在如果我尝试这样做:
\documentclass{article}
\usepackage{unicode-math}
\setmathfont{Latin Modern Math}
\setmathfont[range=\setminus]{XITS Math} % This changed
\begin{document}
\[ \pi \in \mathbb{R} \setminus \mathbb{Q} \]
\end{document}
我明白了:
现在字符\setminus
出现了,但是 mathbb 字体变了!如果我尝试使用随机字母(或\pi
上面的字符),我会看到“正常”字体仍然是 Latin Modern。发生了什么?
答案1
这是 range 选项的副作用之一 - 它有点问题。之后将内容重置为主字体。我还会使用 \symbb 而不是 \mathbb - 它是更现代且语义正确的命令:
\documentclass{article}
\usepackage{unicode-math}
\setmathfont{Latin Modern Math}
\setmathfont[range=\setminus]{XITS Math} % This changed
\setmathfont[range=\int]{Latin Modern Math} % This changed
\begin{document}
\[ \pi \in \symbb{R} \setminus \symbb{Q} \]
\end{document}