我如何控制使用哪种字体\mathbf
?我曾尝试让它使用 Latin Modern(我认为这是默认字体),即使主字体是其他字体;但那并没有发生。
\documentclass{article}
\usepackage{fontspec}
\setmainfont{ebgaramond}
\newfontfamily\lm{Latin Modern Roman}
\begin{document}
ginger
\[
\lm
\mathbf{f_2^{(3)}}
\]
hawthorn
\end{document}
答案1
在 中fontspec
,\mathbf
是字体的粗体系列\mathrm
,因此您可以\setmathrm[BoldFont = {Some Bold Font}]{some font}
。
默认情况下,该unicode-math
包的工作方式相同,但您可以改为提供unicode-math
选项mathbf=sym
,然后它会为\mathbf
您提供数学字体中的数学字母数字符号。通常,您可以使用\symbfup
或获得这些符号\symbfit
,它们可能更适合向量和集合的单字母名称。更好的方法是定义语义标记\vectorsym{z}
,例如 ,您可以在一个地方更改它以更新文档中所有向量的样式。您可以使用 更改粗体直立数学unicode-math
字母\setmathfont{Some Font}[range=bfup]
。
在 PDFTeX 中,许多字体包会更改\mathrm
、\mathbf
和\mathit
字母,但一个好方法是使用包isomath
。这允许您选择任何 NFSS 字体系列,添加更多字母(例如)\mathbfit
,还允许您加载带有小写希腊字母的字体。
在 XeTeX 中,mathspec
您可以使用现代文本字体加载传统的数学字体,并在数学模式下使用文本字体的字母。
该mathastext
软件包使数学模式使用主文本字体中的字母和数字。它还有一个选项可以从 LGR 编码的希腊字体加载希腊字母。
最后,你可以在 LaTeX 中使用\DeclareMathAlphabet
和手动完成此操作\SetMathAlphabet
。请参阅LaTeX 字体选择指南第 3.4 节。