![]() ![]() |
5.06.2007, 14:15
Post
#1
|
|
|
Grupa: uzytkownik Postów: 95 Wiek: 27 Tematów: 19 Dołączył: 5-05 07 Skąd: KrK Nr użytkownika: 2151 |
Artykuł przeznaczony jest dla osób bardziej doświadczonych w php (takie jest moje zdanie). Artykuł pokaże jak zrobić znak wodny na obrazkach, coś tego typu jakmożna spotkać w niektórych galeriach
Co potrzebujemy? - oczywiście serwer z obsługą php - bibliotekę GD no to zaczynamy: KOD <?php $watermark = "img/wotermark.png"; $pozycja = "lg"; // lewy górny róg $pozycja = "pg"; // prawy górny róg $pozycja = "ld"; // lewy dolny róg $pozycja = "pd"; // prawy dolny róg function watermark($plik,$pozycja) { global $watermark; $image1 = imagecreatefrompng( $watermark ); // importujemy plik png ze znakiem $image2 = imagecreatefromjpeg( $plik ); // otwieramy plik jpg, na którym ma być naklejony znaczek $plik_w = imagesx( $image2 ); // szerokość pliku $plik_h = imagesy( $image2 ); // wysokość pliku $znaczek_w = imagesx( $image1 ); // szerokość znaczka $znaczek_h = imagesy( $image1 ); // wysokość znaczka switch($pozycja) { case "lg": $od_x = 0; $od_y = 0; break; case "pg": $od_x = $plik_w - $znaczek_w; $od_y = 0; break; case "ld": $od_x = 0; $od_y = $plik_h - $znaczek_h; break; case "pd": $od_x = $plik_w - $znaczek_w; $od_y = $plik_h - $znaczek_h; break; } imagecopy( $image2, $image1, $od_x, $od_y, 0, 0, $znaczek_w, $znaczek_h ); imagejpeg( $image2 ); imagedestroy( $image1 ); imagedestroy( $image2 ); } header( "Content-type: image/jpg" ); watermark("images/tp/tapeta.jpg","br"); ?> i to cały kod, teraz wytłumaczę o co chodzi: zmienna $watermark tutaj podajemy adres do naszego znaku wodnego, zmienna pozycja przechowuje informację o tym, w którym miejscu chcemy umieścić znaczek,nie musze przypomniać, że jeżeli w skrypcie będziemy takowądeklarować, to musi być tylko jedna, chodź lepiej nie dawaćżadnej a dać przy wywołaniiu funkcji po prostu watermark($plik,"ld"); lecimy dalej, jeśli zamiast pliku watermark.png masz jakiś o inny mozszeżeniu np jpg albo gif, to wystarczy, że zmienisz tą linijkę $image1 = imagecreatefrompng( $watermark ); // importujemy plik png ze znakiem i zamiast pogrubionego tekstu w funkcji imagecreatefrompng dasz gic albo jpeg to na tyle, jakby ktoś mial jakieś pytania to piszcie -------------------- |
|
|
|
![]() ![]() |
|
Wersja Lo-Fi | Aktualny czas: 19.05.2012 - 8:08 |