我希望能夠下載HTML5 canvas元素作爲帶有Javascript文件擴展名的圖像。將HTML5 canvas元素作爲帶有Javascript文件擴展名的圖像下載
CanvasToImage庫似乎不能實現這一點。
這是我的代碼到目前爲止,你可以看到在這JsFiddle。
<div id="canvas_container">
</div>
<p>
<a href='#' id="create_image">create</a>
<a href="#" id="download_image">download</a>
</p>
$("#create_image").click(function() {
var cnvs = createSmileyOnCanvas();
$('#canvas_container').append(cnvs);
});
$("#download_image").click(function() {
var img = $('#smiley_canvas').toDataURL("image/png");
var uriContent = "data:application/octet-stream," + encodeURIComponent(img);
window.open(uriContent, 'download smiley image');
});
function createSmileyOnCanvas() {
var canvas = document.createElement('canvas');
canvas.id = 'smiley_canvas';
var ctx = canvas.getContext('2d');
// Draw shapes
ctx.beginPath();
ctx.arc(75,75,50,0,Math.PI*2,true); // Outer circle
ctx.moveTo(110,75);
ctx.arc(75,75,35,0,Math.PI,false); // Mouth
ctx.moveTo(65,65);
ctx.arc(60,65,5,0,Math.PI*2,true); // Left eye
ctx.moveTo(95,65);
ctx.arc(90,65,5,0,Math.PI*2,true); // Right eye
ctx.stroke();
return canvas;
}
我以爲通過ajax創建功能,但我希望有一個客戶端解決方案。 – 2012-03-28 21:09:00
似乎只有Chrome支持下載屬性 - 雖然很酷。 http://html5-demos.appspot.com/static/a.download.html – 2012-03-28 21:33:25