大家都知道的,PHP可以做到生成图片的,不过有谁知道PHP还可以做到图片的压缩?而且优化生成图片的体积可以压缩到极小,嗯,就是极小,可控的压缩比率,感觉66的
具体怎么生成图片就不说了吧,应该都会吧,不会可以去看看。
当然,不仅仅可以压缩生成的图片的,你可以对其他的图片进行压缩,不过如果你服务器硬盘够大,带宽够足,其实没什么必要,现在一般的CDN应该都有图片压缩的功能吧,好多浏览器都有类似的功能
生成图片一般是这个函数imagepng,这个函数还可以做到图片压缩的功能。
压缩的范围在0-9之间 0就不不压缩咯,压缩参数9应该就是最极致的压缩了,当然,失真是肯定的了。
以我图片化密码为例
imagepng($img,null,0); 文件的体积是4530 字节
imagepng($img,null,1); 文件的体积是453 字节
imagepng($img,null,2); 文件的体积是446 字节
imagepng($img,null,3); 文件的体积是437 字节
imagepng($img,null,4); 文件的体积是409 字节
imagepng($img,null,5); 文件的体积是396 字节
imagepng($img,null,6); 文件的体积是386 字节
imagepng($img,null,7); 文件的体积是385 字节
imagepng($img,null,8); 文件的体积是386 字节
imagepng($img,null,9); 文件的体积是385 字节
由此可见,压缩的比率还是非常可观的,不过看了看别人说,在压缩比率为2的时候,效果是最好的,不失真,当然,我是图片化密码,加之最近图片又改成了base64输出,我机智的选择了9,能小点就小点
具体什么比率还是要看看你的需求了
不过 从上面的对比可以看出来,其实往后,压缩率并不是特别的高,而且图片还极易失真,所以嘛2还是最合适的一个参数的~
暂无评论