来自画布的“DOM Exception 18”

时间:2012-12-11 22:24:29

标签: javascript html5 canvas svg

我正在拍摄一张SVG图像,将其绘制到画布上,并尝试通过toDataURL导出它,但Chrome正在向我抛出DOM Exception 18安全错误。我知道问题是因为我用数据URI方案(数据:image / svg + xml; base64)将SVG图像绘制到画布上,所以我猜浏览器将其视为跨域(即安全问题),但我想不出有任何其他方法可以将我的SVG内容放到画布上。我无法托管它,因为在需要通过toDataURL导出之前,SVG内容是动态的并且先被操作。

我通读了这里提出的其他一些类似的问题,但找不到解决问题的方法。

2 个答案:

答案 0 :(得分:3)

在Chrome中将任何 SVG绘制到canvas上,因为SVG 可能包含foreignObjecthere is the bug。 Chrome也存在data URI schemes and canvas的问题,因此您遇到了双重打击。

答案 1 :(得分:0)

我有同样的问题。作为一种解决方法,我使用SVG to HTML5 Canvas Converter将svg转换为canvas调用。