Question

Je travaille sur un site Web qui utilise beaucoup de fichiers png24, par souci de transparence.

Je dois les remplacer par des fichiers png8, car toutes les solutions de contournement javascript de style de correction de png pour png24 font en sorte que IE6 se verrouille de manière aléatoire.

Consultez ce lien pour avoir une idée des symptômes affichés par IE6 - http://blogs.cozi.com/tech/2008/03/transparent-pngs-can-deadlock-ie6.html

Quelqu'un connaît-il un moyen simple de cibler les fichiers png24 existants pour les remplacer par les png8?

J'utilise OS X et les navigateurs de fichiers tels qu'Adobe Bridge ne l'indiquent pas. Je ne peux pas non plus trouver les informations sur la ligne de commande ou le viseur.

Aide!

Était-ce utile?

La solution

L'utilitaire fichier sous OSX peut vous indiquer le nombre de couleurs dans un fichier PNG, par exemple:

.
% file foo.png 
foo.png: PNG image data, 1514 x 1514, 8-bit grayscale, non-interlaced

Autres conseils

Vous pouvez réellement obtenir une transparence alpha dans les PNG-8, mais c’est très compliqué. 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

Il crée essentiellement une substance de type GIF pour IE6 et un véritable fichier PNG avec transparence alpha pour les meilleurs navigateurs. C'est un chemin de dégradation plus agréable. À l'heure actuelle, je pense que vous avez besoin de Fireworks, mais j'examine d'autres options.

Pour ajouter à la réponse d’Alnitak, une fois que vous avez trouvé tous les fichiers PNG24 que vous souhaitez convertir, vous pouvez les regrouper par lots avec pngquant :

pngquant -v -f --ext .png 256 *.png

Ceci convertit tous les fichiers PNG en fichiers PNG8 et les remplace.

Je pense que vous posez peut-être la mauvaise question. Les PNG8 n’ont pas l’alpha véritable que vous avez travaillé dur pour réparer dans IE6. Si vous remplacez les PNG24 par des PNG8, vous n’êtes pas mieux loti que de les remplacer par des GIF.

Peut-être pourriez-vous tester un autre script de remplacement / correction - il en existe de terriblement mauvais, peut-être que le problème est là?

Voici (et je dis cette langue en joue!) la bonne question .

JoeBloggs a raison, vous posez la mauvaise question.

Je n’ai jamais eu IE6 rompu avec un bon script pngfix. Vous avez soit un mauvais script pngfix, soit une mauvaise installation d'IE6.

PNG8 gâchera vos belles transparences et donnera l’impression que vous utilisez des GIF.

pngcheck, un outil de ligne de commande, peut vider les informations dont vous avez besoin. 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%).

Peut-être imagemagick vous aide-t-il à convertir les fichiers png24 en fichiers png8.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top