你的位置:首页 > 网页设计

[网页设计]canvas图像保存


很多时候绘制完成的图片需要保存,那么我们就可以使用到Canvas API来完成这最后一步!

Canvas API使用toDataURL方法把绘画的状态输出到一个data URL中然后重新装载,然后我们就可以把重新装载后的文件直接保存。


Canvas API保存文件的原理实际上就是把我们绘画的状态动态输出到一个data URL地址所指向的数据中的过程。

什么是data URL?
data URL实际上就是base64位编码的URL,主要用于小型的,可以在网页中直接嵌入,而不需要从外部嵌入数据,比如img元素里面的图像。

data URL的格式“data:image/jpeg;base64,/9j/....”

toDataURL的使用方法
canvas。toDataURL(type);
这个方法使用一个参数type,表示输出数据的MIME类型。
什么是MIME类型:
jpg image/jpeg

 

<!DOCTYPE html><html>  <head>    <meta charset="utf-8">    <title>canvas图像保存</title>    <script src="js/canvas.js" type="text/javascript" charset="utf-8"></script>      </head>  <body onload="draw('canvas')">  <canvas id="canvas" width="400" height="300"></canvas>    </body></html>

 

function draw(id){  var canvas = document.getElementById(id);  var context = canvas.getContext('2d');  context.fillStyle = "green";  context.fillRect(0,0,400,300);  window.location = canvas.toDataURL('images/jpeg');}