要在PHP中实现图片水印效果,可以使用GD库来处理图像。以下是一个简单的示例代码,演示如何在图像上添加模糊的水印文字。
<?php
// 原始图片路径
$sourceImage = 'path/to/source/image.jpg';
// 水印文字
$watermarkText = 'Watermark Text';
// 创建图像资源
$image = imagecreatefromjpeg($sourceImage);
// 获取图像尺寸
$imageWidth = imagesx($image);
$imageHeight = imagesy($image);
// 创建水印文字图像
$watermark = imagecreatetruecolor($imageWidth, $imageHeight);
// 设置水印文字颜色
$color = imagecolorallocate($watermark, 255, 255, 255); // 白色
// 设置水印文字字体
$font = 'path/to/font.ttf';
// 添加模糊效果
imagealphablending($watermark, false);
imagesavealpha($watermark, true);
imagefilledrectangle($watermark, 0, 0, $imageWidth, $imageHeight, imagecolorallocatealpha($watermark, 255, 255, 255, 127));
imagettftext($watermark, 20, 0, 10, 30, $color, $font, $watermarkText);
// 设置水印透明度
imagefilter($watermark, IMG_FILTER_GAUSSIAN_BLUR);
// 将水印图像合并到原始图像
imagecopymerge($image, $watermark, 0, 0, 0, 0, $imageWidth, $imageHeight, 50);
// 输出图像
header('Content-type: image/jpeg');
imagejpeg($image);
// 释放资源
imagedestroy($image);
imagedestroy($watermark);
?>
请注意,上述示例代码中的path/to/source/image.jpg
和path/to/font.ttf
需要替换为实际的图片路径和字体路径。
此代码将在原始图像上添加一个模糊的水印文字。您可以根据需要调整水印文字的大小、位置、颜色和透明度。
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站