![在公式中使用正文字体](https://linux22.com/image/416910/%E5%9C%A8%E5%85%AC%E5%BC%8F%E4%B8%AD%E4%BD%BF%E7%94%A8%E6%AD%A3%E6%96%87%E5%AD%97%E4%BD%93.png)
简而言之:我可以更改数学字体,但它不适用于数字。
我的文档中有几个公式,但只有基本的字母数字字符和非常有限的符号(平方根是除最常见字符之外的唯一特殊字符)
我研究了以下问题:
使用该软件包已经取得了以下进展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}]