Gráficos de red portátiles

.png
( Notación ASCII-C )
PNG fue un reemplazo gratuito para el anterior, en el año 2006 con reclamos de patente cargados con el formato de intercambio de gráficos diseñado (GIF), y es menos complejo que el formato de archivo de imagen con etiquetas (TIFF). Además de las diferentes profundidades de color , PNG también admite la transparencia a través del canal alfa . Las fotos PNG suelen ser mucho más grandes que las JPEG . Durante mucho tiempo, el formato PNG no se pudo mostrar fácilmente en los navegadores, por lo que tomó años hacerse valer junto con JPEG y GIF.
El desarrollo del formato PNG se inició a finales de 1994, bastante tardío en comparación con otros formatos gráficos como TIFF, GIF y JFIF (JPEG). Esto fue provocado por solicitudes de licencia de la empresa de software Unisys para el algoritmo Lempel-Ziv-Welch (LZW) utilizado por GIF .
El 4 de enero de 1995, Thomas Boutell presentó un primer borrador (PBF Draft 1). La primera especificación correcta de PNG (versión 1.0) de Thomas Boutell y Tom Lane se convirtió en la recomendación oficial del World Wide Web Consortium (W3C) el 1 de octubre de 1996 . El 14 de octubre de 1996, la Autoridad de Números Asignados de Internet (IANA) asignó a PNG el tipo MIME image/png
. El 15 de enero de 1997, PNG fue aprobado por el Grupo de trabajo de ingeniería de Internet (IETF) como RFC 2083 . El 31 de diciembre de 1998, se publicó la versión 1.1 de la especificación PNG, revisada por Adam Costello y Glenn Randers-Pehrson. El 11 de agosto de 1999, Glenn Randers-Pehrson finalmente publicó la última versión 1.2. Esto fue elevado a la norma ISO ISO / IEC 15948: 2003 el 10 de noviembre de 2003 y al mismo tiempo se convirtió en la segunda edición de la recomendación del W3C.
El formato PNG ahora se usa ampliamente; Sobre todo, ha sustituido al GIF en gráficos altamente comprimibles sin pérdidas, como botones, iconos y logotipos. En su mayoría, solo se usa para fotos si su almacenamiento sin pérdida tiene prioridad sobre un tamaño de datos pequeño, ya que las fotos con compresión con pérdida (por ejemplo, JPEG) i. A. puede comprimir aún más, sin una pérdida significativa de calidad para el ojo humano.
Modos de color y precisión
, así como un modo de escala de grises y un modo de color con canal alfa (tipos de color 0, 2, 3, 4 y 6).
Profundidades de color
Para imágenes en escala de grises, la resolución puede ser de 1, 2, 4, 8 o 16 bits por píxel, para imágenes en color de 8 ( RGB 8) o 16 bits (RGB16) por canal de color . Alternativamente, las imágenes en color se pueden guardar con hasta 256 colores indexados usando el modo de paleta de colores. Los colores indexados se pueden seleccionar libremente de todo el espectro RGB8.
transparencia
Los archivos PNG pueden contener información de transparencia, ya sea en forma de canal alfa, como un solo color transparente o como una paleta de transparencia que complementa una paleta de colores existente que contiene un valor de transparencia para cada color de paleta.
PNG admite canales alfa con profundidad de 8 o 16 bits. Es un canal con información adicional para cada píxel. Esto indica la opacidad en diferentes niveles de cuánto debe brillar el fondo de una imagen. Si este valor es 0, el fondo brilla al 100% por completo. Si se especifica el valor máximo de 255 para una profundidad de 8 bits (o 65535 para 16 bits), esto corresponde a una cobertura completa. En este caso, el fondo no es visible.
reales que se esconden en el fondo.
Bloques de datos y metadatos
Los archivos PNG se componen de diferentes bloques de datos ("fragmentos"), cada uno con diferentes funciones, que se identifican mediante una cadena de cuatro letras (por ejemplo, tEXt para información textual). Además de los tipos de bloques obligatorios IHDR, IDAT, PLTE e IEND, que toda implementación debe soportar, otros bloques de datos opcionales están estandarizados. Estos pueden contener metadatos sobre el contenido de la imagen y otra información adicional, como corrección de color . Estos se pueden editar con programas como TweakPNG . Las aplicaciones también pueden definir bloques de datos privados para sus propios fines. Adobe Fireworks utiliza PNG como formato de aplicación y utiliza bloques de datos privados para almacenar otra información en él. Sin embargo, también existe el riesgo de confusión con los archivos PNG normales, mucho más pequeños.
Encabezado de archivo
Un archivo PNG siempre comienza con la siguiente firma de ocho bytes ( número mágico ):
Byte (s) (hexadecimal) | comentario |
---|---|
89 | Tabulador con juego de bits 7 |
50 4E 47 | Cadena de caracteres ASCII "PNG"; le permite identificar fácilmente el formato de archivo cuando lo visualiza en texto o en un editor de texto. |
0D 0A | CR y LF ( final de línea típico de MS-DOS ) |
1A | El signo de fin de archivo . Este byte cancelaría la salida si el archivo se emitiera con el comando TYPE de MS-DOS , por ejemplo . |
0A | Linea de alimentación |
Compresión

