Android - 更改位图的像素颜色

时间:2017-06-13 13:05:32

标签: android bitmap pixel android-bitmap

Namastey,

我想将这些黑色像素更改为位图中的透明像素。 我的位图看起来像下面的图像。

我尝试通过以下代码更改这些黑色像素。但它不适合我。

    int [] allpixels = new int [maskImage.getHeight()*maskImage.getWidth()];
    maskImage.getPixels(allpixels, 0, maskImage.getWidth(), 0, 0, maskImage.getWidth(), maskImage.getHeight());
    for(int i = 0; i < allpixels.length; i++){
        if(allpixels[i] == Color.BLACK){
            allpixels[i] = Color.TRANSPARENT;
        }
    }
    maskImage.setPixels(allpixels, 0, maskImage.getWidth(), 0, 0, maskImage.getWidth(), maskImage.getHeight());

可以这样做吗? 如果是的话,我该怎么做?

enter image description here

1 个答案:

答案 0 :(得分:-1)

使用此代码,就像魅力一样:

int [] allpixels = new int [myBitmap.getHeight()* myBitmap.getWidth()];  myBitmap.getPixels(allpixels,0,myBitmap.getWidth(),0,0,myBitmap.getWidth(),myBitmap.getHeight());

for(int i = 0; i&lt; allpixels.lenght; i ++)

{ 
if(allpixels[i] == Color.BLACK)
{ 
    allpixels[i] = Color.RED;
} 

}

myBitmap.setPixels(allpixels,0,myBitmap.getWidth(),0,0,myBitmap.getWidth(),
    myBitmap.getHeight());