在公式中使用正文字体

在公式中使用正文字体

简而言之:我可以更改数学字体,但它不适用于数字。

我的文档中有几个公式,但只有基本的字母数字字符和非常有限的符号(平方根是除最常见字符之外的唯一特殊字符)

我研究了以下问题:

使用该软件包已经取得了以下进展mathastext(我使用的是 v1.3w):

在此处输入图片描述

我已确认加载mathastext fontspec

但是,虽然字母按预期显示,但数字仍然有衬线。

限制:

  • 由于混合了其他软件包,因此我使用 LuaLatex 进行编译

梅威瑟:

\documentclass{article}
\usepackage{fontspec}
\setmainfont{RUBIK-REGULAR}[
    Path=fonts/,
    Extension=.ttf
]
\usepackage{mathastext}
\begin{document}
    \[T=2\sqrt{\frac{D}{A}}\]
    \center{Body Text}
\end{document}

答案1

您必须fontspec使用该no-math选项进行加载。

\documentclass{article}
\usepackage[no-math]{fontspec}
%\setmainfont{RUBIK-REGULAR}[
%    Path=fonts/,
%    Extension=.ttf
%]
\setmainfont{Impact} % a random distinctive font on my system
\usepackage{mathastext}


\begin{document}

\[T=2\sqrt{\frac{D}{A}}\]

\begin{center}Body Text\end{center}

\end{document}

顺便说一句,这个命令\center是存在的,但是

  • 它没有论点
  • 它只能通过环境隐式center使用

在此处输入图片描述

答案2

您还可以加载

\usepackage[math-style=upright]{unicode-math}

并将字体设置为类似于(如果您已将Rubik.fontspec文件添加到项目目录):

\defaultfontfeatures{ Scale=MatchUppercase, Ligatures=TeX }
\setmainfont{Rubik}[Scale=1.0]
\setmathfont{Fira Math}
\setmathfont{Rubik}[range=up]

您可以向其中添加 Rubik 字体包含的任何其他字符,可以使用十六进制代码(如)"FF、宏名称或反引号文字。您还可以设置范围,因此如果字体支持所有 Latin-1,则可以写入range={up,"20-"FF}

如果您选择的字体没有希腊字母,请改用:

\setmathfont{Rubik}[range=up/{Latin,latin,digits}]

相关内容