PHP 等比例缩放图片详解及实例代码


Posted in PHP onSeptember 18, 2016

直接上代码,imgzip($src,$newwid,$newhei)这个函数带进去的分别是原图片、缩放要求的宽度、缩放的长度。代码都备注了,不懂可以留言哈哈

<?php 

//压缩图片 缩略图

$src= "xiezheng.jpg";
$newwid=640;
$newhei= 480;
function imgzip($src,$newwid,$newhei){
 $imgInfo = getimagesize($src);

 $imgType = image_type_to_extension($imgInfo[2], false);

 $fun = "imagecreatefrom{$imgType}";

//声明图片 打开图片 在内存中
 $image = $fun($src);
//方便配置长度宽度、高度,设置框为变量wid,高度为hei
 $wid=$imgInfo[0];
 $hei=$imgInfo[1];
//判断长度和宽度,以方便等比缩放,规格按照500, 320
 if($wid>$hei){
  $wid=$newwid;
  $hei=$newwid/($wid/$hei);
 }else {
  $wid = $newhei * ($wid / $hei);
  $hei = $newhei;
 }

//在内存中建立一张图片
 $images2 = imagecreatetruecolor($newwid, $newhei); //建立一个500*320的图片

//将原图复制到新建图片中
//imagecopyresampled($dst_image, $src_image, $dst_x, $dst_y, $src_x, $src_y, $dst_w, $dst_h, $src_w, $src_h)

 imagecopyresampled($images2, $image, 0, 0, 0, 0, $wid,$hei, $imgInfo[0],$imgInfo[0]);

//销毁原始图片
 imagedestroy($image);


//直接输出图片文件

 header("Content-type: ".$imgInfo[‘mime‘]);
 imagejpeg($images2);

//保存图片 到新文件
 imagejpeg($images2, ‘new.jpg‘, 100); //10代码输出图片的质量 0-100 100质量最高

//销毁
 imagedestroy($images2);
}
imgzip($src,$newwid,$newhei);


?>

 效果

压缩前

PHP 等比例缩放图片详解及实例代码

压缩后

PHP 等比例缩放图片详解及实例代码

以上就是对PHP 等比例缩放图片的资料整理,后续继续补充相关资料,谢谢大家对本站的支持!

PHP 相关文章推荐
PHP与SQL注入攻击[二]
Apr 17 PHP
php实现jQuery扩展函数
Oct 30 PHP
ThinkPHP的RBAC(基于角色权限控制)深入解析
Jun 17 PHP
linux系统下php安装mbstring扩展的二种方法
Jan 20 PHP
php对数组排序代码分享
Feb 24 PHP
php无限遍历文件夹示例分享
Mar 04 PHP
CodeIgniter启用缓存和清除缓存的方法
Jun 12 PHP
PHP错误Parse error: syntax error, unexpected end of file in test.php on line 12解决方法
Jun 23 PHP
php基于base64解码图片与加密图片还原实例
Nov 03 PHP
php获取从html表单传递数组的方法
Mar 20 PHP
smarty中常用方法实例总结
Aug 07 PHP
php注册系统和使用Xajax即时验证用户名是否被占用
Aug 31 PHP
php mysql 封装类实例代码
Sep 18 #PHP
thinkphp自带验证码全面解析
Sep 18 #PHP
php操纵mysqli数据库的实现方法
Sep 18 #PHP
php微信公众账号开发之前五个坑(一)
Sep 18 #PHP
php中实现进程锁与多进程的方法
Sep 18 #PHP
注意!PHP 7中不要做的10件事
Sep 18 #PHP
深入理解PHP类的自动载入机制
Sep 16 #PHP
You might like
ob_start(),ob_start('ob_gzhandler')使用
2006/12/25 PHP
UCenter Home二次开发指南
2009/05/28 PHP
PHP 强制性文件下载功能的函数代码(任意文件格式)
2010/05/26 PHP
php中用于检测一个地理IP地址是否可用的代码
2012/02/19 PHP
php中取得文件的后缀名?
2012/02/20 PHP
php mysql like 实现多关键词搜索的方法
2016/10/29 PHP
PHP使用pdo实现事务处理操作示例
2018/09/05 PHP
PHP实现文字写入图片功能
2019/02/18 PHP
如何实现浏览器上的右键菜单
2006/07/10 Javascript
获取Javscript执行函数名称的方法
2006/12/22 Javascript
javascript下查找父节点的简单方法
2007/08/13 Javascript
jQuery一步一步实现跨浏览器的可编辑表格,支持IE、Firefox、Safari、Chrome、Opera
2009/08/28 Javascript
获得所有表单值的JQuery实现代码[IE暂不支持]
2012/05/24 Javascript
javascript history对象(历史记录)使用方法(实现浏览器前进后退)
2014/01/07 Javascript
js实现浮动在网页右侧的简洁QQ在线客服代码
2015/09/04 Javascript
jQuery EasyUI 布局之动态添加tabs标签页
2015/11/18 Javascript
jQuery针对input的class属性写了多个值情况下的选择方法
2016/06/03 Javascript
Spring shiro + bootstrap + jquery.validate 实现登录、注册功能
2017/06/02 jQuery
如何抽象一个Vue公共组件
2017/10/17 Javascript
使用vue-router完成简单导航功能【推荐】
2018/06/28 Javascript
微信小程序 如何获取网络状态
2019/07/26 Javascript
详解JavaScript 高阶函数
2020/09/14 Javascript
Python使用win32com实现的模拟浏览器功能示例
2017/07/13 Python
Python语言描述连续子数组的最大和
2018/01/04 Python
Python编程scoketServer实现多线程同步实例代码
2018/01/29 Python
python实现五子棋游戏(pygame版)
2020/01/19 Python
使用PyQt5实现图片查看器的示例代码
2020/04/21 Python
keras 获取某层输出 获取复用层的多次输出实例
2020/05/23 Python
python使用建议与技巧分享(一)
2020/08/17 Python
浅谈利用缓存来优化HTML5 Canvas程序的性能
2015/05/12 HTML / CSS
戴尔加拿大官网:Dell加拿大
2016/09/17 全球购物
技术总监的工作职责
2013/11/13 职场文书
大学生毕业自我鉴定范文
2014/02/03 职场文书
中小学生安全教育观后感
2015/06/17 职场文书
机关干部纪律作风整顿心得体会
2016/01/23 职场文书
Pyhton模块和包相关知识总结
2021/05/12 Python