【发布时间】:2011-05-04 12:18:22
【问题描述】:
有一张 3x3 的图片。 CanvasPixelArray 是:
[12,24,48,255,12,24,48,255,12,24,48,255,12,24,48,255,12,24,48,255,12,24,48,255,12,24,48,255,12,24,48,255,12,24,48,255]
我将所有像素的 alpha 更改为 0 并返回:
bobs = this.gfx.getImageData(0,0,3,3).data
for (a=3;a<bobs.data.length;a+=4)
bobs.data[a] = 0
this.gfx.putImageData(bobs,0,0)
bobs = this.gfx.getImageData(0,0,3,3).data
for (a=3;a<bobs.data.length;a+=4)
bobs.data[a] = 255
this.gfx.putImageData(bobs,0,0)
所有像素都变黑了。浏览器将颜色更改为黑色以节省内存。有没有办法防止这种情况发生或者我应该保存一个副本?
【问题讨论】:
-
您能详细说明一下上下文吗?你需要在哪里使用这个?在jsfiddle.net 有一个具体的例子可能会很酷。
标签: javascript html canvas getimagedata