117 votes

Le format PNG contient-il des données EXIF comme le format JPG ?

Je me demandais si le PNG contient des données comme celles qui suivent ?

Ce que j'ai fait, c'est convertir le fichier jpg en format png, et je m'attendais à récupérer les mêmes informations que j'avais sur le jpg comme ci-dessous :

Actuellement, j'utilise ceci bibliothèque as3 pour lire les données.

  • IDF0--- IDF @ [134 - 248] (9 entrées)

    • Orientation (SHORT) : 1
    • XResolution (RATIONAL) : 72/1
    • YResolution (RATIONAL) : 72/1
    • ResolutionUnit (SHORT) : 2
    • Logiciel (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 (LONG) : 248
  • EXIF IDF--- IDF @ [8 - 134](10 entrées)

    • 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
    • Inconnu (ASCIIx13) : Image Tag-LOL
    • SceneCaptureType (SHORT) : 0
  • GPS IDF--- IDF @ [248 - 338] (7 entrées)

    • Indice d'interopérabilité (ASCIIx2) : N
    • Version d'interopérabilité (RATIONALx3) @425 : 52/1, 1144/100, 0/1
    • Inconnu (ASCIIx2) : W
    • Inconnu (RATIONALx3) : 1/1, 4392/100, 0/1
    • Inconnu (RATIONAL) : 5/1
    • Inconnu (ASCIIx2) : T
    • Inconnu (RATIONAL) : 3694/117

144voto

leonbloy Points 27119

Modifier : la version 1.5.0 (juillet 2017) de l'outil d'évaluation de l'impact sur l'environnement (EIE) est disponible. Extensions de la spécification PNG 1.2 a enfin ajouté un fragment EXIF. Il reste à voir si les encodeurs-décodeurs commencent à le prendre en charge.

Original : PNG ne contient pas d'informations EXIF. Il permet toutefois d'intégrer des métadonnées " morceaux "à l'intérieur de l'image. Certains des morceaux normalisés correspondent à quelques attributs EXIF (dimensions physiques, horodatage). Et il est également possible de stocker des données textuelles arbitraires en tant que key=>value ou pour définir de nouveaux types de chunk. Ainsi, vous pourriez en théorie stocker n'importe quelle information EXIF... mais, hélas, dans votre propre format personnalisé. Quelques tentatives pour standariser n'ont pas rattrapé leur retard, semble-t-il.

31voto

user464025 Points 81

Édition : Depuis juillet 2017, PNG prend officiellement en charge un chunk eXIf pour stocker les métadonnées EXIF ( spécification ). ExifTool 10.59 et les versions ultérieures écrivent EXIF à ce nouveau chunk dans les images PNG.

Original : ImageMagick stocke les informations EXIF dans un chunk zTXt PNG "Raw profile type APP1" lors de la conversion d'images JPEG. Cette méthode de stockage des informations EXIF dans les images PNG est également prise en charge par ExifTool (et je crois aussi par Exiv2), mais elle ne fait pas partie des spécifications PNG ou EXIF.

0 votes

C'est très bon à savoir ! Savez-vous s'il l'extrait également du format TIFF ?

4 votes

Le groupe PNG a récemment envisagé d'ajouter un nouveau chunk "eXIf" et/ou "zXIf" pour stocker les informations EXIF. ExifTool 10.43 a ajouté le support des chunks "exIf" et "zxIf" à cette fin.

9voto

Perception Points 42290

Le format PNG ne prend pas en charge l'intégration des informations EXIF. Lorsque vous convertissez un JPEG en PNG, ces informations sont perdues.

2 votes

J'ai besoin d'une preuve pour le faire savoir à mon superviseur car je travaille sur un projet qui me demande de lire les informations EXIF des png. Si c'est le cas, je pourrais lui montrer et lui faire savoir.

9 votes

Vous pouvez l'orienter vers le spécification qui n'a pas de spécification implicite ou explicite pour l'incorporation de données EXIF, ou à l'entrée PNG du wiki .

6 votes

Ce n'est pas tout à fait vrai. Par exemple, si vous utilisez convert (d'ImageMagick) pour convertir un JPEG en PNG et utiliser ensuite convert pour reconvertir le PNG en JPEG, le nouveau JPEG contiendra toujours les données EXIF.

8voto

8bittree Points 890

A partir de Juillet 2017 il semble qu'il y ait un chunk officiellement enregistré pour les données EXIF appelé... eXIf :

Le segment de données du bloc eXIF contient un profil Exif au format spécifié dans la section "4.7.2 Structure d'interopérabilité de l'APP1 dans les données compressées" de [CIPA DC-008-2016], sauf que le marqueur JPEG APP1, la longueur et le "code d'identification Exif" décrit dans la section 4.7.2(C), c'est-à-dire "Exif", NULL et l'octet de remplissage, ne sont pas inclus.

Notez qu'il s'agit à la fois A) de quelques mois seulement (au moment de la rédaction) et B) d'une extension optionnelle, qui ne fait pas partie de la spécification de base. Par conséquent, le support du chunk eXIf peut être limité dans de nombreuses applications.

4voto

Asteroids With Wings Points 16164

Oui et non.

Comme d'autres réponses l'ont déjà indiqué, PNG n'a pas eu de fragment EXIF formel jusqu'à ce que eXIf a été ajouté dans la v1.5.0 (2017), et à ma connaissance, ce chunk ne bénéficie toujours pas d'un large soutien.

Mais c'est parce qu'il n'en a pas besoin. De nombreux logiciels encodent l'EXIF dans un PNG par convention dans un format iTXt (ou comprimé zTXt ) morceau noté "Profil brut de type APP1" . Les plus récents eXIf Le morceau de bois était destiné à fournir un emplacement standardisé pour cela, mais à mon avis, ce projet a fait long feu.

En outre, la plupart des métadonnées de la norme EXIF peuvent être représentées par XMP, un mécanisme de transport de métadonnées alternatif et plus récent qui dispose d'un espace de noms EXIF à cette fin précise. Les fichiers PNG ont inclus des documents XMP (y compris des métadonnées EXIF traduites) en iTXt depuis des années. Vous constaterez que de nombreux transformateurs font la conversion entre les deux à la volée.

0 votes

Ces mêmes processeurs, quels qu'ils soient, convertissent-ils XMP ou EXIF vers/depuis les divers blocs de métadonnées PNG standard ?

0 votes

@Stewart Les morceaux de métadonnées PNG standard sont limités et ne peuvent pas représenter l'étendue des données EXIF ou XMP. C'est pourquoi, historiquement, nous avons encodé les données EXIF/XMP dans les fichiers (en morceaux de texte).

0 votes

OK, je vais reformuler ça : Ces mêmes processeurs convertissent-ils les éléments de métadonnées XMP ou EXIF qui peuvent être représentés par des blocs de métadonnées PNG standard en blocs de métadonnées PNG standard, et vice versa ?

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X