从客户端DOM序列化SVG的最佳方法是什么?

tst*_*bme 5 javascript php ajax svg png

我正在开发交互式SVG/AJAX接口,用户可以在其中创建和重新定位元素.我想支持用户将当前视图导出为PNG图像和/或SVG文档的功能.我真的希望SVG文档尽可能简单(没有很多嵌套转换).是否有任何框架已经支持这个?

我目前要求我的用户使用Ctrl + Alt + PrntScrn技术,我不想让他们安装任何软件/插件.

服务器端代码现在用PHP实现,如果这有帮助的话.我已经实现了使用ImageMagick从"原始"文档(在客户端进行任何修改之前)生成PNG图像的功能.

sav*_*wer 11

我假设你只需要在支持SVG的浏览器中使用它.

Firefox,Safari和Opera提供非标准XMLSerializerAPI,因此您可以执行以下操作:

var svg = document.getElementById('svg_root'); // or whatever you call it
var serializer = new XMLSerializer();
var str = serializer.serializeToString(svg);
Run Code Online (Sandbox Code Playgroud)

从那里,您可以将其发送到服务器并接收PNG作为回报.

这是Mozilla关于从DOM序列化XML的开发者页面.