Я использую Linux и не имею никакого доступа ни к одной из 'необычных' программ Adobe.
Я пытаюсь преобразовать существующее изображение PNG32 с альфа-каналом к PNG8. Я попробовал следующие методы:
convert original.png PNG8:new.png
- Ужасно искажает изображение и сохранение только двоичной альфы (Не Индексируемая альфа)pngcrush -rem alla -reduce -brute original.png new.png
- Сделанный меньшим изображением, но не принимал квантование во внимание (Изображение имеет меньше чем 256 цветов), таким образом выводом был все еще PNG32.Что еще я могу попробовать?
Этот Сценарий PHP добивается цели с libgd:
<?PHP
if(!isset($argv[1]) || !is_readable($argv[1])) {
echo "Creates an 8-bit PNG from a 32-bit PNG\n\n";
echo "Usage:\n";
echo "\t" . $argv[0] . " input.png > output.png\n";
echo "\t" . $argv[0] . " input.png output.png\n";
die();
}
$inFile = $argv[1];
$outFile = $argv[2] or STDOUT;
$inImage = imagecreatefrompng($inFile);
$outImage = imagecreate(imagesx($inImage), imagesy($inImage));
imagecopy($outImage, $inImage, 0, 0, 0, 0, imagesx($inImage), imagesy($inImage));
imagepng($outImage, $outFile);
Дамп, что в файл и выполненный это как:
php convert.php input.png output.png
Ваш дистрибутив может включать pngquant. Если Вы не можете найти, что это с конфеткой / склонный - добирается, перейдите к веб-сайту. Я думаю, что это - Ваш лучший выбор.
Если у Вас есть проблемы с pngquant, можно попробовать pngout, но это - съемка общим планом. Я услышал, что это делает хорошее задание, сохраняющее альфа-канал, но может быть медленно. Возможно люди замедления испытывают, то, потому что 'стратегия' по умолчанию является 'Экстремальным значением', которое допускает автор, является медленным.
Это - Windows-программа, но (предположительно), существуют порты Linux, но ссылка на pngout странице авторов устарела. Специалист по обслуживанию порта Linux, JonoF, поддерживает страницу здесь теперь.
Я должен признаться в когда-либо то, что не использовал его.Удачи!
pngquant
не сохраняет альфа-канал. Это производит тот же вывод как GIMP.
– LiraNuna
07.10.2009, 23:23
pngout
не будет сотрудничать - Unable to compress further: copying original file
– LiraNuna
07.10.2009, 23:36