当前位置: 首页 > 编程笔记 >

php中10个不同等级压缩优化图片操作示例

曾喜
2023-03-14
本文向大家介绍php中10个不同等级压缩优化图片操作示例,包括了php中10个不同等级压缩优化图片操作示例的使用技巧和注意事项,需要的朋友参考一下

本文实例分析了php中10个不同等级压缩优化图片操作。分享给大家供大家参考,具体如下:

今天找到一个php写的压缩图片程序,可以分10个等级(0-9)来压缩,0等级时压缩比率不是很大,图片不会失真;随着压缩等级不断增大,图片会变得越来越不清晰,通常压缩后图片大小可以减少到原来的50%,压缩比还是挺大的。

如下是php压缩图片程序

<?php
Header("Content-type: image/PNG");/*告诉IE浏览器你做的程序是张图片*/
$image = @imagecreatefrompng ("banner.png"); 
imagepng ($image,null,0); /*压缩等级0-9,压缩后9最小,1最大*/
imagedestroy ($image);
?>

原图体积是125k,现在我想看看在不同的等级压缩下会得到什么样的结果。如下为测试记录。

imagepng($img,null,0); --> Size = 225K
imagepng($img,null,1); --> Size = 85.9K
imagepng($img,null,2); --> Size = 83.7K
imagepng($img,null,3); --> Size = 80.9K
imagepng($img,null,4); --> Size = 74.6K
imagepng($img,null,5); --> Size = 73.8K
imagepng($img,null,6); --> Size = 73K
imagepng($img,null,7); --> Size = 72.4K
imagepng($img,null,8); --> Size = 71K
imagepng($img,null,9); --> Size = 70.6K

我不明白的是为什么压缩等级为0时,它的体积反而变大了?

我们在优化的时候,一般采用2等级比较合适,图片没有失真,但体积减少了30%,达到优化的目的了。如果采用6、7、8、9等级压缩的话,图片有所失真,所以不宜采用这些等级进行压缩优化图片。

我们看看老外是怎么解释这个现象的:

The result seems accurate since 0 means no compression

quality Compression level: from 0 (no compression) to 9.

It's normal for the 0ed file to be larger than the original (that can be slightly compressed to begin with). You need to understand file compression and PHP GD image constructor.

老外的解释有没有道理呢?他认为原始图片其实是经过了轻微的压缩,而0等级的压缩就是一点压缩都没有,所以它的体积会大于原始图片。我感觉此话不无道理。

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP图形与图片操作技巧汇总》、《php文件操作总结》、《PHP数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《PHP运算与运算符用法总结》、《php面向对象程序设计入门教程》、《PHP网络编程技巧总结》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。

 类似资料:
  • 本文向大家介绍php实现等比例压缩图片,包括了php实现等比例压缩图片的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了php实现等比例压缩图片的具体代码,供大家参考,具体内容如下 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。

  • 本文向大家介绍php gd等比例缩放压缩图片函数,包括了php gd等比例缩放压缩图片函数的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了php gd等比例缩放压缩图片函数,供大家参考,具体内容如下 php and gd 函数参考表 gd_info 取得当前安装的 GD 库的信息 getimagesize 取得图像大小 getimagesizefromstring Get the s

  • 本文向大家介绍Docker镜像压缩与优化操作,包括了Docker镜像压缩与优化操作的使用技巧和注意事项,需要的朋友参考一下 现如今docker如此受人追捧,主要是因为它的轻量化、可以快速部署以及资源的利用。但是一个docker images质量的好与坏,主要取决于Dockerfile编写的质量。同样功能的镜像,但是不同的Dockerfile build出来的镜像大小是不一样的,这是因为docker

  • compressImage 压缩图片接口(安卓10.0.12版本支持,ios 10.0.15版本支持) 使用方法 AlipayJSBridge.call('compressImage', { apFilePaths: ["https://resource/apmlcc0ed184daffc5a0d8da86b2f518cf7b.image"], compressLevel: 4 }, f

  • 本文向大家介绍ajax上传图片到PHP并压缩图片显示的方法,包括了ajax上传图片到PHP并压缩图片显示的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了ajax上传图片到PHP并压缩图片显示的具体代码,供大家参考,具体内容如下 需求就是,上传图片并压缩图片页面效果如下图: HTML代码 CSS代码和引入的bootstrap JS代码 PHP代码 图片压缩类请下载源码 以上就是本

  • 本文向大家介绍Android图片压缩(质量压缩和尺寸压缩),包括了Android图片压缩(质量压缩和尺寸压缩)的使用技巧和注意事项,需要的朋友参考一下 在网上调查了图片压缩的方法并实装后,大致上可以认为有两类压缩:质量压缩(不改变图片的尺寸)和尺寸压缩(相当于是像素上的压缩);质量压缩一般可用于上传大图前的处理,这样就可以节省一定的流量,毕竟现在的手机拍照都能达到3M左右了,尺寸压缩一般可用于生成

  • 本文向大家介绍PHP实现图片压缩的两则实例,包括了PHP实现图片压缩的两则实例的使用技巧和注意事项,需要的朋友参考一下 本文介绍了PHP实现图片压缩的两种方法,读者可以根据具体应用参考或加以改进,以适应自身应用需求!废话不多说,主要代码部分如下: 实例1: 实例2:

  • 一个压缩操作被执行,一直等到结束或按下“取消”按钮立即中断它。当压缩或解压时,您也可以按下“后台操作”和“暂停”按钮。“后台操作”把 WinRAR 最小化到任务栏中。当完成当前操作后或您单击任务栏上的小 WinRAR 图标它会自动复原。“暂停”按钮暂停当前操作,您需要按下“继续”来恢复它。 不管在压缩还是解压时,命令窗口上部的进度条都会显示当前文件的处理进度。 当压缩和某些解压操作期间,指示总操作