Lampe16: Mit PHP das Kommentarfeld von jpg-Bildern beschriften

Ich möchte (als Minimalproblem formuliert) den Text $Comment (s.u.) in das Kommentarfeld des Bildes large.jpg schreiben. Gibt es eine PHP-Function, die so etwas leistet?

Hintergrund: Ich habe 300 Bilder manuell mit Kommentaren versehen, aber irrtümlicherweise nicht die Originalbilder mit hoher Auflösung, sondern daraus entstandene Bilder in reduzierter Auflösung. Jetzt möchte ich meinen Fehler mit einem PHP per localhost beheben, statt alle Bilder nochmal manuell zu kommentieren.

Der Lese-Anfang ist im Prinzip klar:
$DataExif = exif_read_data("small.jpg");
$Comment=$Dexif["COMMENT"][0];

Jetzt bräuchte ich eine php-Funktion, wie "exif_write_data", die den Text $Comment in das Kommentarfeld von large.jpg schreibt. So etwas habe ich aber nicht gefunden. Vielleicht gibt es doch noch einen Weg?

Herzliche Grüße
Lampe16

  1. Jetzt bräuchte ich eine php-Funktion, wie "exif_write_data", die den Text $Comment in das Kommentarfeld von large.jpg schreibt. So etwas habe ich aber nicht gefunden. Vielleicht gibt es doch noch einen Weg?

    Wenn dir IPTC reicht: http://php.net/manual/en/function.iptcembed.php

    Exif kann PHP afaik nicht nativ schreiben, da musst du auf 3rd-Party-Lösungen zurückgreifen.

  2. Tach!

    Jetzt bräuchte ich eine php-Funktion, wie "exif_write_data", die den Text $Comment in das Kommentarfeld von large.jpg schreibt. So etwas habe ich aber nicht gefunden. Vielleicht gibt es doch noch einen Weg?

    Solch eine Funktion existiert wohl wirklich nicht (direkt in PHP). Aber das heißt nicht, dass man mit der Suche nach "php exif write" keine Alternativen findet.

    dedlfix.

  3. Danke dedlfix und suit,
    ich habe natürlich vor meiner Anfrage mit den Begriffen php exif write recherchiert, aber was da kommt, sieht für mich nicht so aus, als wenn ich das für meinen Fall in ein php-Skript münden lassen könnte.

    iptcembed.php sieht trotzdem interessant aus. Die erste Schwierigkeit ist aber (für einen Unterstufen-php-ler wie mich), dass das Kommentarfeld offenbar nicht Teil der IPTC-Daten ist. Ich könnte aber die Texteintäge auch im Feld "Caption" unterbringen. Das habe ich für ein Probebild versucht, scheitere aber ntürlich daran, dass schon andere IPTC-Daten da sind, die ich nicht löschen will. Die Beiträge zu iptcembed() und die darin ausgebreiteten Schwierigkeiten sind auch nicht ermutigend. Ich werde wohl doch die Sache händisch angehen müssen. Das wird ca. 3 Stunden dauern, was wahrscheinlich weniger ist, als die Zeit für ein funktionierendes php-Skript - obwohl das Programmieren mehr Spass macht als der sture Copy&Paste-Drill mit Irfanview (im Übrigen eine ausgezeichnete Freeware).

    Herzliche Grüße
    Lampe16

    ps:
    Die Caption-Verwendung ist doch keine Lösung, da meine komplette jpg-Verwaltung auf Einträgen im Comment-Feld beruht und ich da Kontinuität wahren muss.