Hi,
das Sortieren und Verarbeiten der Bilder erledige ich inzwischen auch automatisiert.
Ich mache es etwa so:
Delphi-Quellcode:
ImgData := TImgData.Create;
try
ImgData.BuildList := GenAll;
ImgData.ProcessFile(Filename);
if ImgData.HasEXIF then
Date := ImgData.ExifObj.GetImgDateTime
else
if ImgData.HasIPTC then
Date := ImgData.IptcObj.GetDateTime
else
Date := ImgData.FileDateTime;
//Kopieren in Verzeichnis gemäß Datum
//Weitere Verarbeitung, z. B. Rotation gemäß der
//Exif-Daten
finally
ImgData.Free;
end;
Die Units dazu hab ich gefunden, als ich irgendeinem Link in der
DP gefolgt bin. Ich glaub von hier:
http://www.delphipraxis.net/internal...ct.php?t=26085
Ich hab zwar glaub ich schon in der TImgData rumgefummelt, aber das Beispiel hier dürfte auch mit dem Original so funktionieren.
Ansonsten habe ich die Erfahrung gemacht, dass beim Kopieren / Entpacken / ... immer nur das Datum der letzten Änderung auf den Wert der Originaldatei gesetzt wird, die anderen werden meist nicht beachtet (oder gar nicht erst im Archiv gespeichert). Beim Up/Download von Dateien nicht einmal das. Lade ich etwas auf einen
FTP-Server hoch, so ist die "letzte Änderung" der Zeitpunkt des hochladens. Daher ist es eben sinnvoll, die direkt im Bild gespeicherten Daten zu verwenden.
Mfg
FAlter