J'ai une application Android pour afficher une image sur une autre image, de sorte que la couleur blanche de la deuxième image soit transparente. Pour ce faire, j'ai utilisé deux ImageView
s, avec l'image originale pour être recouvert comme bitmap1
et l'image à rendre transparent comme bitmap2
. Quand je cours ceci, j'obtiens quelques exceptions à la méthode setPixel
.Rendre une couleur spécifique dans le bitmap transparent
Voici mon code:
Bitmap bitmap2 = null;
int width = imViewOverLay.getWidth();
int height = imViewOverLay.getHeight();
for(int x = 0; x < width; x++)
{
for(int y = 0; y < height; y++)
{
if(bitMap1.getPixel(x, y) == Color.WHITE)
{
bitmap2.setPixel(x, y, Color.TRANSPARENT);
}
else
{
bitmap2.setPixel(x, y, bitMap1.getPixel(x, y));
}
}
}
imViewOverLay
est le ImageView
de l'image de superposition. Une idée de ce qui pourrait mal se passer dans le code ci-dessus?
le code est bitmap bitmap2 = null; int width = imViewOverLay.getWidth(); int height = imViewOverLay.getHeight(); pour (int x = 0; x
asifkt
Essayez de modifier votre message pour ajouter le code au corps de la question ... – Frosty840
Quelle exception obtenez-vous? Autre que le fait que dans l'exemple vous ne créez pas 'bitmap2'. – ChrisF