¿Por qué se dañan los archivos PNG-8 cuando se abren en Photoshop?

¿Por qué se abren algunos PNG de 32 bits en Photoshop con colores indexados y sin transparencia?

Por ejemplo, me agarró un icono icono png del logotipo de desbordamiento de pila en: http://blog.stackoverflow.com/wp-content/uploads/icon-so.png Al abrirlo en Photoshop CS3, al parecer lo trata como indexado Color y se deshace del canal alfa . La imagen de la derecha es una captura de pantalla del icono. Cambiar el modo de imagen en Photoshop a RGB no cambia la imagen en absoluto. He intentado esto con algunos otros png y parece golpear o faltar.

Cuando se ve en otros programas, se muestra bien.

Left: png abierto en Photoshop, derecha: captura de pantalla de png desde el navegador

Left: png abierto en Photoshop, derecha: captura de pantalla de png desde el navegador

¿Qué da ?, ¿no interpreta Photoshop el formato de archivo PNG correctamente?

Parece que el problema es que Photoshop no admite parte del estándar PNG-8 . PNG-8 como GIF utiliza un palet de 256 colores. Ambos formatos soportan el uso de uno de esos 256 colores indexados para representar la transparencia, PNG-8 también soporta el establecimiento de un valor alfa para cada uno de esos 256 colores en la paleta. Photoshop (aparentemente CS3 y CS4) no es compatible con esto y hace que cada píxel opaco.

SuperPNG es capaz de leer correctamente este archivo.

Solución simple (en Photoshop CC):

Image -> Mode -> Check "RGB Color" ( color no indexado )

El archivo ahora será editable como de costumbre.

Hay dos tipos de archivos PNG de uso común. PNG8 utiliza colores indexados y tiene un solo color para la transparencia, lo que significa que no hay canal alfa. PNG24 soporta un canal alfa separado. La imagen a la que se vincula es un PNG8.

En cuanto a por qué Photoshop CS3 es mauling PNG8s tan mal … que no sé.