php中图片的缩放比例
2015-10-10 00:00
811 查看
摘要: GD 库的的缩放图片流程:
1.载入图片,和创新图。
2.获取图片的缩放比
3.通过比例系数创建新图片的的比例(getimagesize()
4.创建新图画布(imagecreatetruecolor[3中获去的图片像素])
5.创建旧画布(imagecreatetruecolor[jpeg])
6.imagecopyresampled()函数进行缩放
7.image[jep]输出函数
8.imagedestery()销毁图片
下面是类的例子效果相同:
1.载入图片,和创新图。
2.获取图片的缩放比
3.通过比例系数创建新图片的的比例(getimagesize()
4.创建新图画布(imagecreatetruecolor[3中获去的图片像素])
5.创建旧画布(imagecreatetruecolor[jpeg])
6.imagecopyresampled()函数进行缩放
7.image[jep]输出函数
8.imagedestery()销毁图片
在图片保存中,我们不必在ps或其他工具来修改图片,我们也可以用代码来实现。下面举两例子,效果相同: <?php $sourcefile="images/1.jpg";//旧图路径 $dstfile="images/1_small.jpg";//新图路径 $arr=getimagesize($sourcefile);//获取图片缩放比例,这样我们不必再在目录下去查找图片属性的宽高了。 //$src_width="144"; $src_height="200";也可自定义缩放比例但过大图片会失真 $scle=0.5;//比例系数 $dst_width=ceil($arr[0]*$scle); $dst_width=ceil($arr[1]*$sclie);//新图宽高 $dst_img=imagecreatetruecolor($dst_width,$dst_height);//载入新图 $src_img=imagecreatefromjpeg($sourcefile);//载入旧图 imagecopyresampled($dst_img,$src_img,0,0,0,0$dst_width,$dst_height,$src_width,$src_height);//输出图像 imagejpeg($dst_img,$dstfile);//新图,路径 imagedestroy($dst_img); imagedestroy($src_img);//销毁图片 ?>
下面是类的例子效果相同:
<?php class Zoom{ private $srcImg;//原图地址 private $scle;//缩放系数 public function __construct($a $b){ $this->srcImg=$a; $this->scle=$b; list($src_w $src_h)=getimagesize($this->srcImg); $dst_w=ceil($src_w*$this->scle); $dst_h=ceil($src_h*$this->scle); $arr=explode("."$this->srcImg); $ext=end($arr); if($ext=="jpg"){ $src_img=imagecreatefromjpeg($this->srcImg); }else if($ext=="gif"){ $src_img=imagecreatefromgif($this->srcImg); }else if($ext=="png"){ $src_img=imagecreatefrompng($this->srcImg); }else{ echo "请选择jpg、png、gif图片格式"; exit; } $dstImg=$arr[0].$this->scle."_small".".".$ext; $dst_img=imagecreatetruecolor($dst_w$dst_h); imagecopyresampled($dst_img$src_img0000$dst_w$dst_h$src_w$src_h); if($ext=="jpg"){ imagejpeg($dst_img$dstImg); }else if($ext=="gif"){ imagegif($dst_img$dstImg); }else if($ext=="png"){ imagepng($dst_img$dstImg); } imagedestroy($src_img); imagedestroy($dst_img); } } $image="imgs/a.jpg"; $b=1; $i=new Zoom($image$b); ?>
相关文章推荐
- php实现图片缩放功能类
- 利用javascript解决图片缩放及其优化的代码
- 使用ImageMagick进行图片缩放、合成与裁剪(js+python)
- php多功能图片处理类分享(php图片缩放类)
- PHP实现绘制3D扇形统计图及图片缩放实例
- PHP图片处理之使用imagecopyresampled函数实现图片缩放例子
- 实现图像的缩放
- Android 简单的图片缩放方法
- Java高保真缩放图片
- C#实现的图片缩放与剪切功能
- android多点触控初试
- ios图片局部拉伸
- 图片缩放
- Hybrid开发 Sencha pinch事件的监听实现图片的缩放功能
- 【Android 应用开发】AndroidUI设计 之 图片浏览器
- Android仿微信朋友圈图片查看器
- Android调用相册、拍照实现缩放、切割图片
- 资源文件之间的转换
- Android中图片Bitmap的缩放
- Android drawable 图片文件夹 缩放问题