Comment générer des filigranes dynamiques de texte et d'image à l'aide de tableaux PHP
Introduction :
Dans le développement Web, la génération dynamique de filigranes de texte et d'image est une exigence très courante. Le tableau PHP est une structure de données très puissante. Lors de la génération de filigranes dynamiques de texte et d'image, nous pouvons utiliser des tableaux PHP pour réaliser des opérations rapides, flexibles et efficaces. Cet article expliquera comment utiliser les tableaux PHP pour générer des filigranes dynamiques de texte et d'image, et fournira des exemples de code pertinents.
1. Générer un filigrane de texte dynamique
$watermark = array( 'username' => 'John Smith', 'timestamp' => date('Y-m-d H:i:s') );
$textWatermark = sprintf('Username: %s, Generated at: %s', $watermark['username'], $watermark['timestamp']);
Dans l'exemple ci-dessus, nous avons utilisé la fonction sprintf pour renseigner le nom d'utilisateur et l'heure de génération dans le modèle de filigrane de texte.
2. Générer un filigrane d'image dynamique
$watermark = array( 'avatar' => '/path/to/avatar.jpg', 'timestamp' => date('Y-m-d H:i:s') );
// 创建图像资源 $originalImage = imagecreatefromjpeg($watermark['avatar']); // 获取原始图像宽度和高度 $originalWidth = imagesx($originalImage); $originalHeight = imagesy($originalImage); // 创建包含生成时间的文本水印 $textWatermark = $watermark['timestamp']; $textWidth = imagefontwidth(5) * strlen($textWatermark); $textHeight = imagefontheight(5); // 创建水印图像资源 $watermarkImage = imagecreatetruecolor($originalWidth, $originalHeight); // 设置透明背景 imagefill($watermarkImage, 0, 0, imagecolorallocatealpha($watermarkImage, 255, 255, 255, 127)); imagesavealpha($watermarkImage, true); // 复制原始图像到水印图像 imagecopy($watermarkImage, $originalImage, 0, 0, 0, 0, $originalWidth, $originalHeight); // 在水印图片上添加文本水印 imagettftext($watermarkImage, 12, 0, 10, $originalHeight - 10, imagecolorallocate($watermarkImage, 255, 255, 255), '/path/to/font.ttf', $textWatermark); // 输出合成后的图像 header('Content-Type: image/jpeg'); imagejpeg($watermarkImage); // 释放资源 imagedestroy($originalImage); imagedestroy($watermarkImage);
Dans l'exemple ci-dessus, nous créons d'abord la ressource image originale à l'aide de la fonction imagecreatefromjpeg. Ensuite, créez une ressource d'image égale à la taille de l'image originale via la fonction imagecreatetruecolor pour stocker l'image de filigrane synthétisée. Ensuite, nous utilisons la fonction imagecopy pour copier l’image originale dans l’image en filigrane. Enfin, utilisez la fonction imagettftext pour ajouter des filigranes de texte à l'image en filigrane et envoyez l'image synthétisée au navigateur via la fonction imagejpeg.
Conclusion :
Utiliser des tableaux PHP pour générer des filigranes dynamiques de texte et d'image est une méthode très flexible et efficace. Nous pouvons utiliser des tableaux PHP combinés avec des fonctions intégrées et les fonctions de la bibliothèque GD pour mettre en œuvre rapidement divers besoins. Grâce à l'introduction de cet article, je pense que les lecteurs comprennent mieux comment utiliser les tableaux PHP pour générer des filigranes dynamiques de texte et d'image, et peuvent les appliquer de manière flexible en fonction de besoins spécifiques.
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!