为了账号安全,请及时绑定邮箱和手机立即绑定

改变像素的值后显示效果没变

我给imgdata的值改变了值,全部变成0了,按理说应该显示为黑色,但是为什么绘制出来还是我当初get的那个图像呢?

for(var i=0;i<canvasb.width*canvasb.height;i++)

{

pixelData[4*i+0]=0;

pixelData[4*i+1]=0;

pixelData[4*i+2]=0;

}

contextb.putImageData(imgdata,0,0,0,0,800,800);


正在回答

1 回答

首先你封装的函数 filter应该在上面调用一下   写了没调用是无效,

其次你封装的函数也有问题,

for(var i=0;i<canvasb.width*canvasb.height;i++)

{

pixelData[4*i+0]=0;

pixelData[4*i+1]=0;

pixelData[4*i+2]=0;

}

应该是

for(var i=0;i<canvasa.width;i++){

for (var j=0;j<canvasa.height;j++) {

var p=i*canvassa.width+j;

pixelData[4*p+0]=0;

pixelData[4*p+1]=0;

pixelData[4*p+2]=0;

}

}

ctb.putImageData(imgD,0,0,0,0,canvasb.width,canvasb.height);


0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

改变像素的值后显示效果没变

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信