Gostaria de criar um bitmap vazio e definir uma tela para esse bitmap e, em seguida, desenhar qualquer forma no bitmap.
Gostaria de criar um bitmap vazio e definir uma tela para esse bitmap e, em seguida, desenhar qualquer forma no bitmap.
Respostas:
Isso provavelmente é mais simples do que você está 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
Aqui está uma série de tutoriais que encontrei sobre o tema: Desenhando com a série Canvas
Não use Bitmap.Config.ARGB_8888
Em vez disso, use 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 pode levar você a problemas de OutOfMemory ao lidar com mais bitmaps ou bitmaps grandes. Ou melhor ainda, tente evitar o uso da opção ARGB em si.