0

我正在使用此函数将 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 在这种情况下似乎不起作用。

有什么线索吗?

谢谢丹尼尔

4

0 回答 0