Creiamo un WaterMark con PHP


1 ottobre 2010 12 Commenti php

Oggi vi spiegherò come aggiungere un watermark sulle vostre foto attraverso un semplice script in php.

Il watermark è un logo di riconoscimento , inserito all’interno di una foto e/o immagini per targhettala e renderla difficile da copiare.

Questa tecnica è solitamente utilizzata dai fotografi per evitare il furto della foto, e vederla riutilizza in altre parti.


Guardiamo il codice in azione :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<?php

$fonte = $_GET['img'];

$il_nostro_logo = "ebug.png";


$watermark = imagecreatefrompng($il_nostro_logo);

$watermark_w = imagesx($watermark);

$watermark_h = imagesy($watermark);


$image = imagecreatefromjpeg($fonte);

$fonte_w = imagesx($image);

$fonte_h = imagesy($image);


$dest_x = $fonte_w - $watermark_w - 7;

$dest_y = $fonte_h - $watermark_h - 7;



imagecopy($image, $watermark, $dest_x, $dest_y, 0, 0, $watermark_w, $watermark_h);



header('Content-type: image/jpeg');

imagejpeg($image);

?>

Ora basterà richiamare la nostra immagine attraverso questa sintassi è il gioco è fatto :

1
<img src="wm.php?img=nome_foto.jpg" alt="" />

Semplice no ? Qua un esempio di watermark. Alla prossima :)




Potresti trovare interessante anche

112
Pubblicato in php |



Iscriviti alla newsletter

Vuoi ricevere ogni articolo che pubblico direttamente sulla tua mail ? Vuoi evitare di perdere qualsiasi articolo pubblico ? Registrati alla mia newsletter in un click.

Inserisci il tuo indirizzo mail:

12 commenti per Creiamo un WaterMark con PHP

Interessante come sempre, ma mi chiedo se il mark si possa inserire traslucido(termine giusto?), trasparente, in modo che anche la porzione di immagine sotto il mark sia visibile?

per trasparente certo che lo puoi fare, l’esempio stesso è fatto così.

basta usare una png senza sfondo :)

no, mi riferivo al carattere proprio da vedere in trasparenza non lo sfondo

infatti quella scritta ebug è un png senza sfondo :)

Molto utile e semplice come tecnica per inserire un watermark.

Come posso gestire la qualità delle immagini generate?
C’è un modo per mantenere le qualità (immagine + logo) originali?

Grazie in anticipo :)

@Ezio perdi qualità nel watermark ?

Sì, purtroppo sì. In alcune immagini si nota meno ma la perdita di qualità rimane comunque evidente.
Anche nell’esempio che hai inserito si nota questo problema, soprattutto se si focalizza l’attenzione sul logo “ebug”.

Sai se è possibile intervenire in qualche modo?

Grazie sempre :)

@Ezio penso sia dovuto a tanti fattori. Sia per la funzione di php , che trasla le immagini sia per la qualità delle immagini.

Gli unici consigli che ti posso dare per avere una migliore visualizzazione sarebbe quello di salvare le immagini prima di caricarle in un formato leggere, possibilmente a 72dpi e in RGB , così sicuramente la perdita di qualità si limiterà, ma ciò non vuol dire che l’immagine non possa lo stesso diminuire sul visivo.

Comunque ora provvedo a documentarmi meglio, e ti faccio sapere :D

Ok, allora attendo tue news anche perchè le immagini sono già salvate a 72dpi in RGB. ;)

Lascia un Commento