Einzelnen Beitrag anzeigen

Ralf Stehle

Registriert seit: 8. Aug 2003
124 Beiträge
 
Delphi 7 Professional
 
#18

Re: JPG (oder JPEG) und Kommentar oder Exif-Daten

  Alt 13. Sep 2007, 00:07
Ich bin mit dem Problem weitergekommen. Statt EXIF habe ich IPTC-Kommentare benutzt, da ich beim Experimentieren mit Irfan-View und Hexeditor den Aufbau schneller begriffen habe als den EXIF-Aufbau:

Zunächst mal den allegemeinen Aufbau von IPTC an Hand einese Beispieles:

Nachdem ich mit Irfan-View unter Bild - Information - IPTC-Daten Copyright, Caption, Caption writer, Headline und Spezial instruction eingeben habe, fand ich im Hex-Editor folgende Einträge:


Direkt nach dem ersten Header FF D8 meiner JPEG stehen folgende Bytes
FF ED 00 70 50 68 6F 74 6F 73 68 6F 70 20 33 2E 30 00 38 42 49 4D 04 04 00 00 00 00 00 53 00 53 1C 02 78 00 07 43 61 70 74 69 6F 6E 1C 02 7A 00 0E 43 61 70 74 69 6F 6E 20 77 72 69 74 65 72
1C 02 69 00 08 48 65 61 64 6C 69 6E 65 1C 02 28 00 14 53 70 65 63 69 61 6C 20 69 6E 73 74 72 75 63 74 69 6F 6E 73 1C 02 74 00 09 43 6F 70 79 72 69 67 68 74 00

FF ED Tag für die IPTC-Kommentare
00 70 = Länge (HL, LL): 112 Bytes inclusive der Längenbytes selbst bis zum abschließendem 00-Byte ganz am Ende

50 68 6F 74 6F 73 68 6F 70 = hexadezimale Darstellung für Photoshop
20 33 2E 30 00 38 42 49 4D 04 04 00 00 00 00 = verstehe ich zwar nicht, sind aber anscheinend immer so unverändert vorhanden

00 53 = Länge (HL, LL): 83 Bytes bis zum Ende ohne abschließendes 00-Byte und ohne die 2 Längenbytes mitzuzählen

1C 02 78 00 07 43 61 70 74 69 6F 6E
1C 02 7A 00 0E 43 61 70 74 69 6F 6E 20 77 72 69 74 65 72
1C 02 69 00 08 48 65 61 64 6C 69 6E 65
1C 02 28 00 14 53 70 65 63 69 61 6C 20 69 6E 73 74 72 75 63 74 69 6F 6E 73
1C 02 74 00 09 43 6F 70 79 72 69 67 68 74
00

(1C 02 leitet einen neuen Eintrag ein, 78 ist der Code für Caption, 00 07 = Länge des Eintrages
weitere Möglichkeiten: 78=Caption, 7A=Caption writer, 69=Headline, 28=Spezial instruction, 74=Copyright)

Um verschiedene Einträge zu machen, habe ich folgenden Code ausprobiert. Allerdings fehlt noch die Auswertung schon vorhandener Einträge. Es funktionert also nur wenn noch keine IPTC-Daten eingetragen ware


Vielleicht hat jemand Tipps wie der Code in der Anlage eleganter programmiert werden kann ?
Angehängte Dateien
Dateityp: pas unit1_256.pas (6,2 KB, 9x aufgerufen)
Ralf Stehle
ralfstehle@yahoo.de
  Mit Zitat antworten Zitat