HTML代码:
<div id="chart"></div>
<div id="canvas-option">
<label>File Name :
<input type="text" id="canvas-filename" placeholder="image"/>.png</label>
<input type="submit" value="Save">
</div>
脚本代码:
var canvas = d3.select("#chart").append("svg")
.attr("id","svg_graph")
.attr("width",width)
.attr("height",height);
> canvas_option_form = $("canvas-option"), canvas1 = $("chart"),
> canvas_filename=$("canvas-filename")
> canvas_option_form.addEventListener("submit",function(event) {
> event.preventDefault(); canvas1.toBlob(function(blob) {
> saveAs(blob,(canvas_filename.value ||
> canvas_filename.placeholder)+".png"); },"image/png"); },false);
因此,我希望它svg保存为png或任何其他图像格式在本地机器。
发布于 2017-07-13 11:15:07
有一个NPM包可以做到这一点。它被称为svg-2-image。如果你使用AngularJS,还有一种叫做d3-to-image的方法。
看看这个:
https://www.npmjs.com/package/svg-2-image和https://www.npmjs.com/package/d3-to-image
https://stackoverflow.com/questions/22166232
复制相似问题