создание пустого растрового изображения и рисование через холст в Android - PullRequest
94 голосов
/ 14 апреля 2011

Я хотел бы создать пустое растровое изображение и установить для него холст, а затем нарисовать любую фигуру на растровом изображении.

Ответы [ 2 ]

181 голосов
/ 14 апреля 2011

Это, вероятно, проще, чем вы думаете:

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

Вот серия уроков, которые я нашел по теме: Рисование с помощью Canvas Series

0 голосов
/ 26 декабря 2013

Не использовать Bitmap.Config.ARGB_8888

Вместо этого используйте 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 может вызвать проблемы с OutOfMemory при работе с большим количеством растровых изображений или с большими растровыми изображениями. Или еще лучше, попробуйте избежать использования самой опции ARGB.

...