有没有最近可靠的方法可以改变数学字体字形?

有没有最近可靠的方法可以改变数学字体字形?

有一种无衬线字体,名为“Inter”,我将其用作文档中的主要字体。我想在数学模式下使用它的字形。

我搜索了一些方法,但是它们之间存在一些不一致,这让我很困扰,所以我很不高兴地换成了衬线字体(STIX Two Math),但我仍然想要 Inter 字符。

有人知道在数学模式下如何完美地获得这些字形吗?

无衬线数学字体如此之少,这对我来说似乎很奇怪,我不确定这是否与传统的影响或其他一些反复出现的人类倾向/偏好有关。

最小工作示例:

\documentclass{scrartcl}

\usepackage[sfdefault]{inter}
\usepackage[math-style=upright]{unicode-math}
\setmathfont{STIX Two Math}

\begin{document}
\noindent Example of math text ahead:\\
  \Large $\gamma = \frac{1}{\sqrt{1 - \frac{v^2}{c^2}}}$
\end{document}

谢谢。

答案1

有几种 Sans Serif OpenType 数学字体可用,例如 Inter text 和 Fira Math

在此处输入图片描述

\usepackage[sfdefault]{inter}
\usepackage[math-style=upright]{unicode-math}
\setmathfont{Fira Math}

\begin{document}
\noindent Example of math text ahead:\\
  \Large $\gamma = \frac{1}{\sqrt{1 - \frac{v^2}{c^2}}}$
\end{document}

您还可以使用unicode-math Range键将 Inter 替换为某些字符范围,尽管它们会继承文本间距,而不会具有数学字体通常更宽的侧边距

这是 Inter 用于数学字母的情况(尽管 unicode-math 确实抱怨 Inter 并非真正设置为数学字体,但它会执行所要求的操作)

在此处输入图片描述

\usepackage[sfdefault]{inter}
\usepackage[math-style=upright]{unicode-math}
\setmathfont{Fira Math}
\setmathfont[range=up]{inter}

\begin{document}
\noindent Example of math text ahead:\\
  \Large $\gamma = \frac{1}{\sqrt{1 - \frac{v^2}{c^2}}}$
\end{document}

警告如下

Package fontspec Warning: OpenType feature 'Style=MathScript' (ssty) not
(fontspec)                available for font 'inter' with script
(fontspec)                'CustomDefault' and language 'Default'.

因为 Inter 并不是真正的数学字体,尽管这在这里并不重要,因为主要的数学排版参数取自 FiraMath

相关内容