php图片等比例缩放

php图片等比例缩放

ID:37712331

大小:29.50 KB

页数:4页

时间:2019-05-29

php图片等比例缩放_第1页
php图片等比例缩放_第2页
php图片等比例缩放_第3页
php图片等比例缩放_第4页
资源描述:

《php图片等比例缩放》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、在PHP网站开发过程中,如果你建立的网站涉及大量的图片处理,必然涉及到图片上传,缩放,而如何保持图片不失真,是很多初级PHP网站开发者比较头疼的一件事,今天David就和大家分享一下如何进行图片缩放。使用之前你需要下载安装GD库,以支持PHP图片处理。下面我们结合代码讲解具体的PHP图片缩放处理的思路。12345678910111213141516171819202122232425functionresizeImage($im,$maxwidth,$maxheight,$name,$filetype){$pic_width=image

2、sx($im);$pic_height=imagesy($im);if(($maxwidth&&$pic_width>$maxwidth)

3、

4、($maxheight&&$pic_height>$maxheight)){if($maxwidth&&$pic_width>$maxwidth){$widthratio=$maxwidth/$pic_width;$resizewidth_tag=true;}if($maxheight&&$pic_height>$maxheight){$heightratio=$maxheight/$pic_he

5、ight;$resizeheight_tag=true;}if($resizewidth_tag&&$resizeheight_tag){if($widthratio<$heightratio)$ratio=$widthratio;else$ratio=$heightratio;262728293031323334353637383940414243444546474849505152}if($resizewidth_tag&&!$resizeheight_tag)$ratio=$widthratio;if($resizeheight_

6、tag&&!$resizewidth_tag)$ratio=$heightratio;$newwidth=$pic_width*$ratio;$newheight=$pic_height*$ratio;if(function_exists("imagecopyresampled")){$newim=imagecreatetruecolor($newwidth,$newheight);imagecopyresampled($newim,$im,0,0,0,0,$newwidth,$newheight,$pic_width,$pic_hei

7、ght);}else{$newim=imagecreate($newwidth,$newheight);imagecopyresized($newim,$im,0,0,0,0,$newwidth,$newheight,$pic_width,$pic_height);}$name=$name.$filetype;imagejpeg($newim,$name);imagedestroy($newim);}else{53545556$name=$name.$filetype;imagejpeg($im,$name);}}参数说明:$im图片对

8、象,应用函数之前,你需要用imagecreatefromjpeg()读取图片对象,如果PHP环境支持PNG,GIF,也可使用imagecreatefromgif(),imagecreatefrompng();$maxwidth定义生成图片的最大宽度(单位:像素)$maxheight生成图片的最大高度(单位:像素)$name生成的图片名$filetype最终生成的图片类型(.jpg/.png/.gif)代码注释:第3~4行:读取需要缩放的图片实际宽高第8~26行:通过计算实际图片宽高与需要生成图片的宽高的压缩比例最终得出进行图片缩放是根据

9、宽度还是高度进行缩放,当前程序是根据宽度进行图片缩放。如果你想根据高度进行图片缩放,你可以将第22行的语句改成$widthratio>$heightratio第28~31行:如果实际图片的长度或者宽度小于规定生成图片的长度或者宽度,则要么根据长度进行图片缩放,要么根据宽度进行图片缩放。第33~34行:计算最终缩放生成的图片长宽。第36~45行:根据计算出的最终生成图片的长宽改变图片大小,有两种改变图片大小的方法:ImageCopyResized()函数在所有GD版本中有效,但其缩放图像的算法比较粗糙。ImageCopyResamples

10、(),其像素插值算法得到的图像边缘比较平滑,但该函数的速度比ImageCopyResized()慢。第47~49行:最终生成经过处理后的图片,如果你需要生成GIF或PNG,你需要将imagejpeg()函数

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。