加入收藏 | 设为首页 | 会员中心 | 我要投稿 辽源站长网 (https://www.0437zz.com/)- 云专线、云连接、智能数据、边缘计算、数据安全!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

详解PHP图片压缩

发布时间:2021-05-27 21:29:22 所属栏目:PHP教程 来源:互联网
导读:实际开发中,一般在上传图片时就需要对图片进行压缩操作,想要压缩图片可以使用 imagecopyresized() 或者 imagecopyresampled() 函数,而使用 imagecopyresample
实际开发中,一般在上传图片时就需要对图片进行压缩操作,想要压缩图片可以使用 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() 函数来压缩图片尺寸。

(编辑:辽源站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读