Chrome与Firefox呈现unicode字符的差异 - MathJax

时间:2011-02-21 05:06:57

标签: firefox unicode google-chrome mathjax

我很难弄清楚为什么Chrome和Firefox会以不同的方式呈现某些内容。下面是我在Firefox(顶部)和Chrome(底部)中看到的项目的一部分图像。 MathJax在页面加载时呈现所有内容,一旦处理完所有内容并进行排版,它就会显示在页面上。所以我不确定这是否是我对MathJax错误的错。无论如何这里是图像...

Firefox Chrome

...如果你注意到,黑色边框的方形在Chrome中是不同的,并且方式不好。关于为什么会发生这种情况的任何想法?以下是Chrome控制台的输出...

Resource interpreted as font but transferred with MIME type image/svg+xml. /MathJax/fonts/HTML-CSS/TeX/svg/MathJax_Main-Regular.svg#MathJax_Main-Regular:-1
Resource interpreted as font but transferred with MIME type image/svg+xml. /MathJax/fonts/HTML-CSS/TeX/svg/MathJax_Main-Bold.svg#MathJax_Main-Bold:-1
Resource interpreted as font but transferred with MIME type image/svg+xml. /MathJax/fonts/HTML-CSS/TeX/svg/MathJax_Main-Italic.svg#MathJax_Main-Italic:-1
Resource interpreted as font but transferred with MIME type image/svg+xml. /MathJax/fonts/HTML-CSS/TeX/svg/MathJax_Math-Italic.svg#MathJax_Math-Italic:-1
etc...

单独渲染广场的代码,没有其他所有花哨的东西,相对简单......

<div id="square">
   <math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
     <mo id="tag0" class="expand">&#x25FB;</mo>
   </math>
</div>

...然后我告诉MathJax渲染它......

MathJax.Hub.Queue(["Typeset", MathJax.Hub, "square"]);

...而且MathJax做了它的事情(我无法控制MathJax的渲染)。所以我不太清楚问题出在哪里。

我知道这是一个非常奇怪且非常具体的问题但是我希望Stack Overflow社区中的某个人可能有一些想法或者之前处理过MathJax。希望一些头脑风暴能帮助解决这个问题。

3 个答案:

答案 0 :(得分:4)

您看到的框Chrome是“缺少字符”的符号。 MathJax字体不包含U + 25FB,因此Chrome显示缺少的符号。看起来Firefox正在使用不同的字体查找字符并使用它(或者你可能在运行Firefox的机器上有STIX字体但不是运行Chrome的字体,而MathJax正在使用它)。浏览器能够为不在MathJax字体中的符号查找替代字体。

在任何情况下,请尝试使用U + 25A1而不是U + 25FB,看看它是否适合您。

的Davide

答案 1 :(得分:1)

MathML将原生于Chrome,WebKit已经开展了一段时间了: http://www.webkit.org/projects/mathml/index.html

我想这个问题应该被标记为MathJax的错误。希望很快,就会有一个原生的解决方案。

答案 2 :(得分:0)

我没有真正的答案,但浏览器之间的渲染差异并不是什么新鲜事。我使用Firefox,Chrome,Opera,IE(按此顺序),其中一个浏览器通常比其他浏览器更好。 Firefox有一些很好的调试插件,你可以尝试那些(Firebug ???)。警告:您可能会花费很多精力。如果你开始对CSS进行故障排除,请:) :.