我正在使用MathJax在浏览器中呈现mathml标记。我使用TeX-AMS-MML_SVG配置在Chrome中运行良好,但这在IE8中不起作用。
如果我切换到TeX-AMS-MML_HTMLorMML,它在所有浏览器中都能正常工作。然而,SVG渲染看起来好多了,所以在可能的情况下我希望它更受欢迎。
MathJax有内置任何东西来支持这个吗?它似乎可以从MML回退到HTML而不是SVG到HTML。我可以通过javascript检查SVG支持,但我希望MathJax配置中已经存在一些我缺少的东西。
以下是common configurations的文档。我正在寻找类似MML_SVGorHTML配置的东西。
答案 0 :(得分:1)
请参阅MathJax User's Forum上有关描述方法的讨论。基本上,
<script type="text/x-mathjax-config">
if (MathJax.Hub.Browser.isMSIE && (document.documentMode||0) < 9) {
MathJax.Hub.Register.StartupHook("End Config",function () {
var settings = MathJax.Hub.config.menuSettings;
if (!settings.renderer) {settings.renderer = "HTML-CSS"}
});
}
</script>
负责旧版本的IE,这是目前唯一没有进行SVG的浏览器。
答案 1 :(得分:1)
我目前正在测试此方法,该方法是手动检查svg支持:
function supportsSvg() {
return !!document.createElementNS &&
!!document.createElementNS('http://www.w3.org/2000/svg', "svg").createSVGRect;
}
var mathjaxConfig = (supportsSvg()) ? 'TeX-AMS-MML_SVG' : 'MML_HTMLorMML';
然后你可以将mathjaxConfig正常插入url:
"../MathJax.js?config=" + mathjaxConfig
答案 2 :(得分:-1)
您可以使用Walter Zorn's drawing library。它将所有内容呈现为DIV。