Ich habe eine Menge PNGs, die meine Frau behalten möchte und die von unserem Babymonitor erfasst wurden. Die Dateien sind nach dem Aufnahmedatum benannt:
yyyymmdd_hhmmss.png
Leider ist kein DateTaken im Bild gespeichert und ich möchte es zu Archivierungszwecken hinzufügen und das OCD-Monster, das in meiner Brust knurrt, stillen.
Ich habe hier einige Posts mit der ExifTool-Befehlszeile überprüft, aber keiner von ihnen scheint detailliert zu beschreiben, wie die Eigenschaft "Aufnahmedatum" eingestellt wird (wie in Windows Explorer und Lightroom usw. gezeigt), obwohl sie meines Wissens im Exif definiert ist als: Erstellungszeit??? (kann sein).
Ich habe viele Kombinationen der folgenden ohne Erfolg versucht. (Aufnahmedatum bleibt leer).
exiftool "-creationTime=-timecreated" *
exiftool "-creationTime<EXIF:DateCreated" *
In der Verzweiflung, um zu sehen, ob tatsächlich etwas passiert:
exiftool "-creationTime=now" *
exiftool.exe "-DateTimeOriginal>FileModifyDate" *
exiftool -v "-FileModifyDate>AllDates" *
Ich entschuldige mich; Es gibt etwas so Einfaches, das ich vermisse, aber nachdem ich Google-Ergebnisse und zahlreiche Posts hier durchforstet habe, bin ich nicht näher dran.
Solange Sie den Dateinamen wie erwähnt festgelegt haben, lautet der Befehl, den Sie verwenden möchten
exiftool "-PNG:CreationTime<Filename" FileOrDir
Wie @cmason erwähnt, unterstützt PNG den EXIF-Standard nicht. Exiftool und Exiv2 haben eine Problemumgehung, die jedoch nicht allgemein unterstützt wird. EXIF-Tags werden also nicht von anderen Programmen gesetzt, es sei denn, Sie setzen sie selbst mit Exiftool oder Exiv2.
Date Taken ist eine Windows-Eigenschaft, kein Metadaten-Tag, und im Fall von PNG-Dateien wird es vom PNG:CreationTime
Tag festgelegt.
Um die Eigenschaft Windows Date Take in einer PNG-Datei auf etwas anderes einzustellen, können Sie diesen Befehl verwenden und den Zeitstempel entsprechend ersetzen:
exiftool -PNG:CreationTime="2017:01:10 10:45:01" FileOrDir
Bearbeiten: Nur einige Hinweise, warum Ihre vorherigen Befehle nicht funktioniert haben.
exiftool "-creationTime=-timecreated" *
Das Gleichheitszeichen weist Werte zu. In diesem Fall weisen Sie dem CreationTime
Tag also den Wert von zu -timecreated
. Wenn Sie das Tag kopieren wollten TimeCreated
, müssten Sie zuerst den Bindestrich vor -timecreated
(wird nur ganz am Anfang verwendet, um eine Tag-Operation anzuzeigen) fallen lassen und dann die Tag-Kopieroperation (kleiner/größer als Symbol <
oder >
) verwenden, z. B. -creationTime<timecreated
oder -TimeCreated>CreationTime
.
exiftool "-creationTime<EXIF:DateCreated" *
und exiftool.exe "-DateTimeOriginal>FileModifyDate" *
Korrekt formatiert, aber wie bereits erwähnt, unterstützen PNGs keine EXIF-Tags (DateTimeCreated ist normalerweise ein EXIF-Tag, obwohl es auch ein XMP-Tag sein kann). Es sollte eine Fehlermeldung "Keine beschreibbaren Tags" angezeigt werden.
exiftool "-creationTime=now" *
„Jetzt“ ist ein Exiftool-Pseudo-Tag für das aktuelle Datum/die aktuelle Uhrzeit. Aber das Gleichheitszeichen wird CreationTime
auf den Wert now
gesetzt, nicht auf die aktuelle DateTime. Der richtige Befehl wäre gewesen "-CreationTime<Now"
.
exiftool -v "-FileModifyDate>AllDates" *
Richtig formatiert, aber es ist wieder ein Problem mit PNGs fehlender Unterstützung für EXIF-Daten. AllDates
ist eine Exiftool-Verknüpfung für drei EXIF-Tags: EXIF:DateTimeOriginal, EXIF:ModifyDate und EXIF:CreateDate.
Bearbeiten 2: Irgendwann scheint sich die Art und Weise geändert zu haben, wie Windows PNG-Metadaten liest. Es scheint das Lesen des PNG-IDAT-Chunks zu stoppen, selbst wenn Daten darüber hinaus vorhanden sind, was von der Spezifikation zugelassen wird. PNG:CreationTime
werden möglicherweise nicht richtig angezeigt, wenn sie von exiftool geschrieben werden. Siehe diesen Beitrag im Exiftool-Forum .
Bearbeiten 3: In exiftool Version 10.71 hat Phil Harvey die Art und Weise geändert, wie exiftool das PNG:CreationTime
Tag geschrieben hat, um dem PNG RFC-1123-Format zu folgen ( Link Link ). Windows scheint dieses Format nicht lesen zu können. Diese Änderung wurde ab Version 11.13 mit einer Option zum Erzwingen der PNG-Spezifikation mit der -api StrictDate
Option rückgängig gemacht.
PNG unterstützt kein EXIF in seinem Dateiformat. Es gibt Möglichkeiten, bestimmte Daten hinzuzufügen, die als "Chunks" bekannt sind, aber ich sehe "Aufnahmedatum" nicht speziell im Standard .
Meine Empfehlung ist, alles in JPG zu konvertieren und dann das EXIF-Tool oder Lightroom zu verwenden, um Informationen zum Aufnahmedatum hinzuzufügen. Wenn Sie einen Mac verwenden, ist höchstwahrscheinlich ein Apple-Skript verfügbar.
mattdm
Chris
mattdm