仅更改文本和数学模式的数字字体

仅更改文本和数学模式的数字字体

我想使用字体Fira Sans适用于我的文档,但此字体只有“旧式”数字。我想知道是否可以只更改数字的字体,使其与字母字符不同。

我搜索了很多,但我找到的所有答案都只能使用数学模式更改字体\DeclareMathSymbol,我希望这个修改能够影响所有文档。

谢谢。

附言:我意识到我可以使用另一种带有常规数字的字体,但我想知道(无论额外的工作)是否可行。

答案1

你似乎遇到了 XY 问题。在 LuaTeX 或 XeTeX 中,你可以使用以下命令关闭旧式数字

\usepackage{unicode-math}
\defaultfontfeatures{Numbers=Lining}

\setmainfont{Fira Sans}
\setsansfont{Fira Sans}
\setmonofont{Fira Mono}
\setmathfont{Fira Math}

或者\usepackage[fira]{fontsetup}可能会有效。

在 PDFTeX 中,加载

\usepackage[lining, sfdefault]{FiraSans}
\usepackage{FiraMono}

加载 Fira Sans 和衬线数字作为默认字体,并将 Fira Mono 作为匹配的等宽字体。您还需要加载 sans-serif 数学包,并将其字母和数字设置为使用主文本字体\usepackage[italic]{mathastext}

答案2

使用XeLaTeX并且fontspec这相当容易:

\usepackage{fontspec}
\setmainfont[]{Fira Sans}
\setmathrm[]{Anotherfont}

或者您可以检查您的字体和 Fontspec 文档,并\setmathrm[]{Fira Sans}使用适当的选项进行编辑(如果可用)。

相关内容