Exemple avec imagecopymerge pour créer un tatouage numérique translucide
PHP Manual
PHP Manual»Exemples»Exemple avec imagecopymerge pour créer un tatouage numérique translucide

Exemple avec imagecopymerge() pour créer un tatouage numérique translucide

Exemple #1 Exemple avec imagecopymerge() pour créer un tatouage numérique translucide

<?php
// Charge le cachet et la photo afin d'y appliquer le tatouage numérique
$im = imagecreatefromjpeg('photo.jpeg');

// Tout d'abord, nous créons un cachet manuellement grâce à GD
$stamp = imagecreatetruecolor(100, 70);
imagefilledrectangle($stamp, 0, 0, 99, 69, 0x0000FF);
imagefilledrectangle($stamp, 9, 9, 90, 60, 0xFFFFFF);
imagestring($stamp, 5, 20, 20, 'libGD', 0x0000FF);
imagestring($stamp, 3, 20, 40, '(c) 2007-9', 0x0000FF);

// Définit les marges du cachet et récupère la largeur et la hauteur du cachet
$marge_right = 10;
$marge_bottom = 10;
$sx = imagesx($stamp);
$sy = imagesy($stamp);

// Fusionne le cachet dans notre photo avec une opacité de 50%
imagecopymerge($im, $stamp, imagesx($im) - $sx - $marge_right, imagesy($im) - $sy - $marge_bottom, 0, 0, imagesx($stamp), imagesy($stamp), 50);

// Sauvegarde l'image dans un fichier
imagepng($im, 'photo_stamp.png');

?>
Utilisation d'imagecopymerge() pour créer un tatouage translucide
Cet exemple utilise imagecopymerge() pour fusionner le cachet avec l'image originale. Avec cette fonction, il est possible de définir l'opacité du cachet : dans cet exemple, elle est fixée à 50%. En pratique, cela est utile pour la protection des droits d'auteur, car les tatouages semi-transparents sont difficiles à retirer tout en permettant aux personnes qui regardent l'image de la voir.

To Top