Преобразование PNG-24 с прозрачностью на пиксель в PNG-8 - PullRequest
0 голосов
/ 05 января 2011

Можно ли взять 24-битный PNG с альфа-значением на пиксель и преобразовать его в 8-битный PNG при сохранении прозрачности? Исходное изображение содержит максимум 256 цветов, так что это должно быть возможно, верно?

---- Обоснование:

Я работаю над обработчиком изображений в Actionscript, который отправляет закодированные байтовые массивы в PHP для создания файлов в файловой системе.

К сожалению, ActionScript не поддерживает GIF-кодирование, поэтому при работе с GIF-файлами с прозрачностью мы должны PNG-кодировать его в Actionscript перед отправкой в ​​PHP. Затем мы можем сохранить его в формате PNG и сохранить прозрачность, используя функции imagealphablending и imagesavealpha.

Проблема в том, что размер файла намного больше, чем в оригинальном gif. Вероятно, это связано с тем, что теперь цветовая гамма имеет истинный цвет, а не индексированную GIF-палитру.

1 Ответ

0 голосов
/ 05 января 2011

PNG-8 может иметь переменную альфа-прозрачность, но каждый цвет, включая его альфа, индексируется в доступном количестве цветов.

...