IE11中怎么把SVG下载为PNG格式保存到本地?

问题描述

有一个SVG图形,想通过点击一个按钮可以一键下载到本地,就IE不能兼容

问题出现的环境背景及自己尝试过哪些方法

我的想法是把SVG先转换成canvas,在通过canvas.msToBlob(),window.navigator.msSaveBlob(blob, 'svg.png');去下载,但是操作时转换成canvas就转换不了。
尝试过canvg.js这个插件,但是在IE下会报错。

let canvas = document.createElement("canvas");
canvas.width = width;
canvas.height = height;
let svgHtml=document.getElementById("container").innerHTML.trim();
canvg(canvas,svgHtml);

  let blob = canvas.msToBlob();
  window.navigator.msSaveBlob(blob, 'svg.png');

clipboard.png

相关代码

// 请把代码文本粘贴到下方(请勿用图片代替代码)

你期待的结果是什么?实际看到的错误信息又是什么?

有高手会解决这个问题嘛

阅读 2.9k
1 个回答

还是右键另存为实用

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题