Hallo,
ich habe eine Bitmap mit rosa Hintergrund ( Argb (255,238,112,205)). Den rosa Hintergrund möchte ich praktisch aus dem Bild filtern, sodass nur das eigentliche Bild sichtbar ist. Dafür laufe ich jeden Pixel von dem Bild ab und schaue, ob seine Darbe gleich der Hintergrundfarbe ist.
Hier mein Code:
So wird der aber Hintergrund schwarz.
Woran liegt das?
Danke im Voraus.
ich habe eine Bitmap mit rosa Hintergrund ( Argb (255,238,112,205)). Den rosa Hintergrund möchte ich praktisch aus dem Bild filtern, sodass nur das eigentliche Bild sichtbar ist. Dafür laufe ich jeden Pixel von dem Bild ab und schaue, ob seine Darbe gleich der Hintergrundfarbe ist.
Hier mein Code:
Java:
private Bitmap removeBackground() {
int pixel,redValue,blueValue,greenValue,alpha = 0;
birdSprite = birdSprite.copy(Bitmap.Config.ARGB_8888, true);
for(int i=0; i<birdSprite.getWidth(); i++) {
for(int j=0; j<birdSprite.getHeight(); j++) {
pixel = birdSprite.getPixel(i,j);
redValue = Color.red(pixel);
blueValue = Color.blue(pixel);
greenValue = Color.green(pixel);
alpha = Color.alpha(pixel);
if(alpha==255 && redValue == 238&& greenValue == 112 && blueValue == 205 ) {
Log.d("Hintergrund ", "Hintergrundpixel");
birdSprite.setPixel(i,j,Color.TRANSPARENT);
} else {
birdSprite.setPixel(i,j,pixel);
}
}
}
return birdSprite;
}
So wird der aber Hintergrund schwarz.
Woran liegt das?
Danke im Voraus.