Php/docs/function.iptcembed

From Get docs

iptcembed

(PHP 4, PHP 5, PHP 7)

iptcembedEmbeds binary IPTC data into a JPEG image


Description

iptcembed ( string $iptcdata , string $jpeg_file_name [, int $spool = 0 ] ) : mixed

Embeds binary IPTC data into a JPEG image.


Parameters

iptcdata
The data to be written.
jpeg_file_name
Path to the JPEG image.
spool
Spool flag. If the spool flag is less than 2 then the JPEG will be returned as a string. Otherwise the JPEG will be printed to STDOUT.


Return Values

If spool is less than 2, the JPEG will be returned, or FALSE on failure. Otherwise returns TRUE on success or FALSE on failure.


Examples

Example #1 Embedding IPTC data into a JPEG

<?php// iptc_make_tag() function by Thies C. Arntzenfunction 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;}// Path to jpeg file$path = './phplogo.jpg';// Set the IPTC tags$iptc = array(    '2#120' => 'Test image',    '2#116' => 'Copyright 2008-2009, The PHP Group');// Convert the IPTC tags into binary code$data = ;foreach($iptc as $tag => $string){    $tag = substr($tag, 2);    $data .= iptc_make_tag(2, $tag, $string);}// Embed the IPTC data$content = iptcembed($data, $path);// Write the new image data out to the file.$fp = fopen($path, "wb");fwrite($fp, $content);fclose($fp);?>

Notes

Note:

This function does not require the GD image library.