PHP

PHP imagecopy如何实现水印功能

小樊
85
2024-07-10 16:54:33
栏目: 编程语言

PHP中的imagecopy函数用于将一个图像粘贴到另一个图像上,可以用来实现水印功能。下面是一个简单的示例代码:

// 创建图像资源
$src = imagecreatefromjpeg('source.jpg');
$watermark = imagecreatefrompng('watermark.png');

// 获取水印图像的宽高
$watermark_width = imagesx($watermark);
$watermark_height = imagesy($watermark);

// 将水印图像复制到源图像的指定位置
$dest_x = imagesx($src) - $watermark_width - 10;  // 水印在右下角,离右边和底边各10个像素
$dest_y = imagesy($src) - $watermark_height - 10;
imagecopy($src, $watermark, $dest_x, $dest_y, 0, 0, $watermark_width, $watermark_height);

// 输出图像到浏览器或保存到文件
header('Content-Type: image/jpeg');
imagejpeg($src, 'output.jpg');

// 释放资源
imagedestroy($src);
imagedestroy($watermark);

在这个示例中,我们首先创建了源图像和水印图像的资源,然后获取了水印图像的宽高。接下来,我们将水印图像复制到源图像的指定位置(这里是将水印放在源图像的右下角),最后输出图像到浏览器或保存到文件,并释放资源。

通过调整$dest_x和$dest_y的值,可以改变水印的位置。同时,可以使用imagecopymerge函数来实现带有透明度的水印效果。

0
看了该问题的人还看了