Je voudrais créer un bitmap vide et définir une toile sur ce bitmap, puis dessiner n'importe quelle forme sur le bitmap.
Je voudrais créer un bitmap vide et définir une toile sur ce bitmap, puis dessiner n'importe quelle forme sur le bitmap.
Réponses:
C'est probablement plus simple que vous ne le pensez:
int w = WIDTH_PX, h = HEIGHT_PX;
Bitmap.Config conf = Bitmap.Config.ARGB_8888; // see other conf types
Bitmap bmp = Bitmap.createBitmap(w, h, conf); // this creates a MUTABLE bitmap
Canvas canvas = new Canvas(bmp);
// ready to draw on that bitmap through that canvas
Voici une série de tutoriels que j'ai trouvés sur le sujet: Dessiner avec la série Canvas
N'utilisez pas Bitmap.Config.ARGB_8888
Utilisez plutôt int w = WIDTH_PX, h = HEIGHT_PX;
Bitmap.Config conf = Bitmap.Config.ARGB_4444; // see other conf types
Bitmap bmp = Bitmap.createBitmap(w, h, conf); // this creates a MUTABLE bitmap
Canvas canvas = new Canvas(bmp);
// ready to draw on that bitmap through that canvas
ARGB_8888 peut vous poser des problèmes d'OutOfMemory lorsque vous traitez plus de bitmaps ou de gros bitmaps. Ou mieux encore, essayez d'éviter l'utilisation de l'option ARGB elle-même.