Bonjour à tous.
Je souhaite modifier des images dans mon programme Java, en modifiant la matrice de l'image. J'utilise donc la classe Pixelgrabber, comme ceci :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
//récupère l'image sous forme de tableau d'entier
            int[] tab = new int[width * height];
            PixelGrabber pg = new PixelGrabber(image, 0, 0, width, height, tab, 0, width);
            try {
                pg.grabPixels();
            }catch(InterruptedException e){System.err.println("interrupted waiting for pixels!");}
pour récupérer les composantes rougze, vert, bleu de chaque pixel, pas de problème je fais comme ça :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
int pix=tab[i*width+j];
int red   = (pix >> 16) & 0xff;
int green = (pix >>  8) & 0xff;
int blue  = (pix      ) & 0xff;
Mais mon problème, c'est pour créer une nouvelle couleur, par exemple le rouge qui serait identifié par [255 , 0 , 0], et ranger ces trois valeurs dans un seul entier. Est-il possible ?

Merci beaucoup

Laurent