Canvas.toDataURL()无法在IE中使用Canvas中的SVG内容

时间:2014-11-20 14:34:22

标签: javascript jquery internet-explorer canvas svg

我有svg内容,我想在画布上绘制这个svg。然后我想要canvasUR的dataURL但是IE给出了SecurityError的错误。我花了一整天但我没有做对thing.Below是我到目前为止所做的代码。

var canvas = document.getElementById("canvas");
canvas.setAttribute("height", 500);
canvas.setAttribute("width", 500);
var ctx = canvas.getContext("2d");
var DOMURL = self.URL || self.webkitURL || self;
var img = new Image();
var svg = new Blob([svgString], { type: "image/svg+xml;charset=utf-8" });
var url = DOMURL.createObjectURL(svg);

img.onload = function () {
    ctx.drawImage(img, 0, 0);
    var image = canvas.toDataURL('image/png'); 
 };

img.onerror = function () {
 };

img.src = url;

在上面的代码中,一切都在mozilla和chrome中正常工作,但IE在canvas.toDataURL上出错。我怎样才能解决这个问题??请帮助我,并提前感谢。

1 个答案:

答案 0 :(得分:0)

我使用Canvg.js

解决了这个问题