PNG是否包含像JPG这样的EXIF数据?

我想知道PNG是否包含如下的数据?

我所做的是将JPG文件转换为PNG格式,我期待检索我在JPG上的相同信息,如下所示:

目前使用这个as3库来读取数据。

  • IDF0 — IDF @ [134 – 248](9项)
    • 方向(SHORT):1
    • XResolution(RATIONAL):72/1
    • Y分辨率(RATIONAL):72/1
    • ResolutionUnit(SHORT):2
    • 软件(ASCIIx16):QuickTime 7.6.6
    • DateTime(ASCIIx20):2011:10:02 22:43:37
    • HostComputer(ASCIIx16):Mac OS X 10.6.8
    • Exif IFD(LONG):8 34853
    • GPS IFD(长):248
  • EXIF IDF — IDF @ [8 – 134](10项)
    • ExifVersion(UNDEFINEDx4):0220
    • DateTimeOrigina(ASCIIx20):2011:04:14 17:22:01
    • UserComment(UNDEFINEDx63):ASCII
    • FlashpixVersion(UNDEFINEDx4):0100
    • ColorSpace(SHORT):1
    • PixelXDimension(LONG):1022
    • PixelYDimension(LONG):486
    • 未知(ASCIIx13):图像标签 – 大声笑
    • SceneCaptureType(SHORT):0
  • GPS IDF — IDF @ [248 – 338](7项)
    • 互用性指数(ASCIIx2):N
    • 互操作性版本(RATIONALx3)@ 425:52 / 1,1144 / 100,0 / 1
    • 未知(ASCIIx2):W
    • 未知(RATIONALx3):1/1,4392/100,0/1
    • 未知(RATIONAL):5/1
    • 未知(ASCIIx2):T
    • 未知(RATIONAL):3694/117

PNG不embeddedEXIF信息。 但是,它允许在图像中embedded元数据“ 块 ”。 某些标准块对应于一些EXIF属性(物理尺寸,时间戳),也可以将任意文本数据存储为key=value对或定义新的块types。 所以,你原则上可以存储任何EXIF信息…但是以你自己的自定义格式。 看来,一些尝试标准化的尝试还没有完成。

当从JPEG图像转换时,ImageMagick将EXIF信息存储在PNG“Raw profile type APP1”zTXt块中。 ExifTool也支持EXIF存储在PNG图像中的方法(我也相信Exiv2),但它不是PNG或EXIF规范的一部分。

编辑:截至2017年7月,PNG正式支持eXIf块来存储EXIF元数据( 规格 )。 ExifTool 10.59和更高版本将EXIF写入PNG图像中的这个新块。

PNG不支持embeddedEXIF信息。 从JPEG转换为PNG时,信息丢失。

截至2017年7月 ,EXIF数据似乎已经正式注册为块… eXIf :

eXIf块的数据段包含一个Exif格式,其格式为[CIPA DC-008-2016]中的“4.7.2压缩数据中的APP1的互操作性结构”[4.7.2],除了JPEG APP1标记,长度和“Exif (C)中描述的“ID码”,即“Exif”,NULL和填充字节,不包括在内。

请注意,这是A)只有几个月的时间(写作时)和B)可选扩展,不是基本规范的一部分。 因此,在许多应用程序中,对eXIf块的支持可能会受到限制。