ピクセル操作の習慣を身に付けようとしているだけで、何も変わりません。
次のループを使用して、各ピクセルを反転します。
var newImage = context.createImageData(canvas.width, canvas.height);
var arr = context.getImageData(0, 0, canvas.width, canvas.height);
var pixels = arr.data;
for(var i = 0; i < pixels.length; i+=4){
var r = 255 - pixels[i];
var g = 255 - pixels[i + 1];
var b = 255 - pixels[i + 2];
var a = pixels[i + 3];
newImage.data[i] = r;
newImage.data[i + 1] = g;
newImage.data[i + 2] = b;
newImage.data[i + 3] = a;
}
それでも、キャンバスをクリアして書き直そうとしても、何も起こりません:
context.clearRect(0, 0, canvas.width, canvas.height);
context.putImageData(newImage, 0, 0);
なぜこれが機能しないのですか?私は何を間違っていますか?