使用JavaScript的HTML前端SVG导出下载

Alf*_*ang 3 html javascript html5 svg http

我正在使用highcharts创建SVG图表。因此,该图表显示在前端,带有svgHTML标记。

现在,我想将该图表导出为SVG文件。


我的努力

由于SVG纯粹是在前端生成的,因此后端对此一无所知。而且,如果我想使用某些内容来初始化下载,那么我所知道的就是对内容进行HTTP响应。

因此,我可以简单地将SVG内容捕获为字符串,然后使用HTTP请求上传它,然后按原样响应内容。


我要更好

我认为从逻辑上讲,无需通过这种方式进行转移,因为前端知道我们想要的一切。

我寻求您的帮助:是否可以在前端初始化下载?

Jun*_*Dev 5

您可以使用SVG数据的base64编码版本直接生成下载链接。

您只需要data:application/octet-stream;base64,在base64编码数据之前添加。

这是一个简单的小提琴来演示;

http://jsfiddle.net/xkbhf7mo/

编辑: 您还可以download在锚标记中指定具有属性的文件名,以使事情更加美观。

<a download="your_file_name" href='...'>Download</a>