Могу ли я сохранить много растровых изображений в одном растровом изображении?(2d) - PullRequest
1 голос
/ 22 января 2012

У меня есть двумерный массив с кординатами для отображения двумерной карты. Они нарисованы на холсте. Это очень тяжело рисовать каждый раз, когда я хочу что-то изменить на своем холсте, так что я подумал, можно ли вместо цикла For-loop через 2d-массив, если бы я мог сохранить результат в первый раз, когда я это делаю, и восстанавливать из сохранения каждый раз, когда я изменял что-то другое, чем 2d-карту.

выглядит как canvas.save () и canvas.restore () можно вызывать только одинаково раз, поэтому я не могу сохранить первый вывод, а затем восстановить его 123 раза.

Я думал, можно ли сохранить холст каким-либо другим способом, возможно, сохранив первый результат в бип-карту?

Я знаю, что не могу «подправить» / «отредактировать» все, что уже нарисовано на холсте, карта никогда не меняется.

1 Ответ

1 голос
/ 24 января 2012

Хорошо, так что я понял это. Я могу нарисовать свой фон, содержащий много изображений, на одном растровом изображении с помощью canvas, это довольно просто.

Сначала создайте пустое растровое изображение с желаемой высотой int и шириной int, это будет растровое изображение, на которое вы будете рисовать все свои плитки (маленькие изображения).

Растровое изображение фона = Bitmap.createBitmap (ширина, высота, Bitmap.Config.ARGB_4444);

(Не уверен насчет синтаксиса Bitmap.Config.ARGB_4444, используйте подсказку) Затем создайте холст с новым Canvas (растровое изображение), это заставит холст записать в растровое изображение.

Холст холст новый Холст (фон);

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...