Descargar imagen de canvas con un boton
Publicado por anonymous (50 intervenciones) el 25/02/2017 10:04:58
Lo que pasa es que tengo un canvas y quiero agregar un botón que descargue lo que tiene el canvas
Valora esta pregunta
0
<a id="download" download="Canvas.png">Download Canvas</a>
<script>
var canvas = document.getElementById("canvasSimpleOutline");
function downloadCanvas() {
var data = canvas.toDataURL('image/png');
/* Change MIME type to trick the browser to downlaod the file instead of displaying it */
data = data.replace(/^data:image\/[^;]*/, 'data:application/octet-stream');
/* In addition to <a>'s "download" attribute, you can define HTTP-style headers */
data = data.replace(/^data:application\/octet-stream/, 'data:application/octet-stream;headers=Content-Disposition%3A%20attachment%3B%20filename=Canvas.png');
this.href = data;
};
document.getElementById("download").addEventListener('click', downloadCanvas, false);
</script>
<a id="download">
<input type="button" value="Descargar" onClick="descargar()">
</a>
var canvas = document.getElementById("miCanvas");
function descargar(){
var filename = prompt("Guardar como...","Nombre del archivo");
if (canvas.msToBlob){ //para internet explorer
var blob = canvas.msToBlob();
window.navigator.msSaveBlob(blob, filename + ".png" );// la extensión de preferencia pon jpg o png
} else {
link = document.getElementById("download");
//Otros navegadores: Google chrome, Firefox etc...
link.href = canvas.toDataURL("image/png");// Extensión .png ("image/png") --- Extension .jpg ("image/jpeg")
link.download = filename;
}
}