我想使用 Fira Sans 作为主要字体,因为它具有出色的数学支持,但我也想使用其他字体,这就是为什么我想使用带有 fontspec 包的 XeLaTeX。但是,它似乎会在这里和那里更改字体,我不知道为什么。
以下是 MWE:
\documentclass[]{article}
\usepackage[T1]{fontenc}
\usepackage[sfdefault]{FiraSans}
\usepackage{newtxsf}
\begin{document}
Writing numbers 12345 in line and in $12345$ math mode using the font Fira Sans.\\
Some math:
\begin{align*}
\lim_{n \to \infty} \sum_{k=0}^4 a_0 q^k
\end{align*}
\end{document}
答案1
在 XeTeX 上,该Firasans
包会加载,这会以与 不符的方式fontspec
设置字体。这是该包中的一个错误。\mathrm
sfdefault
FiraSans
一种解决方案是使用现代 OpenType 字体fontsetup
(其中加载了 Fira Math unicode-math
):
\documentclass[]{article}
\usepackage[fira]{fontsetup}
\begin{document}
Writing numbers 12345 in line and in $12345$ math mode using the font Fira Sans.\\
Some math:
\begin{align*}
\lim_{n \to \infty} \sum_{k=0}^4 a_0 q^k
\end{align*}
\end{document}
我建议您在可以的情况下使用 OpenType 字体,在必须的情况下使用传统的 8 位软件包。
如果您想将旧的数学字体与 Fira Sans 一起使用,则可以在加载之前关闭 的重新定义\mathrm
,该重新定义用作 的运算符字体:\lim
fontspec
FiraSans
\documentclass[]{article}
\PassOptionsToPackage{no-math}{fontspec}
\usepackage[sfdefault]{FiraSans}
\usepackage{newtxsf}
\begin{document}
Writing numbers 12345 in line and in $12345$ math mode using the font Fira Sans.\\
Some math:
\begin{align*}
\lim_{n \to \infty} \sum_{k=0}^4 a_0 q^k
\end{align*}
\end{document}
您也可以\mathrm
随后使用 进行修复\setmathrm
,正如\usepackage[sfdefault]{FiraSans]
应该做的那样。
\documentclass[]{article}
\usepackage[sfdefault]{FiraSans}
\setmathrm{Fira Sans}
\usepackage{newtxsf}
\begin{document}
Writing numbers 12345 in line and in $12345$ math mode using the font Fira Sans.\\
Some math:
\begin{align*}
\lim_{n \to \infty} \sum_{k=0}^4 a_0 q^k
\end{align*}
\end{document}