有关的:https://github.com/notofonts/math/issues/14#issuecomment-1469979121
如何使用 Noto Sans Math 字体中的实际无衬线字母来排版数学?
\documentclass{article}
\usepackage{unicode-math}
\setmainfont{Noto Sans}
\setmathfont{NotoSansMath-Regular.otf}
\setmonofont{Noto Sans Mono}
\begin{document}
Lorem ipsum
\[\int\sum\oint ABCabc[]()123 \Gamma\Delta\alpha \beta \symsfit{\alpha\beta}\]
\end{document}
拉丁字母和希腊字母都是衬线字母,除了大写希腊字母(我不知道为什么大写希腊字母是无衬线字母)。我如何将它们改为无衬线字母?\symsfit
同样提供衬线字母,而不是无衬线字母。
Noto Sans Math GitHub 链接:https://github.com/notofonts/math
答案1
正如我对那个(已关闭的)github 问题所评论的那样,这似乎失去了使用无衬线数学字体的机会。
您可以使用拉丁字母\symsfit
,但是 Unicode sans 数学字母表中没有希腊字母,因此您需要依赖字体设计器......
\documentclass{article}
\usepackage{unicode-math}
\setmainfont{Noto Sans}
\setmathfont{NotoSansMath-Regular.otf}
\setmonofont{Noto Sans Mono}
\begin{document}
Lorem ipsum
\[\int\sum\oint \symsfit{ABCabc}[]()123 \Gamma\Delta\alpha \beta \symsfit{\alpha\beta}\]
\end{document}
希腊语“几乎是无符号的”,另一种方法是从文本字体中取出希腊语
\documentclass{article}
\usepackage{unicode-math}
\setmainfont{Noto Sans}
\setmathfont{NotoSansMath-Regular.otf}
\setmonofont{Noto Sans Mono}
\begin{document}
Lorem ipsum
\[\int\sum\oint \symsfit{ABCabc}[]()123 \textit{ΓΔαβ} \textit{αβ}\]
\end{document}
在我拥有的版本中,垂直对齐已关闭,但那是另一个问题。
答案2
您可以将 Noto Sans 和 Noto Sans Mono 中的字母组合成数学字母。
这是一个模板(未经广泛测试),它试图解决 Noto Sans Math 的不足之处。它加载 STIX Two(具有 OpenType MATH 表和相当相似的度量)作为主要数学字体,然后加载 Noto Sans Math 中的所有数学符号,然后在 Noto Sans Math 中的所有衬线字体上加载 Noto Sans 系列。
这仍然有几个问题:大运算符和左/右标点符号不会调整大小。您可以尝试从其他数学字体(例如 KpMath-Sans 或 Fira Math)中获取这些。没有上标或下标。当 Noto Sans 成为可变字体时,您可以设置script-features=
和sscript=features=
加宽它们。无衬线数学字母看起来与常规字母相同。我可能错过了字体的一些字形或选择了一些字体没有的字形。等等。
\documentclass{article}
\tracinglostchars=3
\usepackage{unicode-math}
\setmainfont{Noto Sans}
\setmonofont{Noto Sans Mono}
\setmathfont{STIX Two Math}[Scale=MatchLowercase]
\setmathfont{NotoSansMath-Regular}[ range={"00-"FF, "2100-"214F, "2190-"23FF, "25A0-"25FF,
"27C0-"27FF, "2900-"295F, "2980-"2BFF,
cal, bfcal, sfup, bfsfup, sfit, bfsfit, frak, bffrak, bb, bbit}]
\setmathfont{NotoSans-Regular}[range={up,"2000-"206F}]
\setmathfont{NotoSans-Italic}[range=it]
\setmathfont{NotoSans-Bold}[range=bfup]
\setmathfont{NotoSans-BoldItalic}[range=bfit]
\setmathfont{NotoSansMono-Regular}[range=tt]
\begin{document}
Lorem ipsum
\[\int\sum\oint ABCabc[]()123 \Gamma\Delta\alpha \beta \symsfit{\alpha\beta}\]
\end{document}