Показать сообщение отдельно
Старый 04.03.2011, 01:51
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 27  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Почему, задумку поняли. Если бы у исходных ПНГ не варьировалась прозрачность, все было бы так просто, даже шаблона бы не потребовалось - просто поднять альфу всех пикселов до 100%. Но автор упомянул, что изображения уже с прозрачностью, и это сильно осложняет дело - если уменьшать альфу в два раза, мы потеряем половину диапазона при восстановлении (все нечетные значения приведутся к четным - это же не float). И это не тру, так что не, не пойдет.
Другой вариант - воспользоваться открытостью формата, как предлагал GAIKER. Можно добавить 8-битную карту прозрачностей отдельным chunk'ом. Если уж на то пошло, "портить" картинку можно просто "лишая" ее альфа-канала, если он жизненно важен для использования изображения - просто записывать его в кастомный chunk и в клиенте оттуда копировать BitmapData::copyChannel. А скачанный с сервера файл будет просто непрозрачным на каком-нибудь резвом (красном?)) фоне. Только в принципе "починить" такое изображение не очень сложно, если понять, что с ним сделали. Вот хранение в пингах хэшей, или ключей - с этим можно поиграться.
__________________
Reality.getBounds(this);