Readme.ge Blog

FB image FB image

WaterMark ანუ დავსვათ სურათზე სურათი

ავტორი: ალექსანდრე თარიღი: Sunday, July 27th, 2008

ალბათ ბევრგან შეხვდებით ფოტოალბომში სურათზე ე.წ. watermark-ს, პირობითად მას პირადი ბეჭედი ვუწოდოთ 🙂
მისი გაკეთებისთვის საჭიროა GD2 და ცოტაოდენი ფუნქცია გემოვნებით :), მოკლედ ქვემოთ მოცემულია ფუნქცია რომელიც ახორციელებს სურათზე სასურველი ბეჭდის დასმას სასურველი გამჭირვალობით.

1
2
3
4
5
6
7
8
9
10
11
12
13
function waterMark($originPhoto,$newPhoto,$transparency,$waterImage){
$photo = imagecreatefromjpeg($originPhoto);
$watermark = imagecreatefrompng($waterImage);
$watermark_width = imagesx($watermark);
$watermark_height = imagesy($watermark);
$size = getimagesize($originPhoto);
$dest_x = ($size[0] - $watermark_width);
$dest_y = ($size[1] - $watermark_height);
imagecopymerge($photo, $watermark, $dest_x, $dest_y, 0, 0, $watermark_width, $watermark_height, $transparency);
imagejpeg($photo,$newPhoto,100);
imagedestroy($photo);
imagedestroy($watermark);
}

და მისი გამოძახება ხდება

1
waterMark('originImage.jpg','newImage.jpg',100,'watermark.png');

მაშ ასე – ფუნქცია გამოძახების პარამეტრები გადავეცი ესე –
waterMark(ორიგინალი სურათი,ახალი სურათი,ბეჭდის გამჭირვალობა, ბეჭედი);
ეს ორიგინალი სურათის გვერდით გაგვიკეთებთ newImage.jpg-ს სადაც იქნება ორიგინალუ სურათი ამჯერად უკვე ჩვენი ბეჭდით. შეგვიძლია ორიგინალი და ახალი სურათი მივუთითოთ ერთიდაიგივე და ორიგინალს თავზე გადაეწერება ახალი სურათი.
ჩვენს მაგალითში ორიგინალი სურათი მოცემულია jpg ფორმატში ხოლო ბეჭედი png ფორმატში.
png სურათის შექმნისას ყურადღება მიაქციეთ რომ მას უნდა ჰქონდეს ინდექსირებული ფერები, წინააღმდეგ შემთხვევაში ჩვენი ბეჭედი დაკარგავს გამჭირვალობას. ფერების ინდექსირებისათვის შეგიძლიათ გამოიყენოთ Photoshop -> Image -> Mode -> Indexed Color…

წარმატებულ ხატვას გისურვებთ 🙂

კატეგორიებში: GD2, PHP. |

2 გამოხმაურება “WaterMark ანუ დავსვათ სურათზე სურათი”-ზე

  1. PUSHKINA:

    გაუმარჯოს! ამ მარკირების მუგამი მაქვს და ვერა და ვერ ვისწავლე როგორ უნდა ამის გაკეტება…ვცადე კიდეც შენი დაწერილი კოდით მაგის გაკეტება ,მაგრამ არაპერი გამომივიდა…ვაპ ჩათისთვის მინდა და ფოტოს ატვირტვის სკრიპტსაც მოგცემ და იმასაც რომელსაც მომხმარებლის სურათი გამოაქ და დამიყენე რა…წინასწარ გმადლობ

  2. კოტე:

    ძალიან მაინტერესებს ეს როგორ უნდა ჩავსვა მჰირდება და ვერაპრიტ ვერ ვაკეთებ . შეგიდძლიათ უფრო გასაგებად დაწეროთ? წინსწარ მადლობა

დატოვე კომენტარი

...