画布有CSS属性background-color: #D3D3D3;
和一个属性ctx.fillStyle = "#000";
。这段JS代码需要保留描边并使其他部分透明背景。如何实现?
imageData = ctx.getImageData(0, 0, canvas.width, canvas.height).data;
let clearBack = imageData;
for (var i = 3; i < clearBack.length; i += 4) {
if (pixle is not black) { //if pixel belongs to the stroke leave it
clearBack[i] = 0;
}
}
a = imageData.data[i+4]
而不是[i+3]
?提出这个问题的原因是if块从未被执行。 - Fred J.