3

我正在尝试将 MathJax 集成到我的网络应用程序中。我想使用 MathJax 将方程渲染到 <canvas>

我已经能够诱使 MathJax 向 DOM 添加一个 < svg > 元素。但我不知道如何从 <svg> 到 canvas.ctx.drawImage()

我阅读了一些关于 XMLSerializing the < svg > 的帖子。但是当我(本地)执行以下操作时

svg = $('svg').eq(0)
asStr = new XMLSerializer().serializeToString(svg) ;

我从 Firefox 收到“安全错误”。

插入的 < svg > MathJax 的初始部分粘贴在下面

<svg><defs id="MathJax_SVG_glyphs"><path id="MJMAIN-24" stroke-width="10" d="M162 187Q162 164 146 149T109 

所以我想知道你是否可以帮助我了解是否

  1. < svg > 元素看起来不错,或者其中是否存在使 XMLSerialization 不可行的东西?
  2. 我怎样才能从上面开始到 ctx.drawImage()

谢谢阿比纳夫

4

1 回答 1

1

不能为 XMLSerializer 提供 jQuery 对象。我想你想要

asStr = new XMLSerializer().serializeToString(svg[0]) ;

所以你没有传递一些 jQuery 的东西。

于 2013-02-01T21:40:47.180 回答