Можно ли взять 24-битный PNG с альфа-значением на пиксель и преобразовать его в 8-битный PNG при сохранении прозрачности? Исходное изображение содержит максимум 256 цветов, так что это должно быть возможно, верно?
---- Обоснование:
Я работаю над обработчиком изображений в Actionscript, который отправляет закодированные байтовые массивы в PHP для создания файлов в файловой системе.
К сожалению, ActionScript не поддерживает GIF-кодирование, поэтому при работе с GIF-файлами с прозрачностью мы должны PNG-кодировать его в Actionscript перед отправкой в PHP. Затем мы можем сохранить его в формате PNG и сохранить прозрачность, используя функции imagealphablending и imagesavealpha.
Проблема в том, что размер файла намного больше, чем в оригинальном gif. Вероятно, это связано с тем, что теперь цветовая гамма имеет истинный цвет, а не индексированную GIF-палитру.