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函数来实现带有透明度的水印效果。


