如何从画布的imagedata读取值

时间:2016-10-14 08:32:00

标签: javascript canvas alpha-transparency

如果我这样做:

ctx.fillStyle = 'rgba(100,200,50,0.5)';  
ctx.fillRect(0,0,1,1);

然后a:

var imageData = ctx.getImageData(0,0,1,1);
console.log(imageData.data;

我得到:

>>[50,100,25,254]

我的问题是:为什么254为alpha? 我试验fillStyle中的任何alpha值,但0和1导致254 值为0或1会导致日志为255!

1 个答案:

答案 0 :(得分:1)

当您以透明方式填充区域时,实际上并未使用您使用的颜色填充区域,而是将其与背景颜色混合。 254可能只是一个轻微的舍入错误。