Codice per gomma trasparente mediante globalCompositeOperation "destinazione-out" e "source-over"
var handleMouseMove = function (event) {
midPt = new createjs.Point(oldPt.x + stage.mouseX>>1, oldPt.y+stage.mouseY>>1);
if(curTool.type=="eraser"){
var tempcanvas = document.getElementById('drawcanvas');
var tempctx=tempcanvas.getContext("2d");
tempctx.beginPath();
tempctx.globalCompositeOperation = "destination-out";
tempctx.arc(midPt.x, midPt.y, 20, 0, Math.PI * 2, false);
tempctx.fill();
tempctx.closePath();
tempctx.globalCompositeOperation = "source-over";
drawingCanvas.graphics.clear();
// keep updating the array for points
arrMidPtx.push(midPt.x);
arrMidPty.push(midPt.y);
stage.addChild(drawingCanvas);
stage.update();
}
ho usato easeljs qui tuttavia il codice è indipendente da esso e può essere integrato con qualsiasi JavaScript disegno tela html5 codice
Non funziona. Le alambicchi "matita di gomma" disegnano su rosso (il colore della matita da disegno reale). – Valentina
prova a impostare il colore semplicemente come "trasparente" (http://dev.w3.org/csswg/css3-color/#transparent), o forse 'strokestyle' invece di' fillstyle' – Javier
= (Nulla. Ho già provato entrambi context.strokeStyle = "rgba (0,0,0,0)"; context.fillStyle = "rgba (0,0,0,0)"; Qualche idea? – Valentina