欢迎访问宙启技术站
智能推送

PHP图像处理函数:快速实现图像裁剪、缩放、水印等操作

发布时间:2023-06-06 09:26:39

PHP图像处理函数是PHP内置的一个图像处理扩展,包含了大量对图像进行操作的函数,比如图像裁剪、缩放、水印等。通过PHP图像处理函数,我们可以快速的对图片进行处理,而不必依赖其他第三方库。

一、 图像裁剪

图像裁剪是指将原图中的一部分按照指定的尺寸切割下来,生成一个新的图像。具体实现方式是通过如下函数进行操作:

imagecrop($image, $rect)

参数说明:

$image:待处理的原图像。

$rect:一个数组,包含了裁剪区域的左上角坐标和宽高。例如:array('x' => 0, 'y' => 0, 'width' => 100, 'height' => 100)。

例如:

//打开原图像

$image = imagecreatefromjpeg('source.jpg');

//指定裁剪区域

$rect = array('x' => 0, 'y' => 0, 'width' => 100, 'height' => 100);

//裁剪图像,并保存到新的文件

$cropped_image = imagecrop($image, $rect);

imagejpeg($cropped_image, 'cropped.jpg');

二、 图像缩放

图像缩放是指将原图按照指定的比例进行缩放或者放大。具体实现方式是通过如下函数进行操作:

imagescale($image, $new_width, $new_height)

参数说明:

$image:待处理的原图像。

$new_width:缩放后的宽度。

$new_height:缩放后的高度。

例如:

//打开原图像

$image = imagecreatefromjpeg('source.jpg');

//指定缩放后的宽高

$new_width = 200;

$new_height = 200;

//缩放图像,并保存到新的文件

$scaled_image = imagescale($image, $new_width, $new_height);

imagejpeg($scaled_image, 'scaled.jpg');

三、 添加水印

图像添加水印是指在原图上添加指定的文字或者图片,一般用于版权保护或者品牌宣传。具体实现方式是通过如下函数进行操作:

imagecopy($dst_im, $src_im, $dst_x, $dst_y, $src_x, $src_y, $src_w, $src_h)

参数说明:

$dst_im:目标图像。

$src_im:源图像。

$dst_x:目标图像的左上角x坐标。

$dst_y:目标图像的左上角y坐标。

$src_x:源图像的左上角x坐标。

$src_y:源图像的左上角y坐标。

$src_w:源图像的宽度。

$src_h:源图像的高度。

例如:

//打开原图像

$image = imagecreatefromjpeg('source.jpg');

//打开水印图像

$watermark = imagecreatefrompng('watermark.png');

//获取水印图像的宽高

$watermark_width = imagesx($watermark);

$watermark_height = imagesy($watermark);

//计算水印图像在原图中的位置

$x = imagesx($image) - $watermark_width - 10;//右下角留白为10

$y = imagesy($image) - $watermark_height - 10;

//将水印图像复制到原图像中

imagecopy($image, $watermark, $x, $y, 0, 0, $watermark_width, $watermark_height);

//保存到新的文件

imagejpeg($image, 'watermarked.jpg');

以上就是PHP图像处理函数的三个基本操作,通过组合这些操作可以实现更复杂的图像处理需求。