Maison  >  Article  >  développement back-end  >  Comment utiliser PHP pour étendre la bibliothèque de traitement d'image GD afin de créer des filigranes d'image

Comment utiliser PHP pour étendre la bibliothèque de traitement d'image GD afin de créer des filigranes d'image

王林
王林original
2023-07-29 13:37:50833parcourir

Comment utiliser la bibliothèque de traitement d'image GD étendue PHP pour créer un filigrane d'image

Introduction :
Le filigrane d'image est une technologie de traitement d'image courante qui protège les droits d'auteur de l'image en superposant une couche de texte ou d'images transparentes sur l'image, et peut ajouter des photos d'esthétique. En PHP, vous pouvez utiliser la bibliothèque de traitement d'image GD pour implémenter la fonction de filigrane d'image. Cet article expliquera comment utiliser PHP pour étendre la bibliothèque de traitement d'image GD afin de créer des filigranes d'image et fournira des exemples de code pertinents.

Introduction à la bibliothèque de traitement d'images GD :
La bibliothèque de traitement d'images GD est une bibliothèque open source permettant de créer et de modifier des images bitmap. Il fournit une série de fonctions et de méthodes permettant d'effectuer diverses opérations sur les images, notamment la mise à l'échelle, le recadrage, la rotation, le filigrane, etc. La bibliothèque GD prend en charge une variété de formats d'image, notamment GIF, JPEG et PNG, etc.

Étape 1 : Installez l'extension GD
Tout d'abord, assurez-vous que l'extension GD est installée dans votre environnement PHP. Vous pouvez vérifier si l'extension GD est installée en exécutant la commande suivante :

php -i | grep "GD Library"

Si les informations relatives à la bibliothèque GD sont renvoyées, cela signifie que l'extension GD a été installée. Si aucune information n'est renvoyée, l'extension GD n'a pas été installée. Vous pouvez installer l'extension GD via la commande suivante :

sudo apt-get install php7.0-gd

Une fois l'installation terminée, vous devez redémarrer le service Apache pour que l'extension prenne effet :

sudo service apache2 restart

Étape 2 : Créer un filigrane d'image
Les étapes pour créer un Les filigranes d'images utilisant la bibliothèque GD en PHP sont les suivants :

  1. Créez un canevas et chargez l'image originale sur le canevas :
$sourceImagePath = 'source.jpg';
$sourceImage = imagecreatefromjpeg($sourceImagePath);
  1. Créez une image ou un texte en filigrane :
$watermarkImagePath = 'watermark.png';
$watermarkImage = imagecreatefrompng($watermarkImagePath);

ou

$watermarkText = 'Copyright';
$watermarkFont = 'arial.ttf';
$watermarkSize = 20;
$watermarkColor = imagecolorallocate($sourceImage, 255, 255, 255);
  1. Superposez le filigraner une image ou un texte sur l'image originale :
imagecopy($sourceImage, $watermarkImage, $x, $y, $x_offset, $y_offset, $watermark_width, $watermark_height);

Ou

imagettftext($sourceImage, $watermarkSize, 0, $x, $y, $watermarkColor, $watermarkFont, $watermarkText);
  1. Exporter ou enregistrer une nouvelle image :
$outputImagePath = 'output.jpg';
imagejpeg($sourceImage, $outputImagePath, 100);

L'exemple de code complet est le suivant :

$sourceImagePath = 'source.jpg';
$sourceImage = imagecreatefromjpeg($sourceImagePath);

$watermarkImagePath = 'watermark.png';
$watermarkImage = imagecreatefrompng($watermarkImagePath);

$watermarkText = 'Copyright';
$watermarkFont = 'arial.ttf';
$watermarkSize = 20;
$watermarkColor = imagecolorallocate($sourceImage, 255, 255, 255);

$x = 10;
$y = 10;
$x_offset = 0;
$y_offset = 0;
$watermark_width = imagesx($watermarkImage);
$watermark_height = imagesy($watermarkImage);

imagecopy($sourceImage, $watermarkImage, $x, $y, $x_offset, $y_offset, $watermark_width, $watermark_height);

// 或者使用文字水印
//imagettftext($sourceImage, $watermarkSize, 0, $x, $y, $watermarkColor, $watermarkFont, $watermarkText);

$outputImagePath = 'output.jpg';
imagejpeg($sourceImage, $outputImagePath, 100);

La fonction de ce code est de source.jpg图片添加一个水印,然后输出为output.jpg.

Résumé :
Grâce à l'introduction de cet article, nous avons appris à utiliser PHP pour étendre la bibliothèque de traitement d'image GD afin de créer des filigranes d'image. Grâce à la bibliothèque GD, vous pouvez contrôler de manière flexible l'emplacement, la taille, la couleur et d'autres attributs des filigranes d'image, et prendre en charge plusieurs formats d'image. J'espère que cet article vous sera utile et je vous souhaite du succès dans l'utilisation des filigranes d'images !

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