(oscuro / azul: costos de bits bajos, verde: costos medios, rojo: costos de bits altos)
La "imagen de plátano" adyacente muestra qué áreas de la imagen se pueden comprimir y con qué eficiencia.
Decorrelación
Como regla general, el valor de color de un punto de la imagen se correlaciona con los valores de los puntos vecinos, es decir, existe una dependencia o similitud. Para aprovechar estas correlaciones, PNG admite prefiltros, que primero descorrelacionan los datos de salida. Como resultado, los puntos de la imagen se describen utilizando la diferencia con los puntos vecinos ( codificación delta ). Se puede definir una de las 5 opciones de filtro para cada línea de imagen (ver más abajo). Por razones de velocidad, la selección se realiza a menudo de forma heurística. Estos filtros reemplazan los valores de color de los píxeles de manera reversible por (tantos, igual de grandes) valores de diferencia. Como regla general, esta señal de diferencia tiene una dinámica significativamente más baja, es decir, valores con cantidades en promedio más pequeñas. Estos se pueden comprimir de manera más eficaz mediante la codificación de entropía final. Cuanto más uniforme sea el contenido de la imagen, más rentable funcionará este mecanismo. Durante la decodificación, después de descomprimir los datos, se utilizan versiones inversas de los filtros para restaurar los datos de la imagen real.
Esta posibilidad es una de las razones por las que los archivos PNG son tan pequeños.
En la versión actual, PNG define cinco tipos de filtros diferentes
:número | Apellido | descripción |
---|---|---|
0 | Ninguno | Sin prefiltrado. Se utilizan los datos de píxeles originales. |
1 | Sub | Se procesan las diferencias con el píxel adyacente a la izquierda. |
2 | Arriba | Se procesan las diferencias con el píxel de arriba. |
3 | Promedio | La diferencia con el valor medio se calcula a partir del píxel de arriba y el píxel de al lado a la izquierda. |
Cuarto | Paeth | Un valor llamado Paeth Predictor se calcula a partir del píxel adyacente a la izquierda, el que está arriba y el que está diagonalmente arriba a la izquierda , que determina el píxel para la formación de la diferencia. |
Algunos codificadores prueban varios filtros para mejorar la compresión. Esta es una técnica común, especialmente con las numerosas herramientas para optimizar la compresión PNG.
En muchos casos, el Paeth Predictor, que lleva el nombre de su inventor, Alan W. Paeth , ofrece los mejores resultados. Con esto, se intenta utilizar automáticamente los puntos de imagen más similares de los puntos de imagen vecinos a la izquierda, arriba y arriba a la izquierda para la formación de diferencias. La función selecciona el píxel que se acerca más a la izquierda + arriba - arriba a la izquierda.
Compresión de sustitución y codificación de entropía
se llevan a cabo de acuerdo con el popular método de deflación , ya que se puede utilizar libremente sin la carga de las patentes de software . Incluye compresión de sustitución según Storer, Szymanski, Lempel y Ziv ( algoritmo LZSS ) y codificación de entropía según Huffman .
) , que se creó originalmente especialmente para PNG. Por lo general, la compresión desinflada (como en otras aplicaciones, por ejemplo con la compresión ZIP) se puede configurar en el programa de salida en 10 niveles, desde 0 (ninguno) hasta 9 (el mejor).Hasta ahora, Deflate es el único método compatible. Sin embargo, se ha dejado espacio para extensiones intencionalmente con el fin de admitir otros algoritmos más eficientes o más rápidos en futuras versiones de PNG. Para garantizar la compatibilidad con versiones anteriores de los programas compatibles con PNG existentes, actualmente no hay planes para incluir otros métodos en el estándar.
Perfiles de color
Con la excepción de Safari y Firefox (después de la activación), ningún navegador ha admitido aún perfiles de color incrustados (bloques iCCP). Por lo tanto, no ofrecen gestión de color completa. Debido a que Safari es el único navegador que muestra perfiles de color completos, actualmente no es posible una visualización uniforme y multiplataforma de imágenes en formato PNG con un perfil de color incrustado. Esta función está prevista para el futuro, al menos para el navegador Firefox. Los valores de corrección de gamma incrustados (bloques de gAMA), por otro lado, son reconocidos y procesados correctamente por la mayoría de los navegadores actuales.
transparencia
Microsoft Internet Explorer hasta la versión 6 tenía problemas con la visualización de archivos PNG transparentes con un canal alfa; Sin embargo, los archivos PNG con transparencia binaria (“sí / no”) se mostraban sin errores.
El formato PNG no está sujeto a ninguna restricción de patente . Por lo tanto, cualquier fabricante de software puede publicar programas que puedan leer y escribir PNG sin pagar tarifas de licencia.
ventajas
- La compresión es sin pérdidas y en su mayoría más compacta que los formatos comparables.
- Soporte de transparencia alfa (hasta 16 bits, es decir, 65.536 niveles; 8 bits son comunes).
- El formato está sujeto a un estándar fijo y puede ampliarse, por lo que teóricamente cada programa debe cumplir con ciertos requisitos mínimos. Además, PNG es compatible tanto hacia arriba como hacia abajo, lo que reduce las incompatibilidades entre diferentes versiones.
- Las sumas de verificación integradas permiten detectar errores en el archivo en una etapa temprana.
- Los archivos PNG se pueden transmitir , lo que significa que la interpretación del contenido del archivo no requiere acceso aleatorio, como es el caso de muchos archivos TIFF .
- Está disponible un entrelazado opcional con 7 corridas según Adam M. Costello (" Adam7 "), es decir, la acumulación gradual de imágenes durante la transmisión a través de líneas de datos lentas. Incluso con muy poca transmisión, es posible una visualización relativamente útil.
- La compatibilidad con todos los navegadores web gráficos está disponible (en Internet Explorer , sin embargo, la transparencia alfa solo se admite a partir de la versión 7.0).
desventaja
Comparación con el formato de intercambio de gráficos (GIF)
En ausencia de opciones de animación, PNG es una alternativa incompleta al formato GIF . Las opciones de animación se subcontratan a un formato separado con PNG. Los dos formatos juntos deberían reemplazar completamente a GIF; esto no ha sucedido hasta el día de hoy.
Además del modo de paleta de colores, PNG también admite imágenes a todo color y en escala de grises con una precisión de hasta 16 bits por canal de color. Con GIF solo es posible declarar una de las entradas de palet como completamente transparente.
de PNG suele ser mejor que la de GIF. Los prefiltros son la razón por la que los archivos PNG suelen ocupar menos espacio. Por otro lado, sin embargo, la complejidad del formato también es mayor.Con la estructura de imagen progresiva de PNG con entrelazado Adam7, se produce una distorsión de imagen significativamente menor que con GIF.
, del cual PNG estaba libre desde el principio. (GIF todavía estaba limitado por otras patentes hasta octubre de 2006).- Los gráficos de red portátiles animados (APNG) admiten animación. Es compatible con versiones anteriores de PNG; los decodificadores PNG puros solo muestran la primera imagen de la animación.
- Los gráficos de red de imágenes múltiples (MNG) almacena animaciones.
- JPEG Network Graphics (JNG), un subformato de MNG, admite la parte con pérdida de JPEG como método de compresión.
- PNG + (PNG plus) es un Microsoft in Picture It! Formato de archivo utilizado que también puede guardar capas y diseños de varias páginas. Es incompatible con PNG y casi ningún programa más que Picture It! soportado.
Ni MNG, JNG, ni APNG o PNG + son recomendaciones del W3C.
Todos los navegadores web modernos ahora admiten el formato. Los programas importantes de procesamiento de imágenes generalmente lo admiten tanto en lectura como en escritura.
- Thomas W. Lipp: formatos gráficos. Microsoft Press, Unterschleißheim 1997, ISBN 3-86063-391-0
- John Miano: formatos de archivo de imagen comprimida. Addison-Wesley, Lectura 2000, ISBN 0-201-60443-4
- Greg Roelofs: PNG: La guía definitiva. O'Reilly, Sebastopol 1999, ISBN 1-56592-542-4 ( libpng.org )
- Sitio web de PNG (inglés)
- Max Völkel: Conferencia seminario, El formato de archivo gráfico PNG . ( Recuerdodel 5 de noviembre de 2013 en Internet Archive ) Universidad de Karlsruhe, 1 de febrero de 1999
- Henri Sivonen: Desviaciones gamma en diferentes navegadores - La triste historia de PNG Gamma "Correction" . (Inglés)
- Trevor Morris: El dilema gamma de PNG . (Inglés; problemas de visualización debido a una interpretación gamma incorrecta o ausente en diferentes navegadores y posibles soluciones o compromisos)
-
Tipos de medios de imagen. Autoridad de Números Asignados de Internet , 27 de septiembre de 2009,consultado el 6 de octubre de 2010.
-
Especificación PNG (Gráficos de red portátiles), versión 1.2. 12.12. Firma de archivo PNG. 14 de julio de 1999,consultado el 6 de octubre de 2010.
-
Sibylle Mühlke: Adobe Photoshop CC, 7a edición de 2018, p. 1051
-
Jason Summers: TweakPNG , inglés
-
Comparación de las propiedades (incluida la compresión) de BMP, GIF, PNG, JPEG, TIFF, PCX y TGA , consultado el 10 de octubre de 2012
-
Stephan T. Lavavej: Introducción a PNG. En: nuwen.net.Consultado el 6 de octubre de 2010.
-
libpng.Consultado el 13 de julio de 2013.
-
Cosmin Truţa: Una guía para la optimización de PNG . (con directorio de programas para recompresión sin pérdidas, inglés)
Estándares del World Wide Web Consortium
ActivityPub • ARIA • XML canónico • CDF • CSS • DOM • API de geolocalización • HTML • HTML5 • InkML • ITS • JSON-LD • MathML • OWL • P3P • PLS • PNG • RDF • Esquema RDF • RIF • SCXML • SISR • SKOS • SMIL • jabón • SRGS • SSML • SVG • SPARQL • Programado texto • tortuga • VoiceXML • WSDL • XForms • XHTML • XHTML + RDFa • XInclude • XLink • XML • XML Base • XML Encryption • Eventos XML • Conjunto de información XML • XML Espacio de nombres • Esquema XML • Firma XML • XPath • XPointer • XProc • XQuery • XSL • XSL-FO • XSLT ( elementos )
y candidatos
CCXML • CURIE • Hojas de tiempo SMIL • sXBL • WICD • XFrames • XBL • XHTML + MathML + SVG • XMLHttpRequest
XAdES • XFDL • XHTML + SMIL • XUP
Pautas de accesibilidad al contenido web • Actividad de interacción multimodal • Servicio de validación de marcado