PHP图像处理函数实现美图秀秀的效果:缩放、旋转、水印等
发布时间:2023-07-01 00:13:06
PHP作为一种非常流行的服务器端脚本语言,提供了许多强大的图像处理函数。在本文中,将使用PHP图像处理函数实现美图秀秀的效果,包括缩放、旋转和水印等功能。
1. 缩放图像
使用PHP的imagecreatefromjpeg()函数加载JPEG图像文件,并使用imagescale()函数缩放该图像到指定的宽度和高度。最后使用imagejpeg()函数保存缩放后的图像文件。
// 要缩放的图片 $filename = 'input.jpg'; // 缩放后的宽度和高度 $width = 500; $height = 500; // 创建一个新图像资源 $image = imagecreatefromjpeg($filename); // 缩放图像 $thumb = imagescale($image, $width, $height); // 保存缩放后的图像 imagejpeg($thumb, 'output.jpg');
2. 旋转图像
使用PHP的imagecreatefromjpeg()函数加载JPEG图像文件,并使用imagerotate()函数将图像旋转指定的角度。最后使用imagejpeg()函数保存旋转后的图像文件。
// 要旋转的图片 $filename = 'input.jpg'; // 旋转角度(顺时针,单位为度) $angle = 45; // 创建一个新图像资源 $image = imagecreatefromjpeg($filename); // 旋转图像 $rotated = imagerotate($image, $angle, 0); // 保存旋转后的图像 imagejpeg($rotated, 'output.jpg');
3. 添加水印
使用PHP的imagecreatefromjpeg()函数加载JPEG图像文件,并使用imagecreate()函数创建一个图像资源作为水印图像。然后使用imagecopy()函数将水印图像复制到原图像上,并使用imagejpeg()函数保存添加水印后的图像文件。
// 要添加水印的图片 $filename = 'input.jpg'; // 水印图片 $watermark_file = 'watermark.png'; // 创建一个新图像资源 $image = imagecreatefromjpeg($filename); // 创建水印图像 $watermark = imagecreatefrompng($watermark_file); // 获取原图像的宽度和高度 $width = imagesx($image); $height = imagesy($image); // 获取水印图像的宽度和高度 $watermark_width = imagesx($watermark); $watermark_height = imagesy($watermark); // 水印位置(右下角) $x = $width - $watermark_width - 10; $y = $height - $watermark_height - 10; // 将水印图像复制到原图像上 imagecopy($image, $watermark, $x, $y, 0, 0, $watermark_width, $watermark_height); // 保存添加水印后的图像 imagejpeg($image, 'output.jpg');
以上就是使用PHP图像处理函数实现美图秀秀的效果的方法。通过这些函数,可以实现图像的缩放、旋转和添加水印等操作,使图片更加生动和丰富。
