除 unicode-math 包外,还提供了带有“非数学字体”的数学版本

除 unicode-math 包外,还提供了带有“非数学字体”的数学版本

我正在编写一个文档,该文档主要使用 STIX TWO 字体排版并通过 进行编译XeLaTeX。数学模式通过 配置unicode-math

在某些情况下,我需要 Arial/Helvetica/Tex Gyre Heros 类型的无衬线字体。 (如果这些部分看起来有点粗糙也没关系,也就是说,缺少的 scshape 根本没有问题。我想手动注释本身以 Arial 设置的图表。)

对于普通文本字体,我设置了一个newfontface。现在我想对数学字体做同样的事情,我试图通过定义专用的来实现mathversion。不幸的是,这会阻止使用unicode-math范围参数,因为rangeversion不能很好地协同工作。

由于没有这样的数学字体(使用 Fira Math 编译,但看起来与 Arial 完全不同),我尝试使用 NFSS 命令进行该版本的定义。

最终,失败了:

LaTeX Font Warning: Font shape `TU/Arial/m/n' undefined
(Font)              using `TU/lmr/m/n' instead on input line 29.

! Math formula deleted: Insufficient symbol fonts.
\resetMathstrut@ ->\setbox \z@ \hbox {$($
                                         }\ht \Mathstrutbox@ \ht \z@ \dp \Ma...
l.29 \begin{equation}

我整理了一个最小的例子来说明我的问题:

\documentclass[english]{scrartcl}
\usepackage[math-style=ISO, bold-style=ISO]{unicode-math}

\defaultfontfeatures{Scale = MatchUppercase}
\setmainfont[Scale=0.97]{STIX Two Text}
\setmathfont[Scale=0.97]{STIX Two Math}
\setsansfont[Scale=1.07]{Libertinus Sans}

\newfontface\rootsans{Arial}
%\setmathfont[version=rootsans]{Fira Math} % <-- This works but Fira!=Arial

\DeclareMathVersion{rootsans} %<-- Tried an alternative approach, so far without success
\SetSymbolFont{letters}{rootsans}{TU}{Arial}{m}{n}
\SetSymbolFont{operators}{rootsans}{TU}{Arial}{m}{n}
\SetSymbolFont{symbols}{rootsans}{TU}{Arial}{m}{n}
\SetSymbolFont{largesymbols}{rootsans}{TU}{Arial}{m}{n}
\SetMathAlphabet{\mathrm}{rootsans}{TU}{Arial}{m}{n}

\begin{document}

\textsc{Euler}'s identity in normal mode:
\begin{equation}
e^{i\phi} + 1 = 0
\end{equation}

\rootsans
\mathversion{rootsans}
\textsc{Euler}'s identity with special font setting: 
\begin{equation}
e^{i\phi} + 1 = 0
\end{equation}
\end{document}

如果我省略mathversion一切,但公式(2)与前一行不匹配。

我能做什么吗?或者我是否必须使用 Fira Math 作为 Arial 的伴侣?

答案1

不太清楚您想如何将文本模式用作数学模式(如果我理解正确的话),但您必须“手动”进行布局,或创建一组“文本作为数学”命令\setmathfontface(常规,斜体,粗体等)。

此处,版本采用了 Noto Sans Math 和 Fira Math;以及手写的 Arial(它没有专门的数学 Unicode 块,但幸运的是其中包含希腊语和拉丁语作为文本)。

例子

注意

相关内容