¿PNG contiene datos EXIF ​​como JPG?

Me preguntaba si PNG contiene datos como el siguiente?

Lo que hice fue convertir el archivo jpg al formato png, y esperaba recuperar la misma información que tenía en el jpg como se muestra a continuación:

Actualmente usa esta biblioteca as3 para leer los datos.

  • IDF0 — IDF @ [134 – 248] (9 entradas)
    • Orientación (CORTA): 1
    • XResolution (RATIONAL): 72/1
    • YResolution (RATIONAL): 72/1
    • ResolutionUnit (CORTO): 2
    • Software (ASCIIx16): QuickTime 7.6.6
    • DateTime (ASCIIx20): 2011: 10: 02 22:43:37
    • HostComputer (ASCIIx16): Mac OS X 10.6.8
    • Exif IFD (LARGO): 8 34853
    • GPS IFD (LARGO): 248
  • EXIF IDF — IDF @ [8 – 134] (10 entradas)
    • ExifVersion (UNDEFINEDx4): 0220
    • DateTimeOrigina (ASCIIx20): 2011: 04: 14 17:22:01
    • UserComment (UNDEFINEDx63): ASCII
    • FlashpixVersion (UNDEFINEDx4): 0100
    • ColorSpace (CORTO): 1
    • PixelXDimension (LARGO): 1022
    • PixelYDimension (LARGO): 486
    • Desconocido (ASCIIx13): Image Tag-LOL
    • SceneCaptureType (SHORT): 0
  • GPS IDF — IDF @ [248 – 338] (7 entradas)
    • Índice de interoperabilidad (ASCIIx2): N
    • Versión de interoperabilidad (RATIONALx3) @ 425: 52/1, 1144/100, 0/1
    • Desconocido (ASCIIx2): W
    • Desconocido (RATIONALx3): 1/1, 4392/100, 0/1
    • Desconocido (RACIONAL): 5/1
    • Desconocido (ASCIIx2): T
    • Desconocido (RACIONAL): 3694/117

PNG no incrusta la información EXIF. Sin embargo, permite incrustar ” fragmentos ” de metadatos dentro de la imagen. Algunos de los fragmentos estandarizados corresponden a algunos atributos EXIF ​​(dimensiones físicas, marca de tiempo). Y también es posible almacenar datos textuales arbitrarios como pares key=>value , o para definir nuevos tipos de fragmentos. Entonces, en teoría, podría almacenar cualquier información EXIF ​​… pero, por desgracia, en su propio formato personalizado. Parece que algunos bashs de estandarización no se han puesto al día.

Edición: Versión 1.5.0 (julio de 2017) de las extensiones de la especificación PNG 1.2 finalmente ha agregado un fragmento EXIF. Queda por ver si los codificadores-decodificadores comienzan a soportarlo.

ImageMagick almacena información EXIF ​​en un fragmento PNG “Tipo de perfil sin procesar APP1” zTXt al convertir imágenes JPEG. Este método de almacenamiento EXIF ​​en imágenes PNG también es soportado por ExifTool (y creo que Exiv2 también), pero no es parte de la especificación PNG o EXIF.

Editar: A partir de julio de 2017, PNG admite oficialmente un fragmento eXIf para almacenar los metadatos EXIF ​​( especificación ). ExifTool 10.59 y posteriores escriben EXIF ​​a este nuevo fragmento en imágenes PNG.

PNG no admite la incorporación de información EXIF. Cuando convierte de JPEG a PNG, la información se pierde.

A partir de julio de 2017 , parece haber un trozo oficialmente registrado para datos EXIF ​​llamado … eXIf :

El segmento de datos del fragmento eXIf contiene un perfil Exif en el formato especificado en “4.7.2 Estructura de interoperabilidad de APP1 en datos comprimidos” de [CIPA DC-008-2016], excepto que el marcador JPEG APP1, la longitud y el “Exif” El código ID “descrito en 4.7.2 (C), es decir,” Exif “, NULL y byte de relleno, no están incluidos.

Tenga en cuenta que esto es A) solo unos pocos meses de antigüedad (al momento de la escritura) y B) una extensión opcional, que no forma parte de la especificación básica. Por lo tanto, el soporte para el fragmento eXIf podría estar limitado en muchas aplicaciones.