Apakah PNG berisi data EXIF ​​seperti JPG?

100

Saya bertanya-tanya apakah PNG berisi data seperti berikut?

Apa yang saya lakukan adalah mengonversi file jpg ke format png, dan saya mengharapkan untuk mengambil info yang sama yang saya miliki di jpg seperti di bawah ini:

Saat ini menggunakan pustaka as3 ini untuk membaca data.

  • IDF0 --- IDF @ [134 - 248] (9 entri)
    • Orientasi (SHORT): 1
    • XResolusi (RASIONAL): 72/1
    • Resolusi Y (RASIONAL): 72/1
    • ResolutionUnit (SHORT): 2
    • Perangkat Lunak (ASCIIx16): QuickTime 7.6.6
    • Tanggal Waktu (ASCIIx20): 2011: 10: 02 22:43:37
    • HostComputer (ASCIIx16): Mac OS X 10.6.8
    • Exif IFD (PANJANG): 8 34853
    • GPS IFD (PANJANG): 248

 

  • EXIF IDF --- IDF @ [8 - 134] (10 entri)
    • 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
    • Tidak diketahui (ASCIIx13): Tag Gambar-LOL
    • SceneCaptureType (SHORT): 0

 

  • GPS IDF --- IDF @ [248 - 338] (7 entri)
    • Indeks Interoperabilitas (ASCIIx2): N
    • Versi Interoperabilitas (RATIONALx3) @ 425: 52/1, 1144/100, 0/1
    • Tidak diketahui (ASCIIx2): W
    • Tidak diketahui (RATIONALx3): 1/1, 4392/100, 0/1
    • Tidak diketahui (RATIONAL): 5/1
    • Tidak diketahui (ASCIIx2): T
    • Tidak diketahui (RATIONAL): 3694/117

 

pengguna1004413
sumber

Jawaban:

131

Edit: Versi 1.5.0 (Juli 2017) dari Ekstensi Spesifikasi PNG 1.2 akhirnya menambahkan potongan EXIF. Masih harus dilihat apakah encoder-decoder mulai mendukungnya.

Asli: PNG tidak menyematkan info EXIF. Ini memungkinkan, bagaimanapun, untuk menanamkan metadata " potongan " di dalam gambar. Beberapa potongan standar sesuai dengan beberapa atribut EXIF ​​(dimensi fisik, stempel waktu). Dan juga memungkinkan untuk menyimpan data tekstual sembarang sebagai key=>valuepasangan, atau untuk menentukan tipe potongan baru. Jadi, secara teori Anda dapat menyimpan informasi EXIF ​​apa pun ... tetapi, sayangnya, dalam format kustom Anda sendiri. Beberapa upaya untuk standarisasi belum berhasil, tampaknya.

leonbloy.dll
sumber
30

Sunting: Mulai Juli 2017, PNG secara resmi mendukung potongan eXIf untuk menyimpan metadata EXIF ​​( spesifikasi ). ExifTool 10.59 dan yang lebih baru menulis EXIF ​​ke potongan baru ini dalam gambar PNG.

Asli: ImageMagick menyimpan informasi EXIF ​​dalam potongan PNG "Jenis profil mentah APP1" zTXt saat mengonversi dari gambar JPEG. Metode penyimpanan EXIF ​​dalam gambar PNG ini juga didukung oleh ExifTool (dan saya percaya Exiv2 juga), tetapi ini bukan bagian dari spesifikasi PNG atau EXIF.

PhilHarvey
sumber
Itu sangat bagus untuk diketahui! Apakah Anda tahu jika ia mengekstraknya dari TIFF juga?
Olivier - interfaSys
4
Grup PNG baru-baru ini mempertimbangkan untuk menambahkan potongan "eXIf" dan / atau "zXIf" baru untuk menyimpan informasi EXIF. ExifTool 10.43 menambahkan dukungan untuk potongan "exIf" dan "zxIf" untuk mendukung ini.
PhilHarvey
9

PNG tidak mendukung penyematan informasi EXIF. Ketika Anda mengonversi dari JPEG ke PNG, informasinya hilang.

Persepsi
sumber
1
hai apakah ada dokumentasi yang mengatakan itu? karena saya memerlukan bukti untuk memberi tahu supervisor saya karena saya sedang mengerjakan proyek yang mengharuskan saya membaca info EXIF ​​untuk png. Jika itu masalahnya, saya dapat menunjukkan kepadanya dan memberi tahu dia tentang hal itu
user1004413
9
Anda dapat mengarahkannya ke spesifikasi , yang tidak memiliki spesifikasi implisit atau eksplisit untuk penyematan data EXIF, atau ke entri wiki PNG .
Persepsi
5
Ini tidak sepenuhnya benar. Misalnya, jika Anda menggunakan convert(dari ImageMagick) untuk mengonversi JPEG menjadi PNG dan kemudian menggunakan convertuntuk mengubah PNG kembali ke JPEG, JPEG baru akan tetap memiliki Data EXIF ​​di dalamnya.
mofoe
GIMP menyimpan "Komentar Pengguna" dalam PNG sebagai metadata "EXIF2". Tampaknya ada bidang untuk ini di potongan-potongan. Bagaimana tepatnya dan mengapa saya tidak yakin. Saya sendiri memiliki persyaratan serupa.
VectorVictor
1
Di tahun 2012, jawaban ini mungkin benar, tetapi apakah masih akurat?
RockPaperLz- Mask it atau Casket
7

