PHP
Referenzliste
iptcembed
Image-Funktionen
Befehl:
mixed iptcembed ( string $iptcdata , string $jpeg_file_name [, int $spool ] )
Parameter-Liste:
Beschreibung | |
---|---|
Die zu schreibenden Daten. | |
Pfad zum JPEG-Bild. | |
Spool-Flagge. Wenn die Spule Fahne ist mehr als 2 dann die JPEG-als String zurückgegeben werden. |
Rückgabewerte:
Gibt bei Erfolg
TRUE
zurück. Im Fehlerfall wird FALSE
zurückgegeben. Beschreibung:
Bettet binären IPTC-Daten in ein JPEG-Bild.
Aktiv in Version:
(PHP 4, PHP 5, PHP 7)
Hinweis:
Hinweis:
Diese Funktion benötigt die GD-Bibliothek nicht.
iptcembed() - Beispiel: Die Einbettung IPTC-Daten in eine JPEG
Eingabe:
<?php // iptc_make_tag() function by Thies C. Arntzen function iptc_make_tag($rec, $data, $value) { $length = strlen($value); $retval = chr(0x1C) . chr($rec) . chr($data); if($length < 0x8000) { $retval .= chr($length >> 8) . chr($length & 0xFF); } else { $retval .= chr(0x80) . chr(0x04) . chr(($length >> 24) & 0xFF) . chr(($length >> 16) & 0xFF) . chr(($length >> 8) & 0xFF) . chr($length & 0xFF); } return $retval . $value; } // Pfad zur JPEG-Datei $path = './phplogo.jpg'; // Wir müssen prüfen, ob noch alle IPTC-Daten in das JPEG-Bild. // Wenn es dann aus der Patsche helfen, denn wir können jedes Bild, // das bereits einige IPTC-Daten nicht einbetten! $image = getimagesize($path, $info); if(isset($info['APP13'])) { die('Error: IPTC data found in source image, cannot continue'); } // Stellt die IPTC-Tags $iptc = array( '2#120' => 'Test image', '2#116' => 'Copyright 2008-2009, The PHP Group' ); // Konvertiert die IPTC-Tags in Binär-Code $data = ''; foreach($iptc as $tag => $string) { $tag = substr($tag, 2); $data .= iptc_make_tag(2, $tag, $string); } // Betten Sie die IPTC-Daten $content = iptcembed($data, $path); // Schreiben Sie die neue Bilddaten in die Datei. $fp = fopen($path, "wb"); fwrite($fp, $content); fclose($fp); ?>
Image-Funktionen