Pregunta

Estoy trabajando en un sitio web que utiliza muchos archivos png24, para mayor transparencia.

Necesito reemplazarlos con archivos png8, ya que todas las soluciones de JavaScript de estilo de reparación png para png24 hacen que IE6 se bloquee al azar.

Vea este enlace para tener una idea de los síntomas que muestra IE6 - http://blogs.cozi.com/tech/2008/03/transparent-pngs-can-deadlock-ie6.html

¿Alguien sabe una manera fácil de apuntar a los archivos png24 existentes, para reemplazarlos con los png8s?

Estoy usando un OS X, y los navegadores de archivos como Adobe bridge no muestran esto, ni puedo encontrar la información en la línea de comandos o el buscador.

¡Ayuda!

¿Fue útil?

Solución

La utilidad file en OSX puede indicarle la profundidad de color en un archivo PNG, por ejemplo:

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

Otros consejos

En realidad PUEDES obtener transparencia alfa en PNG-8 pero es muy complicado. 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

Básicamente crea una sustancia similar a GIF para IE6 y un PNG real con transparencia alfa para mejores navegadores. Es un camino de degradación más agradable. En este momento, creo que necesita Fireworks, pero estoy explorando otras opciones.

Para agregar a la respuesta de Alnitak, una vez que encuentre todos los PNG24 que desea convertir, puede agruparlos a todos con pngquant :

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

Esto convierte todos los archivos PNG a PNG8 en su lugar, sobrescribiéndolos.

Creo que podrías estar haciendo la pregunta equivocada. Los PNG8 no tienen el verdadero alfa que has estado trabajando para solucionar en IE6. Si reemplaza los PNG24 por PNG8, no está mejor que reemplazarlos por GIF.

Tal vez podría probar una secuencia de comandos alternativa de reemplazo / reparación: hay algunas terriblemente malas, ¿tal vez ahí está el problema?

Aquí está (¡y digo esta lengua en la mejilla!) la pregunta correcta .

JoeBloggs tiene razón, estás haciendo la pregunta equivocada.

Nunca he tenido IE6 romper con un buen script pngfix. Tienes una secuencia de comandos pngfix incorrecta o una instalación de IE6 incorrecta.

PNG8 arruinará tus bonitas transparencias y hará que parezca que estás usando GIF.

pngcheck, una herramienta de línea de comandos, puede volcar la información que necesita. 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%).

Quizás imagemagick lo ayude a convertir archivos png24 a archivos png8.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top