可以以编程方式创建的svg元素保存为图像吗?

时间:2014-04-18 18:32:50

标签: javascript svg

如果我以编程方式创建一个SVG元素,我可以以编程方式将该元素保存为图像吗?

到目前为止我在Stackoverflow和Google上研究过的解决方案:

  • 让用户right-click-save-as

  • 第三方库可以将svg命令转换为canvas命令,并使用canvas.toDataURL保存画布

是否有以编程方式将SVG转换为图像的直接方式?

示例Javascript / SVG:

var svgns="http://www.w3.org/2000/svg";
var xlink='http://www.w3.org/1999/xlink'

var svg=document.createElementNS(svgns,"svg");
svg.setAttribute('width', 100);
svg.setAttribute('height', 100);

var e=document.createElementNS(svgns,"rect");
e.setAttribute("fill","skyblue");
e.setAttribute("stroke","lightgray");
e.setAttribute("stroke-width",4);
e.setAttribute("x",20);
e.setAttribute("y",20);
e.setAttribute("width",50);
e.setAttribute("height",50);
svg.appendChild(e);

document.body.appendChild(svg);

0 个答案:

没有答案