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 相关文章推荐
计算2000年01月01日起到指定日的天数
Oct 09 PHP
PHP 木马攻击防御技巧
Jun 13 PHP
destoon出现验证码不显示时的紧急处理方法
Aug 22 PHP
PHP魔术方法__GET、__SET使用实例
Nov 25 PHP
php数组去除空值函数分享
Feb 02 PHP
php通过PHPExcel导入Excel表格到MySQL数据库的简单实例
Oct 29 PHP
PHP实现对数组分页处理实例详解
Feb 07 PHP
php基于数组函数实现关联表的编辑操作示例
Jul 04 PHP
ThinkPHP5框架缓存查询操作分析
May 30 PHP
Laravel框架实现的记录SQL日志功能示例
Jun 19 PHP
PHP实现随机数字、字母的验证码功能
Aug 01 PHP
Laravel5.5 实现后台管理登录的方法(自定义用户表登录)
Sep 30 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
Ping服务的php实现方法,让网站快速被收录
2012/02/04 PHP
PHP与MYSQL中UTF8 中文排序示例代码
2014/10/23 PHP
PHP基于CURL进行POST数据上传实例
2014/11/10 PHP
php 数组字符串搜索array_search技巧
2016/07/05 PHP
PHP接收App端发送文件流的方法
2016/09/23 PHP
php的对象传值与引用传值代码实例讲解
2021/02/26 PHP
在网页中控制wmplayer播放器
2006/07/01 Javascript
非常漂亮的JS代码经典广告
2007/10/21 Javascript
超简单的jquery的AJAX用法
2010/05/10 Javascript
解析页面加载与js函数的执行 onload or ready
2013/12/12 Javascript
Javascript中内建函数reduce的应用详解
2016/10/20 Javascript
BootStrap modal模态弹窗使用小结
2016/10/26 Javascript
JS绘制微信小程序画布时钟
2016/12/24 Javascript
JavaScript使用正则表达式获取全部分组内容的方法示例
2017/01/17 Javascript
jQuery 开发之EasyUI 添加数据的实例
2017/09/26 jQuery
手机注册发送验证码倒计时的简单实例
2017/11/15 Javascript
Vue2.0学习之详解Vue 组件及父子组件通信
2017/12/12 Javascript
JS实现点击复选框变更DIV显示状态的示例代码
2017/12/18 Javascript
使用vue-router beforEach实现判断用户登录跳转路由筛选功能
2018/06/25 Javascript
elementUI Tree 树形控件的官方使用文档
2019/04/25 Javascript
Vuex实现购物车小功能
2020/08/17 Javascript
JQuery基于FormData异步提交数据文件
2020/09/01 jQuery
[03:01]完美世界DOTA2联赛PWL S2 集锦第二期
2020/12/03 DOTA
详解Python中的from..import绝对导入语句
2016/06/21 Python
Python中的is和==比较两个对象的两种方法
2017/09/06 Python
python多行字符串拼接使用小括号的方法
2020/03/19 Python
Python3自动签到 定时任务 判断节假日的实例
2018/11/13 Python
Python字符串逆序输出的实例讲解
2019/02/16 Python
python中使用input()函数获取用户输入值方式
2020/05/03 Python
纠纷协议书
2014/04/16 职场文书
乡镇干部个人对照检查材料思想汇报
2014/10/04 职场文书
党员查摆剖析材料
2014/10/10 职场文书
2015年公务员转正工作总结
2015/04/24 职场文书
劳动合同变更协议书范本
2019/04/18 职场文书
SpringBoot2 参数管理实践之入参出参与校验的方式
2021/06/16 Java/Android
nginx静态资源的服务器配置方法
2022/07/07 Servers