javascript-获取画布笔划点
如何从画布笔划中获得黑点? 这里--画布上的所有点都是黑色的javascript-获取画布笔划点,javascript,canvas,Javascript,Canvas,如何从画布笔划中获得黑点? 这里--画布上的所有点都是黑色的 var c = document.getElementById("myCanvas"); var ctx = c.getContext("2d"); ctx.beginPath(); ctx.moveTo(20, 20); ctx.lineTo(20, 100); ctx.lineTo(70, 100); ctx.closePath(); ctx.stroke(); var imageData = ctx.getImageData(
var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
ctx.beginPath();
ctx.moveTo(20, 20);
ctx.lineTo(20, 100);
ctx.lineTo(70, 100);
ctx.closePath();
ctx.stroke();
var imageData = ctx.getImageData(0, 0, c.width, c.height);
var pix = imageData.data;
// Loop over each pixel and get the black pixels
for (var i = 0, n = pix.length; i < n; i += 4) {
if (pix[i] === 0 && pix[i+1] === 0 && pix[i+2] === 0) {
var x = (i / 4) % c.width;
var y = (i / 4) / c.width;
console.log("x=" + parseInt(x, 10) + ", y=" + parseInt(y, 10));
}
}
var c=document.getElementById(“myCanvas”);
var ctx=c.getContext(“2d”);
ctx.beginPath();
ctx.moveTo(20,20);
ctx.lineTo(20100);
ctx.lineTo(70100);
ctx.closePath();
ctx.stroke();
var imageData=ctx.getImageData(0,0,c.宽度,c.高度);
var pix=imageData.data;
//在每个像素上循环,得到黑色像素
对于(变量i=0,n=pix.length;i
您忘记检查alpha是否为非零(pix[i+3])透明像素为[0,0,0,0]谢谢!的确,你是对的!