xetex 中 unicode-math 的颜色

xetex 中 unicode-math 的颜色

我的问题是基于以下示例这里在第二个答案中。实际上,我unicode-math很久以前就发现了这个功能,但怀疑我做错了什么。

使用设置数学字体的颜色\setmathfont会改变所有字母和符号的颜色,但不会改变分数、平方根等的水平线的颜色。这是相当出乎意料的行为。问题是,这是一个错误还是一个功能。如果这是一个功能,如何改变这些元素的颜色?

最小奇怪的工作示例:

\documentclass{article}
\usepackage{fontspec}
\setmainfont[Color=000000]{XITS}
\usepackage{unicode-math}
\setmathfont[Color=FF0000]{XITS Math}

\begin{document}
A bunch of text, then an equation.
\[
 N^2 = -\frac{g}{\rho_0} \frac{\partial \rho}{\partial z} ,\;\;\;\;
 N = \sqrt{-\frac{g}{\rho_0} \frac{\partial \rho}{\partial z}}
\]
\end{document}

为我产生以下结果: 在此处输入图片描述

答案1

XeTeX 字体颜色功能仅为指定字体的字形着色,中间的非字形材料不受影响,这里的分数和根号规则就是此类材料的一个例子(它们是 TeX 绘制的水平规则,而不是字体字形)。

要给整个等式着色,您必须使用通用文本着色包。

答案2

我使用它来创建具有透明背景的白色方程式:

\everymath{\color{white}}
\everydisplay{\color{white}}

編輯:埃菲克包裹没有必要,我的错。

相关内容