我想使用 CMU Serif 的粗体小写字母,同时将 Latin Modern 设置为我的主要字体。
最小工作示例
\documentclass{report}
\usepackage{mathspec}
\setmainfont{Latin Modern Roman 10 Regular}[
BoldFeatures = {SmallCapsFont = {CMU Serif Bold}},
SmallCapsFont = Latin Modern Roman Caps]
\begin{document}
Roman. \textbf{Bold.} \textsc{Small capitals.}
\textbf{\textsc{Bold small capitals.}}
\end{document}
输出
错误
我该如何解决这些错误?当我不使用时,CMU Serif 的粗体小写字母可以正常工作fontspec
。
编辑。 也许我可以适应这个答案?我知道如何从 CMU Serif 导入符号,mathabx
但不知道如何从 CMU Serif 导入。我只会使用粗体小写字母作为标题数字,因此是否必须定义新符号并不重要。
答案1
正如 Ulrike Fischer 在她的评论中所说,您正确地选择了小型大写字体,但还需要选择其小型大写功能。您还需要几行来启用倾斜小型大写。
\documentclass{report}
\usepackage{fontspec}
\setmainfont{Latin Modern Roman}[
SmallCapsFont = Latin Modern Roman Caps,
UprightFeatures = {SmallCapsFeatures = {}}, % Suppresses warning about missing smcp feature.
BoldFeatures = {SmallCapsFont = {CMU Serif Bold}},
ItalicFeatures = {SmallCapsFont = {CMU Serif Roman Slanted}},
BoldItalicFeatures = {SmallCapsFont = {CMU Serif Bold Slanted}},
SmallCapsFeatures={Letters=SmallCaps}]
\begin{document}
Roman font. \textbf{Bold font.}
\textsc{Small caps font.} \textbf{\textsc{Bold small caps font.}}
\itshape Italic font. \textbf{Bold font.}
\textsc{Small caps font.} \textbf{\textsc{Bold small caps font.}}
\end{document}
您还可以尝试“New Computer Modern”,它重新设计了其小型大写字母。