我使用fontspec
LuaLaTeX 从外部文件加载字体,即使它们没有安装在系统上。例如
\usepackage{fontspec}
\setmainfont[Path=fonts/,
Extension=.otf,
UprightFont=*-Regular,
ItalicFont=*-Italic,
BoldFont=*-Bold,
SmallCapsFont=*-AllSC,]{EBGaramond12}
我还使用unicode-math
,因为它很棒,通常使用 XITS Maths 作为运算符和数字,使用 EB Garamond 作为字母。
\usepackage[math-style=TeX]{unicode-math}
\setmathfont{XITS Math}
\setmathfont[range=\mathbfsfit/{greek,Greek,latin,Latin}]{EB Garamond}
有没有办法将这些包组合起来,以使用本地 EB Garamond 中的字母而不是系统的字母?
答案1
谢谢@Khaled Hosny,我已经找到了如何做到这一点。并非所有fontspec
选项都适用于unicode-math
。在这种情况下,unicode-math
似乎不支持 的通配符扩展功能fontspec
,因此
\setmathfont[
range=\mathbfsfit/{greek,Greek,latin,Latin}
Path=fonts/,
Extension=.otf,
UprightFont=*-Regular,
ItalicFont=*-Italic,
BoldFont=*-Bold]{EBGaramond12}
必须使用
\setmathfont[
range=\mathbfsfit/{greek,Greek,latin,Latin},
Path=fonts/,
Extension=.otf,
ItalicFont=EBGaramond12-Italic,
BoldFont=EBGaramond12-Bold]{EBGaramond12-Regular}