Pada Juli 2017 , tampaknya ada potongan yang terdaftar secara resmi untuk data EXIF ​​yang disebut ... eXIf :

Segmen data potongan eXIf berisi profil Exif dalam format yang ditentukan dalam "4.7.2 Struktur Interoperabilitas APP1 dalam Data Terkompresi" dari [CIPA DC-008-2016] kecuali bahwa penanda JPEG APP1, panjang, dan "Exif Kode ID "dijelaskan dalam 4.7.2 (C), yaitu," Exif ", NULL, dan padding byte, tidak disertakan.

Perhatikan bahwa ini adalah A) hanya berumur beberapa bulan (saat penulisan) dan B) ekstensi opsional, bukan bagian dari spesifikasi dasar. Oleh karena itu, dukungan untuk potongan eXIf mungkin terbatas pada banyak aplikasi.

8bittree
sumber
2

Apakah yang kamu maksud:

  1. Apakah file PNG berisi item metadata yang Anda daftarkan? Jawaban singkatnya: Bervariasi.
  2. Apakah PNG menggunakan standar EXIF ​​untuk menyimpan metadata semacam itu? Jawaban singkatnya: Umumnya tidak.

Umumnya, PNG menggunakan berbagai potongan yang merupakan bagian dari standar PNG untuk menyimpan metadata. Untuk melihat daftar Anda:

  • Orientasi - Tidak berlaku untuk PNG - ditetapkan sebagai baris demi baris mulai dari kiri atas.
  • XResolution, YResolution, ResolutionUnit - pHYs chunk.
  • Software, HostComputer, metadata tekstual lainnya - potongan tEXt, iTXt, zTXt .
  • DateTime - Tidak jelas bagi saya tanggal / waktu ini untuk apa. TIME menunjukkan tanggal / waktu modifikasi terakhir pada data gambar; tanggal / waktu lain dapat disimpan dalam potongan teks. Waktu Pembuatan sebenarnya adalah kunci potongan teks yang ditentukan, tetapi format dan cara penanganan zona waktu tidak ditentukan, yang merupakan desain yang buruk.
  • ColorSpace, PixelXDimension, PixelYDimension - tidak yakin bagaimana ini akan menjadi metadata. Mereka sangat penting untuk gambar, dan karena itu ada di bagian IHDR .
  • Tidak yakin apa maksud orang lain yang Anda cantumkan.

Namun yang membingungkan, dalam beberapa tahun terakhir, potongan eXIf telah ditambahkan ke daftar resmi potongan ekstensi (yang pada dasarnya merupakan tambahan untuk spesifikasi PNG). Agaknya itu ditargetkan untuk menjaga informasi dalam file yang dikonversi dari JPEG / TIFF ke PNG dan tidak dimaksudkan untuk digunakan dalam file yang awalnya dibuat sebagai PNG, tetapi itu tidak jelas.

Stewart
sumber
0

Iya dan tidak.

Seperti jawaban lain yang telah dinyatakan, PNG tidak memiliki potongan EXIF ​​formal sampai eXIfditambahkan di v1.5.0 (2017), dan sepengetahuan saya potongan ini masih belum mendapatkan dukungan luas.

Tapi itu karena tidak membutuhkannya. Banyak perangkat lunak yang menyandikan EXIF ​​dalam PNG dengan konvensi dalam potongan iTXt(atau terkompresi zTXt) bertuliskan "Jenis profil mentah APP1" . eXIfPotongan yang lebih baru dimaksudkan untuk memberikan lokasi standar untuk ini, meskipun menurut saya kapal itu telah berlayar sekarang.

Selain itu, sebagian besar metadata standar EXIF ​​dapat direpresentasikan oleh XMP, mekanisme transpor metadata alternatif dan lebih baru yang memiliki namespace EXIF ​​untuk tujuan ini. File PNG telah menyertakan dokumen XMP (termasuk metadata EXIF ​​yang diterjemahkan) dalam beberapa iTXtpotongan selama bertahun-tahun. Anda akan menemukan bahwa banyak prosesor mengkonversi di antara keduanya dengan cepat.

Asteroid Dengan Sayap
sumber
Apakah prosesor yang sama ini, apa pun itu, mengonversi XMP atau EXIF ​​ke / dari berbagai potongan metadata PNG standar?
Stewart
@Stewart Potongan metadata PNG standar terbatas dan tidak dapat mewakili luasnya data EXIF ​​atau XMP. Itulah mengapa kami secara historis menyandikan EXIF ​​/ XMP ke dalam file (dalam potongan teks).
Asteroid Dengan Sayap
Oke, saya akan mengulanginya: Apakah prosesor yang sama ini mengonversi item metadata XMP atau EXIF ​​yang mampu diwakili oleh potongan metadata PNG standar menjadi potongan metadata PNG standar, dan sebaliknya?
Stewart
@Stewart saya tidak tahu. Aku meragukan itu. Jika mereka melakukannya, itu akan sangat terbatas. Secara keseluruhan, tidak ada manfaatnya melakukannya; bidang EXIF ​​dan XMP mungkin bukan standar, tetapi sepenuhnya konvensional dan banyak digunakan. Jadi semua orang menggunakan itu. Metadata PNG memang menyertakan beberapa hal Kata Kunci / Penulis tetapi sebagian besar berupa data gambar.
Asteroid Dengan Sayap