JavaScript
语言:
JaveScriptBabelCoffeeScript
确定
function serializeXmlNode(xmlNode) {
if (typeof window.XMLSerializer != "undefined") {
return (new window.XMLSerializer()).serializeToString(xmlNode);
} else if (typeof xmlNode.xml != "undefined") {
return xmlNode.xml;
}
return "";
}
var exportPNG = function() {
/*
Based off gustavohenke's svg2png.js
https://gist.github.com/gustavohenke/9073132
*/
var svg = $("svg")[0];
var svgData = serializeXmlNode(svg);
var canvas = document.createElement("canvas");
canvas.width = 410;
canvas.height = 410;
var ctx = canvas.getContext("2d");
var dataUri = '';
try {
dataUri = 'data:image/svg+xml;base64,' + btoa(svgData);
} catch (ex) {
// For browsers that don't have a btoa() method, send the text off to a webservice for encoding
/* Uncomment if needed
$.ajax({
url: "http://www.mysite.com/webservice/encodeString",
data: { svg: svgData },
type: "POST",
async: false,
success: function(encodedSVG) {
dataUri = 'data:image/svg+xml;base64,' + encodedSVG;
}
})
*/
}
var img = document.createElement("img");
img.onload = function() {