Domanda creare una bitmap vuota e disegnare su tela in Android


Mi piacerebbe creare una bitmap vuota e impostare canvas su quella bitmap e quindi disegnare qualsiasi forma su bitmap.


83
2018-04-14 13:03


origine


risposte:


Questo è probabilmente più semplice di quello che stai pensando:

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

Ecco una serie di tutorial che ho trovato sull'argomento: Disegnare con la serie Canvas


165
2018-04-14 13:31



Non utilizzare Bitmap.Config.ARGB_8888

Invece usa     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 può atterrare nei problemi di OutOfMemory quando si ha a che fare con più bitmap o bitmap di grandi dimensioni. O meglio ancora, prova a evitare l'utilizzo dell'opzione ARGB stessa.


-3
2017-12-26 11:21