El formato Portable Network Graphics (PNG) organiza los datos de la imagen en una serie de 'chunks' o fragmentos discretos. Cada fragmento sigue una estructura específica: una longitud de 4 bytes, un nombre de 4 bytes, los datos reales y una verificación de redundancia cíclica (CRC) para la detección de errores. La convención de nombres de estos fragmentos dicta cómo un decodificador los maneja. Por ejemplo, las letras mayúsculas significan fragmentos 'Críticos' necesarios para mostrar la imagen correctamente, mientras que las letras minúsculas denotan fragmentos 'Anciliarios'. Esta distinción significa que, si bien los metadatos como 'IHDR' (Cabecera de imagen) son esenciales para definir el ancho, la altura y la profundidad de bits, otra información como 'gAMA' (Gamma) o 'pHYs' (Dimensiones físicas) se considera opcional para el renderizado básico.
La convención de nombres de estos fragmentos dicta cómo un decodificador los maneja. Por ejemplo, las letras mayúsculas significan fragmentos 'Críticos' necesarios para mostrar la imagen correctamente, mientras que las letras minúsculas denotan fragmentos 'Anciliarios'.
En el núcleo del proceso de decodificación se encuentra el fragmento 'IDAT', que contiene los datos de imagen comprimidos reales. Debido a que los codificadores de transmisión pueden no conocer la longitud total de los datos de antemano, un archivo PNG puede contener múltiples fragmentos IDAT que el decodificador concatena en un solo flujo. Este flujo se descomprime luego utilizando el algoritmo estándar zlib. Sin embargo, la descompresión por sí sola no produce una imagen visible; los datos resultantes aparecen sesgados o distorsionados porque cada fila de la imagen contiene un byte de 'filtro'. Estos filtros —como 'Average', 'Up' o 'Paeth'— están diseñados para hacer que los datos sean más comprimibles por zlib al describir la relación entre un píxel y sus vecinos. Para reconstruir la imagen final, el decodificador debe 'desfiltrar' los datos, deshaciendo estas operaciones matemáticas fila por fila.
Más allá de la decodificación estándar, el formato PNG admite el 'entrelazado', que permite que una imagen se cargue en pasadas progresivas. Esto se logra dividiendo la imagen en siete áreas no superpuestas, conocidas como Adam7. Estas pasadas se almacenan secuencialmente en el archivo, lo que permite a un visor mostrar primero una versión de baja resolución de la imagen, que va ganando detalle gradualmente a medida que se cargan más pasadas. Esta técnica es particularmente útil para la percepción visual humana, ya que el detalle horizontal suele priorizarse durante las etapas iniciales de carga. Aunque el formato es robusto, incluso pequeños errores en los cálculos de los filtros —como el manejo incorrecto de desbordamientos de enteros en el filtro 'Average'— pueden dar lugar a artefactos visuales significativos, ya que la reconstrucción matemática de los píxeles falla.
Esto se logra dividiendo la imagen en siete áreas no superpuestas, conocidas como Adam7. Estas pasadas se almacenan secuencialmente en el archivo, lo que permite a un visor mostrar primero una versión de baja resolución de la imagen, que va ganando detalle gradualmente a medida que se cargan más pasadas.

Aunque el formato es robusto, incluso pequeños errores en los cálculos de los filtros —como el manejo incorrecto de desbordamientos de enteros en el filtro 'Average'— pueden dar lugar a artefactos visuales significativos, ya que la reconstrucción matemática de los píxeles falla.