我已经解决了之前 LuaLaTeX 无法加载字体的问题,但现在该\mathbf
命令不会产生粗体数学字体。
例如,以下代码:
\[
x + y = 10 \, \mathbf{bold text} \, \mathit{italic text} \, \mathrm{math text}
\]
产生以下内容:
\mathbf
似乎没有效果。我看了这一页为数学字体设置粗体/斜体字体,因为除了常规样式之外似乎没有其他样式,但\mathbf
没有出现。
这是我当前关于字体的序言片段:
% Font / LuaLaTeX setup
\RequirePackage{iftex}
\usepackage{iftex}
\ifluatex
\RequirePackage{fontspec}
\RequirePackage{unicode-math}
\unimathsetup{math-style=TeX}
\RequirePackage[english]{babel}
\defaultfontfeatures{Ligatures=TeX, Scale=MatchLowercase}
\setmainfont[
Path=/usr/share/fonts/opentype/linux-libertine/,
Extension=.otf,
BoldFont=LinLibertine_RB,
ItalicFont=LinLibertine_RI,
]{LinLibertine_R}
\setsansfont[
Path=/mnt/c/Users/user/Appdata/Local/Microsoft/Windows/Fonts/,
Extension=.otf,
BoldFont=Kurier-Bold,
ItalicFont=Kurier-Italic,
]{Kurier-Regular}
\setmonofont[
Path=/mnt/c/Users/user/Appdata/Local/Microsoft/Windows/Fonts/,
Extension=.ttf,
BoldFont=Inconsolata-Bold,
]{Inconsolata-Regular}
\setmathfont{LibertinusMath-Regular.otf}
\setmathrm[BoldFont=LinLibertine_RB.otf]{LinLibertine_R.otf}
\setboldmathrm{LinLibertine_RB.otf}
\fi
% regular times
\ifpdftex
\RequirePackage[T1]{fontenc}
\RequirePackage{newtxtext}
\RequirePackage[smallerops]{newtxmath}
\fi
我查看了 fontspec 的文档,但没有找到任何与 相关的内容\mathbf
。如果我遗漏了什么或者有什么可以解决这个问题,那就太好了。谢谢!
答案1
为了unicode-math
自动将文本字体同步到数学模式,不明确设置,,,\setmathrm
等等 。\setboldmathrm
\setmathsf
平均能量损失
\documentclass{article}
\usepackage{xcolor}
\usepackage{fontspec}
\usepackage{unicode-math}
\defaultfontfeatures{Ligatures=TeX, Scale=MatchLowercase}
\setmainfont{\detokenize{LinLibertine_R}}[
Path=...longpath.../texlive/2020/texmf-dist/fonts/opentype/public/libertine/,
Extension=.otf,
BoldFont=*B,
BoldFeatures={Colour=red},
ItalicFont=*I,
ItalicFeatures={Colour=blue},
BoldItalicFont=*BI,
]
\setsansfont{Kurier}
\setmonofont{NotoSansMono}%Inconsolata} %don't have Inconsolata
% \setmathrm[BoldFont=LinLibertine_RB.otf]{LinLibertine_R.otf}
% \setboldmathrm{LinLibertine_RB.otf}
\unimathsetup{math-style=TeX}
\setmathfont{LibertinusMath-Regular}
\begin{document}
\[
x + y = 10 \, \mathbf{bold text} \, \mathit{italic text} \, \mathrm{math text}
\]
\end{document}