<?php
// $size = getimagesize('./wewillwatermarkyou-iptc-gd.jpg', $info);
// if(isset($info['APP13']))
// {
// $iptc = iptcparse($info['APP13']);
// var_dump($iptc);
// }
// die;
// Thies C. Arntzen'in yazdığı iptc_make_tag() işlevi
function iptc_make_tag( $rec , $data , $value )
{
$retval = chr ( 0x1C ) . chr ( $rec ) . chr ( $data ) ;
if ( $length < 0x8000 )
{
$retval .= chr ( $length >> 8 ) . chr ( $length & 0xFF ) ; }
else
{
chr ( ( $length >> 24 ) & 0xFF ) . chr ( ( $length >> 16 ) & 0xFF ) . chr ( ( $length >> 8 ) & 0xFF ) . }
return $retval . $value ;
}
// jpeg dosyasının yolu
$path = './wewillwatermarkyou.jpg' ;
// Önce jpeg dosyasında IPTC verisi var mı diye bakacağız.
// Varsa vazgeçeceğiz, çünkü IPTC verisi varsa herhangi bir resim gömemeyiz!
if ( isset ( $info [ 'APP13' ] ) ) {
die ( 'Hata: Belirtilen resimde IPTC verisi bulundu, devam edilemiyor.' ) ; }
// IPTC etiketlerini düzenleyelim
'2#025' => 'KEYWORDS' ,
'2#005' => 'OBJECT_NAME' ,
'2#007' => 'EDIT_STATUS' ,
'2#010' => 'PRIORITY' ,
'2#015' => 'CATEGORY' ,
'2#020' => 'SUPPLEMENTAL_CATEGORY' ,
'2#022' => 'FIXTURE_IDENTIFIER' ,
'2#030' => 'RELEASE_DATE' ,
'2#035' => 'RELEASE_TIME' ,
'2#040' => 'SPECIAL_INSTRUCTIONS' ,
'2#045' => 'REFERENCE_SERVICE' ,
'2#047' => 'REFERENCE_DATE' ,
'2#050' => 'REFERENCE_NUMBER' ,
'2#055' => 'CREATED_DATE' ,
'2#060' => 'CREATED_TIME' ,
'2#065' => 'ORIGINATING_PROGRAM' ,
'2#070' => 'PROGRAM_VERSION' ,
'2#075' => 'OBJECT_CYCLE' ,
'2#090' => 'CITY' ,
'2#095' => 'PROVINCE_STATE' ,
'2#100' => 'COUNTRY_CODE' ,
'2#101' => 'COUNTRY' ,
'2#103' => 'ORIGINAL_TRANSMISSION_REFERENCE' ,
'2#105' => 'HEADLINE' ,
'2#110' => 'CREDIT' ,
'2#115' => 'SOURCE' ,
'2#116' => 'COPYRIGHT_STRING' ,
'2#120' => 'CAPTION' ,
'2#121' => 'LOCAL_CAPTION' ,
'2#122' => 'CAPTION_WRITER' ,
) ;
// IPTC etiketlerini ikil veriye dönüştürelim
$data = '' ;
foreach ( $iptc as $tag => $string )
{
$data .= iptc_make_tag( 2 , $tag , $string ) ;
}
// IPTC verisini resme gömelim.
$content = iptcembed ( $data , "php://temp/maxmemory:$img " ) ; //header('Content-type: image/jpeg');
//print_r($data); die;
// Yeni resim verisini dosyaya yazalım.
$fp = fopen ( $path . '-iptc-gd.jpg' , "wb" ) ; ?>
PD9waHAKLy8gJHNpemUgPSBnZXRpbWFnZXNpemUoJy4vd2V3aWxsd2F0ZXJtYXJreW91LWlwdGMtZ2QuanBnJywgJGluZm8pOwovLyBpZihpc3NldCgkaW5mb1snQVBQMTMnXSkpCi8vIHsKICAgIC8vICRpcHRjID0gaXB0Y3BhcnNlKCRpbmZvWydBUFAxMyddKTsKICAgIC8vIHZhcl9kdW1wKCRpcHRjKTsKLy8gfQoKLy8gZGllOwoKLy8gVGhpZXMgQy4gQXJudHplbidpbiB5YXpkxLHEn8SxIGlwdGNfbWFrZV90YWcoKSBpxZ9sZXZpCmZ1bmN0aW9uIGlwdGNfbWFrZV90YWcoJHJlYywgJGRhdGEsICR2YWx1ZSkKewogICAgJGxlbmd0aCA9IHN0cmxlbigkdmFsdWUpOwogICAgJHJldHZhbCA9IGNocigweDFDKSAuIGNocigkcmVjKSAuIGNocigkZGF0YSk7CgogICAgaWYoJGxlbmd0aCA8IDB4ODAwMCkKICAgIHsKICAgICAgICAkcmV0dmFsIC49IGNocigkbGVuZ3RoID4+IDgpIC4gIGNocigkbGVuZ3RoICYgMHhGRik7CiAgICB9CiAgICBlbHNlCiAgICB7CiAgICAgICAgJHJldHZhbCAuPSBjaHIoMHg4MCkgLgogICAgICAgICAgICAgICAgICAgY2hyKDB4MDQpIC4KICAgICAgICAgICAgICAgICAgIGNocigoJGxlbmd0aCA+PiAyNCkgJiAweEZGKSAuCiAgICAgICAgICAgICAgICAgICBjaHIoKCRsZW5ndGggPj4gMTYpICYgMHhGRikgLgogICAgICAgICAgICAgICAgICAgY2hyKCgkbGVuZ3RoID4+IDgpICYgMHhGRikgLgogICAgICAgICAgICAgICAgICAgY2hyKCRsZW5ndGggJiAweEZGKTsKICAgIH0KCiAgICByZXR1cm4gJHJldHZhbCAuICR2YWx1ZTsKfQoKLy8ganBlZyBkb3N5YXPEsW7EsW4geW9sdQokcGF0aCA9ICcuL3dld2lsbHdhdGVybWFya3lvdS5qcGcnOwoKLy8gw5ZuY2UganBlZyBkb3N5YXPEsW5kYSBJUFRDIHZlcmlzaSB2YXIgbcSxIGRpeWUgYmFrYWNhxJ/EsXouCi8vIFZhcnNhIHZhemdlw6dlY2XEn2l6LCDDp8O8bmvDvCBJUFRDIHZlcmlzaSB2YXJzYSBoZXJoYW5naSBiaXIgcmVzaW0gZ8O2bWVtZXlpeiEKJGltYWdlID0gZ2V0aW1hZ2VzaXplKCRwYXRoLCAkaW5mbyk7CgppZihpc3NldCgkaW5mb1snQVBQMTMnXSkpCnsKICAgIGRpZSgnSGF0YTogQmVsaXJ0aWxlbiByZXNpbWRlIElQVEMgdmVyaXNpIGJ1bHVuZHUsIGRldmFtIGVkaWxlbWl5b3IuJyk7Cn0KCi8vIElQVEMgZXRpa2V0bGVyaW5pIGTDvHplbmxleWVsaW0KJGlwdGMgPSBhcnJheSgKCScyIzAyNScgPT4gJ0tFWVdPUkRTJywKCScyIzAwNScgPT4gJ09CSkVDVF9OQU1FJywKCScyIzAwNycgPT4gJ0VESVRfU1RBVFVTJywKCScyIzAxMCcgPT4gJ1BSSU9SSVRZJywKCScyIzAxNScgPT4gJ0NBVEVHT1JZJywKCScyIzAyMCcgPT4gJ1NVUFBMRU1FTlRBTF9DQVRFR09SWScsCgknMiMwMjInID0+ICdGSVhUVVJFX0lERU5USUZJRVInLAoJJzIjMDMwJyA9PiAnUkVMRUFTRV9EQVRFJywKCScyIzAzNScgPT4gJ1JFTEVBU0VfVElNRScsCgknMiMwNDAnID0+ICdTUEVDSUFMX0lOU1RSVUNUSU9OUycsCgknMiMwNDUnID0+ICdSRUZFUkVOQ0VfU0VSVklDRScsCgknMiMwNDcnID0+ICdSRUZFUkVOQ0VfREFURScsCgknMiMwNTAnID0+ICdSRUZFUkVOQ0VfTlVNQkVSJywKCScyIzA1NScgPT4gJ0NSRUFURURfREFURScsCgknMiMwNjAnID0+ICdDUkVBVEVEX1RJTUUnLAoJJzIjMDY1JyA9PiAnT1JJR0lOQVRJTkdfUFJPR1JBTScsCgknMiMwNzAnID0+ICdQUk9HUkFNX1ZFUlNJT04nLAoJJzIjMDc1JyA9PiAnT0JKRUNUX0NZQ0xFJywKCScyIzA5MCcgPT4gJ0NJVFknLAoJJzIjMDk1JyA9PiAnUFJPVklOQ0VfU1RBVEUnLAoJJzIjMTAwJyA9PiAnQ09VTlRSWV9DT0RFJywKCScyIzEwMScgPT4gJ0NPVU5UUlknLAoJJzIjMTAzJyA9PiAnT1JJR0lOQUxfVFJBTlNNSVNTSU9OX1JFRkVSRU5DRScsCgknMiMxMDUnID0+ICdIRUFETElORScsCgknMiMxMTAnID0+ICdDUkVESVQnLAoJJzIjMTE1JyA9PiAnU09VUkNFJywKCScyIzExNicgPT4gJ0NPUFlSSUdIVF9TVFJJTkcnLAoJJzIjMTIwJyA9PiAnQ0FQVElPTicsCgknMiMxMjEnID0+ICdMT0NBTF9DQVBUSU9OJywKCScyIzEyMicgPT4gJ0NBUFRJT05fV1JJVEVSJywKKTsKCi8vIElQVEMgZXRpa2V0bGVyaW5pIGlraWwgdmVyaXllIGTDtm7DvMWfdMO8cmVsaW0KJGRhdGEgPSAnJzsKCmZvcmVhY2goJGlwdGMgYXMgJHRhZyA9PiAkc3RyaW5nKQp7CiAgICAkdGFnID0gc3Vic3RyKCR0YWcsIDIpOwogICAgJGRhdGEgLj0gaXB0Y19tYWtlX3RhZygyLCAkdGFnLCAkc3RyaW5nKTsKfQokaW1nID0gaW1hZ2VjcmVhdGVmcm9tanBlZygnLi93ZXdpbGx3YXRlcm1hcmt5b3UuanBnJyk7CgovLyBJUFRDIHZlcmlzaW5pIHJlc21lIGfDtm1lbGltLgokY29udGVudCA9IGlwdGNlbWJlZCgkZGF0YSwgInBocDovL3RlbXAvbWF4bWVtb3J5OiRpbWciKTsKLy9oZWFkZXIoJ0NvbnRlbnQtdHlwZTogaW1hZ2UvanBlZycpOwovL3ByaW50X3IoJGRhdGEpOyBkaWU7CgovLyBZZW5pIHJlc2ltIHZlcmlzaW5pIGRvc3lheWEgeWF6YWzEsW0uCiRmcCA9IGZvcGVuKCRwYXRoLictaXB0Yy1nZC5qcGcnLCAid2IiKTsKZndyaXRlKCRmcCwgJGNvbnRlbnQpOwpmY2xvc2UoJGZwKTsKPz4=