agenda-libre-ruby/public/webshims/shims/FlashCanvasPro/canvas2png.js

48 lines
1.2 KiB
JavaScript

/*
* canvas2png.js
*
* Copyright (c) 2010-2013 Shinya Muramatsu
* Released under the MIT License
* http://flashcanvas.net/
*/
(function(doc) {
var scripts = doc.getElementsByTagName("script");
var script = scripts[scripts.length - 1];
var url = script.getAttribute("src").replace(/[^\/]+$/, "save.php");
window.canvas2png = function(canvas, filename) {
var tagName = canvas.tagName.toLowerCase();
if (tagName !== "canvas") {
return;
}
if (typeof FlashCanvas !== "undefined") {
FlashCanvas.saveImage(canvas, filename);
} else {
var action = url;
if (filename) {
action += "?filename=" + filename;
}
var form = doc.createElement("form");
var input = doc.createElement("input");
form.setAttribute("action", action);
form.setAttribute("method", "post");
input.setAttribute("type", "hidden");
input.setAttribute("name", "dataurl");
input.setAttribute("value", canvas.toDataURL());
doc.body.appendChild(form);
form.appendChild(input);
form.submit();
form.removeChild(input);
doc.body.removeChild(form);
}
}
})(document);