怎么用php制作图片(PHP压缩图片功能的介绍)
怎么用php制作图片
PHP压缩图片功能的介绍php程序开发中经常涉及到生成缩略图,利用php生成缩略图这个过程本身没难度,但是你知道php能够优化调节生成的缩略图的质量吗?也就是说php能够控制生成缩略图的清晰度以及生成后的缩略图的体积。下面我们就来看看如何利用php优化我们压缩后的图片。
对于如何使用php生成缩略图这里就不介绍了,大家可以参考本站下面这篇文章:PHP自动生成缩略图函数的源码示例
首先我们来看看用php压缩图片的程序代码:
|
<?php header( 'Content-type: image/png' ); $image =@imagecreatefrompng( '//www.zzvips.com/test.png' ); imagepng( $image , 'test.png' ,0); //注意后面那个数字0,这里即压缩等级,参数范围:0-9*/ imagedestroy( $image ); ?> |
以上 imagepng 函数的第三个参数即是本篇文章所要分析的,这个参数的意思是生成图片的质量等级。这里可以分10个等级(0-9),0等级时即无压缩,图片不会失真,图片最清晰,但图片的体积也最大,随着压缩等级数字不断增大,图片会变得越来越不清晰,但压缩后图片的体积可以减少到原来的50%,压缩比还是挺大的。
下面看一个具体的例子吧,现在一个原图体积是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的时候,体积比原图还大的原因是原始图片其实是经过了轻微的压缩,而0等级的压缩就是一点压缩都没有,所以它的体积会大于原始图片。
根据以上结论和实际测试结果,得出的结论是在优化图片的时候,一般采用2等级比较合适,图片没有失真,但体积减少了30%,达到优化的目的了。如果采用6、7、8、9等级压缩的话,图片有所失真,而体积减少却不明显。所以不宜采用这些等级进行压缩优化图片。
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对开心学习网的支持。如果你想了解更多相关内容请查看下面相关链接
原文链接:http://www.codetc.com/article-259-1.html
- php开发的主要技术(详解PHP神奇又有用的Trait)
- php实现session入库实例(PHP使用Session实现上传进度功能详解)
- php错误提示问题(php提示Creating default object from empty value 的问题解决方法)
- php上传图片视频代码(详解PHP素材图片上传、下载功能)
- 安装phpstudy注意哪些问题(phpstudy怎么卸载?phpstudy卸载图文教程)
- php建造者模式实例(PHP工厂模式、单例模式与注册树模式实例详解)
- php怎么判断是否有session(PHP中Session ID的实现原理实例分析)
- 深入理解php 变量(不常用但很实用的PHP预定义变量分析)
- python核心编程内容(顶级大神Linux,Python,Go,PHP之父谁是夜猫子?用Python揭秘!)
- php字符串长度怎么获取(PHP实现给定一列字符,生成指定长度的所有可能组合示例)
- apache2.4支持php5.5吗(WINDOWS下php5.2.4+mysql6.0+apache2.2.4+ZendOptimizer-3.3.0配置)
- php生成md5(php进行md5加密简单实例方法)
- php在没有命名空间之前是怎么调(php命名空间设计思想、用法与缺点分析)
- php入门教程源代码修改教程(php+js实现的无刷新下载文件功能示例)
- php 记录的已读状态(PHP使用观察者模式处理异常信息的方法详解)
- php中类的属性含义(php类中static与self的使用区别浅析)
- 二次创业 的富士胶片,在进博会上首次展示完成转型后的全线医疗产品(二次创业的富士胶片)
- 富士胶片 中国 我们对上海的信心没有任何改变(富士胶片中国)
- 赢麻了 富士公布2021年度财报 营利同比增长240(富士公布2021年度财报)
- 医事文化谈屑 | 古人的名 字 号(医事文化谈屑古人的名)
- ()
- 网友很惭愧,自己写了很多年的字,到头来还不如一名小学生写的好(自己写了很多年的字)
热门推荐
- app开发自定义导航栏(AmazeUI底部导航栏与分享按钮的示例代码)
- 云服务器如何搭建iis(阿里云云服务器Windows 2008下IIS添加网站绑定域名图文教程)
- SQL中FOR XML PATH
- python3语法规则(详解Python3注释知识点)
- ubuntu常用命令表(Ubuntu服务器常用命令汇总)
- 为什么asp.net网站第一次加载慢
- reactmap给了key仍然提示错误(react为什么不推荐使用index作为key)
- python常用列表函数和方法(Python enumerate函数功能与用法示例)
- python编写程序读写数据库(详解js文件通过python访问数据库方法)
- 微信小程序数学公式(微信小程序计算器实例详解)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9