Показать сообщение отдельно
Старый 07.06.2015, 04:33
meiciuc вне форума Посмотреть профиль Отправить личное сообщение для meiciuc Найти все сообщения от meiciuc
  № 33  
Ответить с цитированием
meiciuc

Регистрация: Nov 2005
Сообщений: 149
в одном из сообщений выше я давал ссылку на Алхимический проект - сейчас даю уточняющую ссылку - https://code.google.com/p/in-spirit/wiki/PNGEncoder

там как раз то, что нужно - возможность склеивать ну просто огромные картинки

пару лет назад у меня был проект, где надо было огромный мувик преобразовывать в bytearray и отправить на сервер. Мувик был гигантский и просто скопировать в битмапдату было нельзя. Помог проект по-ссылке.

Суть видна и в коде РАБОЧЕГО примера, но на всякий случай продублирую тут:
1. совершенно не обязательно для начала иметь исходный битмап - в моем случае это был контейнер с нарезанными битмапами (а-ля тайлы). Флэш плеер никак не ограничивает размер спрайта - только оперативка.
2. кодировщику в качестве параметра передается экземпляр PNGEncoderInfo в котором есть ссылка на метод, который будет "нарезать" единую "картинку" (контейнер с тайлами) на битмапы. Т.е. - имеется мувик-контейнер, который будет скармливаться энкодеру кусочками битмапов, которые, в свою очередь, будут склеиваться в единый ByteArray внутри этого самого энкодера.

надеюсь, поможет

В моем случае, когда код запускался на машине с (дай Бог памяти) 512 MB, изображения кодировались в ByteArray размером до 100 млн. пикселей. На 4 гигах оперативки кодировались картинки такого размера, что их браузер отобразить не может - можно было только скачать с сервака и в графических редакторах увидеть результат.