
Zapamiętywanie obrazów
Postępowanie:
- Na
canvasrysujemy obrazek - Zapisujemy
canvasprzy użyciu funkcjitoDataURL()
Bity obrazka są zamieniane na ciąg znaków zawierający 64 znaki (kodowanie Base64).
- Ciąg znaków oglądamy przekazując go do elementu <p>
Listing
function drawHeart(ctx, x, y, w, h){
var x0 = x + 0.5 * w;
var y0 = y + 0.3 * h;
var x1 = x + 0.1 * w;
var y1 = y //+ 0 * h;
var x2 = x //+ 0 * w;
var y2 = y + 0.6 * h;
var x3 = x + 0.5 * w;
var y3 = y + 0.9 * h;
var x4 = x + 1 * w;
var y4 = y + 0.6 * h;
var x5 = x + 0.9 * w;
var y5 = y //+ 0 * h;
ctx.moveTo(x0, y0);
ctx.bezierCurveTo(x1, y1, x2, y2, x3, y3);
ctx.bezierCurveTo(x4, y4, x5, y5, x0, y0);
};
var cv = document.getElementById('canvas');
var ctx = cv.getContext('2d');
ctx.beginPath();
ctx.lineWidth = 5;
ctx.fillStyle = "rgb(255,0,0)";
drawHeart(ctx,20,20,200,200);
ctx.fill();
var dataURL = cv.toDataURL();
var doc = document.getElementById("heartData");
doc.innerHTML="heartData:" + dataURL;
