站长网 PHP教程 详解PHP图片压缩

详解PHP图片压缩

实际开发中,一般在上传图片时就需要对图片进行压缩操作,想要压缩图片可以使用 imagecopyresized() 或者 imagecopyresampled() 函数,而使用 imagecopyresampled() 函数处理后图片的质量会好一些,所以在进行图片压缩时可以优先使用 imagecopyresampled()

实际开发中,一般在上传图片时就需要对图片进行压缩操作,想要压缩图片可以使用 imagecopyresized() 或者 imagecopyresampled() 函数,而使用 imagecopyresampled() 函数处理后图片的质量会好一些,所以在进行图片压缩时可以优先使用 imagecopyresampled() 函数。

首页来看一下这两个函数的语法格式

imagecopyresized(resource $dst_image, resource $src_image, int $dst_x, int $dst_y, int $src_x, int $src_y, int $dst_w, int $dst_h, int $src_w, int $src_h)
imagecopyresampled(resource $dst_image, resource $src_image, int $dst_x, int $dst_y, int $src_x, int $src_y, int $dst_w, int $dst_h, int $src_w, int $src_h)

两个函数的参数是完全一样的,说明如下:

$dst_image:目标图象连接资源。

$src_image:源图象连接资源。

$dst_x:目标 X 坐标点。

$dst_y:目标 Y 坐标点。

$src_x:源的 X 坐标点。

$src_y:源的 Y 坐标点。

$dst_w:目标宽度。

$dst_h:目标高度。

$src_w:源图象的宽度。

$src_h:源图象的高度。

这两个函数都可以将一幅图像中的一块矩形区域拷贝到另一个图像中,而 imagecopyresampled() 函数更是可以平滑地插入像素值,因此,在减小了图像的大小的同时仍然保持极大的清晰度。

通俗来讲就是,这两个函数可以从图像 $src_image 的($src_x,$src_y)位置,截取一个宽 $src_w 高 $src_h 的矩形区域,并将其复制到图像 $dst_image 中($dst_x,$dst_y)处,宽 $dst_w 高 $dst_h 的矩形区域中。

如果源和目标的宽度和高度不同,则会进行相应的图像收缩和拉伸。而坐标则是指的矩形区域的左上角。另外,两个函数都可用来在同一幅图($dst_image 和 $src_image 相同)内部进行拷贝,但如果拷贝区域交迭的话则结果不可预知。

【示例】使用 imagecopyresampled() 函数来压缩图片尺寸。

本文来自网络,不代表站长网立场,转载请注明出处:https://www.zwzz.com.cn/html/jc/php/2021/0527/6901.html

作者: dawei

【声明】:站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。
联系我们

联系我们

0577-28828765

在线咨询: QQ交谈

邮箱: xwei067@foxmail.com

工作时间:周一至周五,9:00-17:30,节假日休息

返回顶部