如何从 canvas 的图像数据中读取值
how to read values from imagedata of a canvas
如果我做一个:
ctx.fillStyle = 'rgba(100,200,50,0.5)';
ctx.fillRect(0,0,1,1);
然后是:
var imageData = ctx.getImageData(0,0,1,1);
console.log(imageData.data;
我得到:
>>[50,100,25,254]
我的问题是:为什么 alpha 是 254?
我试验 fillStyle 中的任何 alpha 值,但 0 和 1 导致 254
值 0 或 1 导致日志 255 !
透明填充区域时,实际上并没有用您使用的颜色填充它,而是将它与背景颜色混合。 254 可能只是一个很小的舍入误差。
如果我做一个:
ctx.fillStyle = 'rgba(100,200,50,0.5)';
ctx.fillRect(0,0,1,1);
然后是:
var imageData = ctx.getImageData(0,0,1,1);
console.log(imageData.data;
我得到:
>>[50,100,25,254]
我的问题是:为什么 alpha 是 254? 我试验 fillStyle 中的任何 alpha 值,但 0 和 1 导致 254 值 0 或 1 导致日志 255 !
透明填充区域时,实际上并没有用您使用的颜色填充它,而是将它与背景颜色混合。 254 可能只是一个很小的舍入误差。