canvas.toDataUrl的问题:当画布包含带有base64数据的标记图像时出错

时间:2017-04-27 13:44:05

标签: javascript canvas svg todataurl canvg

我正在使用此函数将svg转换为jpeg(包括canvg):

    svgToDataUrl(svg, format = 'jpeg') {
        var id = new Date();
        var canvasElement = $(`<canvas id="${id}" width="1198px" 
height="1694px"></canvas>`).appendTo('#resultsInterface');
        let canvas = canvasElement[0];
        window.canvg(canvas, svg);
        var imgData = canvas.toDataURL(`image/${format}`, 0.98);
        canvasElement.remove();
        return imgData;
     }

先前生成的SVG图像中的SVG变量。 现在,它可以正常工作,但是,如果SVG包含带有base64格式的href的标记:

<image xlink:href="data:image/png;base64,iVBORblablabla..."></image>

结果是空白的。我试图检查生成的画布(在它被删除之前)并且很好但是由于某种原因,canvas.toDataURL在这种情况下似乎不起作用。

有任何线索吗?

由于 丹尼尔

0 个答案:

没有答案