引言

PHP水印技术基础

1. PHP环境搭建

在开始之前,请确保您的计算机上已安装PHP环境。可以使用XAMPP、WAMP或LAMP等集成环境快速搭建。

<?php
// 检查PHP版本
echo 'PHP版本: ' . phpversion();
?>

2. 需要使用的库

<?php
// 安装GD库
extension_loaded('gd') || dl('php_gd2.dll');
?>

添加水印的基本步骤

1. 图片读取

<?php
// 读取图片
$image = imagecreatefromjpeg('original.jpg');
?>

2. 水印图片创建

<?php
// 创建水印图片
$watermark = imagecreatefrompng('watermark.png');
?>

3. 添加水印

<?php
// 设置水印位置
$x = (imagesx($image) - imagesx($watermark)) / 2;
$y = (imagesy($image) - imagesy($watermark)) / 2;

// 合并图片
imagecopy($image, $watermark, $x, $y, 0, 0, imagesx($watermark), imagesy($watermark));
?>

4. 输出图片

<?php
// 输出图片
header('Content-Type: image/jpeg');
imagejpeg($image);
?>

高级技巧

1. 水印透明度调整

可以通过调整透明度来改变水印的显示效果:

<?php
// 调整水印透明度
imagealphablending($image, true);
imagesavealpha($image, true);
?>

2. 水印旋转

如果需要将水印旋转一定角度,可以使用以下代码:

<?php
// 水印旋转
$rotated_watermark = imagerotate($watermark, 45, imagecolorallocatealpha($image, 0, 0, 0, 127));
imagecopy($image, $rotated_watermark, $x, $y, 0, 0, imagesx($rotated_watermark), imagesy($rotated_watermark));
?>

总结