鍍金池/ 問答/HTML5  HTML/ canvas的putimagedata后,再用getimagedata獲得的rg

canvas的putimagedata后,再用getimagedata獲得的rgba色值不對

canvas的putimagedata后,再用getimagedata獲得的rgba色值不對


let canvas = document.querySelector('#canvas');
let cxt = canvas.getContext('2d');
let imageData = cxt.createImageData(2,2);
for (var i=0;i<imageData.data.length;i+=4){

imageData.data[i+0]=64;
imageData.data[i+1]=55;
imageData.data[i+2]=235;
imageData.data[i+3]=133;

}
cxt.putImageData(imageData,0,0)


然后再getImageData
0:63
1:56
2:236
3:133
…………

這是在chrome下運(yùn)行的結(jié)果,在firefox下的結(jié)果也不一樣

真的是瘋了,業(yè)務(wù)中我需要準(zhǔn)確的色值,這樣子就完全做不下去了

有誰知道這是為什么,或者又什么解決辦法

回答
編輯回答
伐木累

看來是跟透明度有關(guān)系,非常不理解

2018年9月18日 04:16