Sæt vandmærker på alle billeder med et snuptag
Sat på siden 01-10-2004
Vil du gerne beskytte dine billeder med et vandmærke? Det er et hårdt arbejde og kræver, at du bruger et fotobehandlingsprogram og indsætter et vandmærke på samtlige billeder ... eller at du laver lidt PHP-koder.
Sådan kan det se ud, når PHP sætter et vandmærke på: http://www.tips-og-tricks.com/eksempler/watermark.html
Et sådant vandmærke kræver tre ting:
- En en .gif- eller .png-fil med transparent baggrund
- Et PHP-script
-
En kode ved selve billedet
Giffen eller .png-filen laver du i et fotobehandlingsprogram.
PHP-scriptet skal se sådan her ud:
<?php
header('content-type: image/jpeg');
$watermark =
imagecreatefrompng('watermark.png');
$watermark_width =
imagesx($watermark);
$watermark_height = imagesy($watermark);
$image =
imagecreatetruecolor($watermark_width, $watermark_height);
$image =
imagecreatefromjpeg($_GET['src']);
$size =
getimagesize($_GET['src']);
$dest_x = $size[0] - $watermark_width -
5;
$dest_y = $size[1] - $watermark_height - 5;
imagecopymerge($image,
$watermark, $dest_x, $dest_y, 0, 0, $watermark_width, $watermark_height,
100);
imagejpeg($image);
imagedestroy($image);
imagedestroy($watermark);
?>
Du kan fx gemme filen under navnet watermark.php. Jeg har en mappe, der
hedder "includes" til den slags scripts.
Udskift navnet på billedet. Mit
hedder "watermark.png", men her kan du skrive navnet på dit billede.
For hvad angår koden ved selve billedet, så ser den normalt sådan omtrent ud:
<img src="billedenavn.jpg" alt="Forklaring">
Nu skal der tilføjes lidt. Koden til mit billede med vandmærket ser således ud:
<img src=../includes/watermark.php?src=../eksempler/bryllup.jpg width="400" height="300" alt="Dansk bryllup i Paris">
Ud for "src" skal du altså have stien til dit PHP-script efterfulgt af et spørgsmålstegn og herefter src + stien til det billede, der skal have vandmærke på.
Hvis alle dine billeder skal have vandmærke, er det let at lave en søg og erstat på fx src.