Как вы можете отличить png8 от png24?
Я работаю над сайтом, который использует много файлов png24 для прозрачности.
Мне нужно заменить их на файлы png8, так как все обходные пути стиля png fix для png24 приводят к случайной блокировке IE6.
Посмотрите эту ссылку, чтобы получить представление о симптомах, которые отображает IE6 - http://blogs.cozi.com/tech/2008/03/transparent-pngs-can-deadlock-ie6.html
Кто-нибудь знает простой способ нацеливания на существующие файлы png24, чтобы заменить их на png8s?
Я использую OS X, и файловые браузеры, такие как Adobe bridge, не показывают это, и при этом я не могу найти информацию в командной строке или в искателе.
Помогите!
7 ответов
file
Утилита на OSX может сказать вам глубину цвета в файле PNG, например:
% file foo.png
foo.png: PNG image data, 1514 x 1514, 8-bit grayscale, non-interlaced
На самом деле вы можете получить альфа-прозрачность в PNG-8, но это очень сложно. http://www.sitepoint.com/blogs/2007/09/18/png8-the-clear-winner/ http://www.personal.psu.edu/drs18/blogs/davidstong/2007/09/png8_alpha_transparency_from_f.html
Он в основном создает GIF-подобную субстанцию для IE6 и настоящий PNG с альфа-прозрачностью для лучших браузеров. Это более приятный путь деградации. Прямо сейчас, я думаю, что вам нужен Fireworks, но я изучаю другие варианты.
Чтобы добавить к ответу Alnitak, как только вы найдете все PNG24, которые вы хотите конвертировать, вы можете объединить их все с помощью pngquant
:
pngquant -v -f --ext .png 256 *.png
Это преобразует все файлы PNG в формат PNG8, перезаписывая их.
Я думаю, что вы, возможно, задаете не тот вопрос. PNG8s не имеет истинного альфа вы работали трудно исправить в IE6. Если вы замените PNG24 на PNG8, вам будет легче, чем заменить их на GIF.
Может быть, вы могли бы протестировать альтернативный скрипт замены / исправления - там есть несколько ужасно плохих, может быть, в этом проблема?
Вот (и я говорю этот язык в щеку!) Правильный вопрос.
JoeBloggs прав, вы задаете не тот вопрос.
У меня никогда не было IE6 с хорошим сценарием pngfix. У вас либо плохой сценарий pngfix, либо неправильная установка IE6.
PNG8 испортит ваши прекрасные прозрачные пленки и создаст впечатление, что вы используете GIF-файлы.
pngcheck, инструмент командной строки, может вывести необходимую информацию. http://www.libpng.org/pub/png/apps/pngcheck.html
pngcheck.exe a.png
OK: a.png (1024x1024, 32-bit RGB+alpha, non-interlaced, 80.7%).
pngcheck.exe b.png
OK: b.png (1024x1024, 8-bit palette+trns, non-interlaced, 83.1%).
Возможно, imagemagick поможет вам конвертировать файлы png24 в файлы png8.