PHP 文字水印是一种常见的图像处理技术,用于在图像上添加文字标记,以保护版权或标识来源。这种技术通过在图像上叠加半透明的文字,使得原始图像的内容仍然可见,但同时带有水印信息。
以下是一个简单的 PHP 函数,用于在图像上添加文字水印:
<?php
function addTextWatermark($imagePath, $text, $outputPath, $fontSize = 30, $fontColor = [255, 255, 255], $alpha = 75) {
// 获取图像资源
$image = imagecreatefromjpeg($imagePath);
if (!$image) {
die("无法加载图像");
}
// 设置字体颜色
$color = imagecolorallocatealpha($image, $fontColor[0], $fontColor[1], $fontColor[2], $alpha);
// 获取图像尺寸
$width = imagesx($image);
$height = imagesy($image);
// 计算水印位置(居中)
$textWidth = imagettfbbox($fontSize, 0, 'arial.ttf', $text);
$x = ($width - ($textWidth[2] - $textWidth[0])) / 2;
$y = ($height - ($textWidth[1] - $textWidth[7])) / 2;
// 添加水印
imagettftext($image, $fontSize, 0, $x, $y, $color, 'arial.ttf', $text);
// 保存图像
imagejpeg($image, $outputPath);
// 释放资源
imagedestroy($image);
}
// 使用示例
addTextWatermark('input.jpg', 'Watermark Text', 'output.jpg');
?>
imagecreatefromjpeg
或其他相应的函数支持。$x
和 $y
的计算方式来改变水印的位置。PHP 文字水印函数是一种强大的图像处理工具,可以有效保护图像版权和标识来源。通过合理设置水印的位置、大小和透明度,可以在不影响图像视觉效果的前提下,达到保护和管理图像的目的。
领取专属 10元无门槛券
手把手带您无忧上云