Maison  >  Article  >  développement back-end  >  Comment ajouter des filigranes aux images en PHP : un didacticiel complet

Comment ajouter des filigranes aux images en PHP : un didacticiel complet

Susan Sarandon
Susan Sarandonoriginal
2024-10-18 14:02:30393parcourir

How to Add Watermarks to Images in PHP: A Comprehensive Tutorial

Ajout de filigranes aux images en PHP

Le filigrane des images implique l'ajout d'une marque visible pour protéger la propriété ou améliorer l'image de marque. PHP fournit des fonctions robustes pour incorporer de manière transparente des filigranes dans les images téléchargées sur un site Web.

Tutoriel sur l'ajout de filigranes

  • Charger des images : Utilisation imagecreatefrompng() ou imagecreatefromjpeg() fonctions pour charger le filigrane et l'image à filigraner.
  • Définir la position du filigrane : Déterminez l'emplacement souhaité du filigrane à l'aide des imagesx() et imagesy( ) fonctions pour calculer les décalages à partir des bords de l'image.
  • Copier le filigrane : Utilisez imagecopy() pour coller de manière transparente le filigrane sur l'image. Spécifiez le décalage et les dimensions du tampon pour contrôler le positionnement.
  • Sortie et nettoyage : Générez l'image filigranée à l'aide de imagepng(), imagejpeg() ou de fonctions similaires en fonction du format souhaité. Nettoyez la mémoire en détruisant les références d'image avec imagedestroy().

Exemple de code :

<code class="php">// Load watermark and image
$stamp = imagecreatefrompng('watermark.png');
$im = imagecreatefromjpeg('image.jpg');

// Set margin and stamp dimensions
$marge_right = 10;
$marge_bottom = 10;
$sx = imagesx($stamp);
$sy = imagesy($stamp);

// Copy watermark to image
imagecopy($im, $stamp, imagesx($im) - $sx - $marge_right, imagesy($im) - $sy - $marge_bottom, 0, 0, $sx, $sy);

// Output and cleanup
header('Content-type: image/png');
imagepng($im);
imagedestroy($im);</code>

Positionnement dynamique du filigrane

Si la couleur d'arrière-plan de l'image varie, vous souhaiterez peut-être ajuster dynamiquement la position du filigrane pour une visibilité optimale. Pour y parvenir, pensez à utiliser des techniques de traitement d'image comme le calcul de la luminosité ou de la saturation des couleurs et à trouver un emplacement approprié.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn