Maison > Article > développement back-end > Tutoriel bibliothèque PHP et GD : Comment ajouter un filigrane aux images
Tutoriel bibliothèque PHP et GD : Comment ajouter des filigranes aux images
Introduction :
Dans le développement de sites Web, nous rencontrons souvent le besoin d'ajouter des filigranes aux images. Les filigranes peuvent jouer un rôle dans la protection des droits d’auteur sur les images, la promotion de la marque, etc. Cet article explique comment ajouter des filigranes aux images à l'aide de PHP et de la bibliothèque GD.
Introduction à la bibliothèque GD :
La bibliothèque GD est une bibliothèque de traitement d'images en PHP. Il fournit un ensemble de fonctions pour créer, éditer et produire des images. Pour utiliser la bibliothèque GD, vous devez vous assurer que PHP dispose de la bibliothèque d'extension GD installée.
Ajouter un filigrane de texte :
Pour ajouter un filigrane de texte à une image, vous devez d'abord utiliser la fonction de la bibliothèque GD pour créer un canevas et charger l'image originale sur le canevas.
<?php // 创建画布 $image = imagecreatetruecolor(500, 300); // 载入原始图片 $originalImage = imagecreatefromjpeg('path/to/your/image.jpg'); // 在画布上绘制原始图片 imagecopy($image, $originalImage, 0, 0, 0, 0, 500, 300); // 添加文字水印 $font = 'path/to/your/font.ttf'; $color = imagecolorallocate($image, 255, 255, 255); // 水印文字颜色 $text = 'Your Watermark Text'; imagettftext($image, 20, 0, 50, 50, $color, $font, $text); // 输出图片 header('Content-Type: image/jpeg'); imagejpeg($image); // 清理资源 imagedestroy($image); imagedestroy($originalImage); ?>
Dans le code ci-dessus, utilisez d'abord la fonction imagecreatetruecolor()
pour créer un canevas d'une taille de 500x300. Utilisez ensuite la fonction imagecreatefromjpeg()
pour charger l'image originale sur le canevas. Ensuite, utilisez la fonction imagettftext()
pour ajouter un filigrane de texte au canevas. Enfin, utilisez la fonction imagejpeg()
pour afficher l'image modifiée dans le navigateur. imagecreatetruecolor()
函数创建一个大小为500x300的画布。然后使用imagecreatefromjpeg()
函数将原始图片载入到画布上。接下来,使用imagettftext()
函数在画布上添加文字水印。最后,使用imagejpeg()
函数将修改后的图片输出到浏览器上。
添加图片水印:
除了文字水印,我们也可以添加图片水印。添加图片水印的过程与添加文字水印类似,只是在画布上绘制的内容改为另一张图片。
<?php // 创建画布 $image = imagecreatetruecolor(500, 300); // 载入原始图片 $originalImage = imagecreatefromjpeg('path/to/your/image.jpg'); // 在画布上绘制原始图片 imagecopy($image, $originalImage, 0, 0, 0, 0, 500, 300); // 添加图片水印 $watermark = imagecreatefrompng('path/to/your/watermark.png'); imagecopy($image, $watermark, 0, 0, 0, 0, 100, 100); // 输出图片 header('Content-Type: image/jpeg'); imagejpeg($image); // 清理资源 imagedestroy($image); imagedestroy($originalImage); imagedestroy($watermark); ?>
在上述代码中,我们首先使用imagecreatetruecolor()
函数创建一个大小为500x300的画布,然后使用imagecreatefromjpeg()
函数载入原始图片。接着,使用imagecreatefrompng()
函数载入水印图片,并使用imagecopy()
函数将水印绘制到画布上。最后,使用imagejpeg()
En plus des filigranes de texte, nous pouvons également ajouter des filigranes d'image. Le processus d'ajout d'un filigrane d'image est similaire à l'ajout d'un filigrane de texte, sauf que le contenu dessiné sur le canevas est remplacé par une autre image.
rrreee
imagecreatetruecolor()
pour créer un canevas d'une taille de 500x300, puis utilisons la fonction imagecreatefromjpeg()
pour charger l'image originale. Ensuite, utilisez la fonction imagecreatefrompng()
pour charger l'image du filigrane et utilisez la fonction imagecopy()
pour dessiner le filigrane sur le canevas. Enfin, utilisez la fonction imagejpeg()
pour afficher l'image dans le navigateur. 🎜🎜Résumé : 🎜Grâce à l'introduction de cet article, nous avons appris à utiliser PHP et la bibliothèque GD pour ajouter des filigranes aux images. Qu'il s'agisse d'un filigrane de texte ou d'un filigrane d'image, il peut être réalisé grâce aux fonctions de la bibliothèque GD. Cela nous permet d’ajouter facilement des filigranes lors du développement du site Web. En apprenant et en pratiquant la bibliothèque GD, nous pouvons mieux effectuer le traitement et l'optimisation des 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!