【发布时间】:2012-09-20 17:43:34
【问题描述】:
我注意到 math.SE 使用 mathjax 并且有蓝色的方程式。
注意无穷大符号的颜色。
但是人们会期望它保持黑色,因为 - 如此处所述:How to change equations color in MathJax - 这些符号实际上是不影响颜色的图像。像这样:
那么,它们如何改变这些图像的颜色呢?我认为这是不可能的。
【问题讨论】:
标签: mathjax
我注意到 math.SE 使用 mathjax 并且有蓝色的方程式。
注意无穷大符号的颜色。
但是人们会期望它保持黑色,因为 - 如此处所述:How to change equations color in MathJax - 这些符号实际上是不影响颜色的图像。像这样:
那么,它们如何改变这些图像的颜色呢?我认为这是不可能的。
【问题讨论】:
标签: mathjax
MathJax 现在应该只在极少数情况下使用图像模式。主要是当您使用 Firefox 查看本地文件(通过 file:// url)并且 MathJax 与正在查看的 HTML 文件不在同一目录中时。在这种情况下,Firefox 的同源策略认为 MathJax 位于单独的域中,因此无法访问基于 Web 的字体,因为它认为这是跨域访问。所以 MathJax 使用图像字体作为后备,因为它不能使用基于 Web 的字体。我猜这就是你正在发生的事情。
Math.SE 没有这个问题,因为它不是 file:// url,而且 Firefox 识别域是什么也没有问题,所以你得到实际的基于 Web 的字体而不是图像,它们可以着色正确(与图像不同)。 Math.SE 不需要做任何特别的事情来实现这一点,而且您不是看到彩色图像,而是实际的字体。这就是与您的未着色示例的区别。
解决 Firefox 本地文件问题的方法是在系统的字体文件夹中安装 STIX fonts 或 MathJax 自己的 OTF 字体。您可以在本地安装的 MathJax 发行版的 MathaJax/fonts/HTML-CSS/TeX/otf 目录中找到 MathJax 字体。如果这些在您的系统上可以作为实际字体使用,MathJax 就不必使用基于 Web 的版本,因此它可以避免 Firefox 的同源策略问题。这也将加速任何使用 MathJax 的页面(如 Math.SE),因为它不必通过网络下载字体。
【讨论】:
~/Library/Fonts 目录。在 unix 上,我认为您将它们放在 ~/.fonts 中。我假设您正在使用 Firefox 在本地开发网页(使用file:// URL)。如果不是这样,您能否详细介绍一下您的设置?