PHP Watermark Yapımı
23 saat önce Admin tarafından WEB: Komut Dosyaları, PHP Komut Dosyaları, PHP - Diğer kategorisinde yayınlandı.
PHP sistemlerde resim üzerine yazı ekleme, resim üzerine resim ekleme gibi watermark yapımı ile ilgili bilgiler yer almaktadır.
İçerik
PHP Watermark Yapımı
HP ile resim üzerine resim ekleme veya filigran ekleme olarak bilinen watermark yapımı iki resmin birleştirilmesinden ibarettir.
🔤 Açıklama:
Yazının resmin sağ alt köşesinde olması için çeşitli konum hesaplamaları yapılmıştır.
Böylece yazının uzunluğu değiştikçe her zaman yazının düzgün eklenmesi sağlanmıştır.
🔤 Resim Üzerine Yazı Ekleme:
Aşağıdaki örnekte imagecreatefromjpeg fonksiyonu ile jpeg formatında bir resim açılarak imagestring fonksiyonu ile resim üzerine yazı yazma işlemi gerçekleştirilmiştir.
<?php
header('content-type: image/jpeg');
$dosya = 'resim.jpg';
$yazi = 'CSArea.org;
$mevcut_resim = imagecreatefromjpeg($dosya);
list($genislik, $yukseklik) = getimagesize($dosya);
$yazi_genislik = imagefontwidth(5) * strlen($yazi);
$yazi_yukseklik = imagefontheight(5);
$yazi_renk = imagecolorallocate($mevcut_resim, 255, 255, 255);
$yazi_sag = $genislik - $yazi_genislik;
$yazi_sol = $yukseklik - $yazi_yukseklik;
imagestring($mevcut_resim, 5, $yazi_sag, $yazi_sol, $yazi, $yazi_renk);
imagejpeg($mevcut_resim);
?>
🔤 PHP Watermark Yapımı:
PHP ile resim üzerine resim ekleme veya filigran ekleme olarak bilinen watermark yapımı iki resmin birleştirilmesinden ibarettir.
İşlem için imagecopymerge, imagecopy vb. resim birleştirme fonksiyonları kullanılabilir.
<?php
header('content-type: image/jpeg');
$dosya = 'resim.jpg';
$logo = 'logo.png';
$mevcut_resim = imagecreatefromjpeg($dosya);
$eklenen_resim = imagecreatefrompng($logo);
list($genislik, $yukseklik) = getimagesize($logo);
$sag = imagesx($mevcut_resim) - $genislik;
$sol = imagesy($mevcut_resim) - $yukseklik;
imagecopy($mevcut_resim, $eklenen_resim, $sag, $sol, 0, 0, $genislik, $yukseklik);
//imagecopymerge($mevcut_resim, $eklenen_resim, $sag, $sol, 0, 0, $genislik, $yukseklik, 50);
imagejpeg($mevcut_resim);
?>
Watermark yapımı sırasında iki adet resme ihtiyaç vardır.
Bu resimlerden birisi mevcut/yüklenen resim diğeri ise üzerine eklenecek logo/filigran resmidir.
Resimleri dosya formatına göre imagecreatefromjpeg, imagecreatefrompng, imagecreatefromgif vb. fonksiyon ile açıp resim birleştirme fonksiyonları ile birleştirilir.
Birleştirme sırasında eklenen resmin konumunun iyi hesaplanması faydalı olacaktır.
Eklenen resmi mevcut resmin ortasına eklemek için gerekli hesaplamanın
$sag = (imagesx($mevcut_resim) - $genislik) / 2;
$sol = (imagesy($mevcut_resim) - $yukseklik) / 2;
olarak düzeltilmesi yeterli olacaktır.
-
Bu konuya henüz kimse cevap vermedi. İlk cevaplayan siz olun!