`

Android--图片像素信息的修改.(透明度,RGB)

阅读更多
一张图片,可以通过getPixels()将所有的像素信息加载到一个int[]中. 所以我们可以通过修改这个数组中的信息从而达到修改图片的目的.

像素点的信息为ARGB.32位.最高8位为透明度信息.所以如果想要修改该透明度就只修改这8为的信息即可.

int[] array; int x, y;

array[x+y*width]=0. 则此像素点位完全透明.

如果是要获得或者判断的话. 通过公式 :(原来的颜色&0x00FFFFFF)|0x透明度000000 即可

例: array[x+y*width] >>> 24 这个取到的就是像素点的透明度信息.

array[x+y*width] = (array[x+y*width] & 0x00FFFFFF ) | 0xAF000000; 则是修改像素点的透明度信息

根据这些就基本可以达到自己想要的效果了. RGB类同.  width是要操作区域的宽.即为getPixels()里填的width信息

修改完毕后就可以通过createBitmap 来创建图像了
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics