Page 1 sur 1

watermark, filigrane automatique

Posté : 26 août 2009, 20:44
par fabrice88250
Bonjour,
pour ma galerie photos je genere des miniatures à la volé avec le code ci dessous.
maintenant je souhaiterai mettre automatiquement un watermark a travers mes photos afin de les proteger.
j'ai biensur chercher sur google et trouvé des script et autre explications pour mettre un watermark (filigrane sur la photo) mais je ne comprend pas comment faire pour adapté ce genre de code à mon propre code.
Je suis donc a la recherche d'un coup de main, et je souhaiterai que le filigrane (watermark) soit a la fois sur les miniatures generé comme sur les grandes photos.

Voici mon code qui génere les miniatures :
<?php

/// on défini les tailles maxi pour nos miniatures  
$hauteur_max = 120;    
$largeur_max = 168;    
  
// on défini le répertoire qui contient nos images de grande taille    
$dir = '../images/galerie';    
   
// si aucune image n'est donnée en arguments, on redirige le visiteur vers l'accueil de la galerie    
if (!isset($_GET['f'])) {   
   header('location: http://www.monsite.com');   
   exit();    
}    
else {   
   // on récupère le nom de fichier à miniaturiser   
   $image = $_GET['f'];   
   $file = $dir.'/'.$image; 
 
   // on récupère les infos de cette image   
   $tableau = @getimagesize($file);   
   // si il ne s'agit pas d'un fichier image, on redirige le visiteur vers l'accueil de la galerie   
   if ($tableau == FALSE) {   
      header('location: http://www.monsite.com');   
      exit();   
   }   
   else {   
      // on détermine les dimensions de la miniature 
      $new_largeur=$tableau['0']; 
      $new_hauteur=$tableau['1']; 
       
      if ( $new_largeur > $largeur_max ) { 
        $coef=$new_largeur/$largeur_max; 
        $new_largeur=$new_largeur/$coef; 
        $new_hauteur=$new_hauteur/$coef; 
      } 
       
      if ( $new_hauteur > $hauteur_max ) { 
        $coef=$new_hauteur/$hauteur_max; 
        $new_largeur=$new_largeur/$coef; 
        $new_hauteur=$new_hauteur/$coef; 
      } 
 
      $img_out = imagecreatetruecolor($new_largeur, $new_hauteur);   
 
      // si notre image est de type jpeg   
      if ($tableau[2] == 2) { 
         $img_in = imagecreatefromjpeg($file);   
         imagecopyresampled($img_out, $img_in, 0, 0, 0, 0, $new_largeur, $new_hauteur, $tableau[0], $tableau[1]);   
         header("Content-type: image/jpg");   
         imagejpeg($img_out);   
      }   
      // si notre image est de type png   
      elseif ($tableau[2] == 3) {   
         $img_in = imagecreatefrompng($file); 
         imagecopyresampled($img_out, $img_in, 0, 0, 0, 0, $new_largeur, $new_hauteur, $tableau[0], $tableau[1]);   
         header("Content-type: image/png");   
         imagepng($img_out);   
      } 
   }    
} 

?> 

Re: watermark, filigrane automatique

Posté : 27 août 2009, 14:32
par Calimero
Bonjour,

Une piste par ici : http://fr2.php.net/imagecopymerge