Aller au contenu

Griser un bitmap


TsCyrille

Recommended Posts

Posté(e)

Bonjour.

J'ai dans mes ressources une image PNG.

Dans mon code je la récupère afin de la dessiner dans un Canvas. Voci mon code :

Bitmap icon = BitmapFactory.decodeResource( getResources( ), resourceID);
canvas.drawBitmap( icon, 0, 0, null );

Mais j'aimerais griser cette icone (cad enlever les couleurs...). Est-ce possible ?

Merci d'avance

Posté(e)

public Bitmap toGrayscale(Bitmap bmpOriginal)
{        
   int width, height;
   height = bmpOriginal.getHeight();
   width = bmpOriginal.getWidth();    

   Bitmap bmpGrayscale = Bitmap.createBitmap(width, height, Bitmap.Config.RGB_565);
   Canvas c = new Canvas(bmpGrayscale);
   Paint paint = new Paint();
   ColorMatrix cm = new ColorMatrix();
   cm.setSaturation(0);
   ColorMatrixColorFilter f = new ColorMatrixColorFilter(cm);
   paint.setColorFilter(f);
   c.drawBitmap(bmpOriginal, 0, 0, paint);
   return bmpGrayscale;
}

(source http://stackoverflow.com/questions/3373860/convert-a-bitmap-to-grayscale-in-android)

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...