在IE浏览器中无法将SVG下载为PNG格式

3

我在d3中创建了一个图表。根据我的要求,我必须允许所有浏览器下载为PNG格式。我正在使用saveSvgAsPng.js实现。

saveSvgAsPng(document.getElementById("sample"), "sample.png", { width: '50%' });

我可以在Chrome和Firefox中下载它,但是无法在IE中下载。在检查控制台时,我收到以下错误消息:未知字体格式https://fonts.googleapis.com/css?family=Karla;字体可能无法正常工作。在此浏览器中,无法下载渲染的SVG图像。我不知道是否遗漏了任何要传递的参数。

可能是这样吗?如果没有传递canvg,Internet Explorer将无法工作,否则在调用已写入的画布上的toDataURL时会抛出SecurityError。来自saveSvgAsPng - William-H-M
有任何想法如何发送canvg吗? - anand
1个回答

1
根据saveSvgAsPng GitHub,如果不传递canvg,Internet Explorer将无法正常工作,否则在调用已写入画布的toDataURL时会抛出SecurityError。因此,您必须包含canvg脚本并将其作为参数传递。
var svg = document.querySelector('sample');
saveSvgAsPng(svg, "sample.png", {canvg:window.canvg});

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接