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 相关文章推荐
通过html表格发电子邮件
Oct 09 PHP
利用递归把多维数组转为一维数组的函数
Oct 09 PHP
php HtmlReplace输入过滤安全函数
Jul 03 PHP
浅析memcache启动以及telnet命令详解
Jun 28 PHP
PHP使用mysql_fetch_object从查询结果中获取对象集的方法
Mar 18 PHP
php array_merge函数使用需要注意的一个问题
Mar 30 PHP
CodeIgniter生成静态页的方法
May 17 PHP
PHP中文字符串截断无乱码解决方法
Oct 10 PHP
php实现支持中文的文件下载功能示例
Aug 30 PHP
php微信开发之关注事件
Jun 14 PHP
PHP 99乘法表的几种实现代码
Oct 13 PHP
laravel与thinkphp之间的区别与优缺点
Mar 02 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
网站加速 PHP 缓冲的免费实现方法
2006/10/09 PHP
在字符串中把网址改成超级链接
2006/10/09 PHP
php addslashes和mysql_real_escape_string
2010/01/24 PHP
destoon安全设置中需要设置可写权限的目录及文件
2014/06/21 PHP
php计划任务之验证是否有多个进程调用同一个job的方法
2015/12/07 PHP
实例讲解YII2中多表关联的使用方法
2017/07/21 PHP
PHP实现超简单的SSL加密解密、验证及签名的方法示例
2017/08/28 PHP
PHP面向对象程序设计之对象克隆clone和魔术方法__clone()用法分析
2019/06/12 PHP
js 返回时间戳所对应的具体时间
2010/07/20 Javascript
js获取URL的参数的方法(getQueryString)示例
2013/09/29 Javascript
javascript操作excel生成报表示例
2014/05/08 Javascript
js实现显示当前状态的导航效果代码
2015/08/28 Javascript
最全的Javascript编码规范(推荐)
2016/06/22 Javascript
Node.js中路径处理模块path详解
2016/11/14 Javascript
js调用屏幕宽度的简单方法
2016/11/14 Javascript
jQuery Validate设置onkeyup验证的实例代码
2016/12/09 Javascript
jquery dataTable 获取某行数据
2017/05/05 jQuery
Node.js操作系统OS模块用法分析
2019/01/04 Javascript
vue-cli3配置与跨域处理方法
2019/08/17 Javascript
electron+vue实现div contenteditable截图功能
2020/01/07 Javascript
深入理解Antd-Select组件的用法
2020/02/25 Javascript
pandas 将索引值相加的方法
2018/11/15 Python
python3.6实现学生信息管理系统
2019/02/21 Python
python 字典的打印实现
2019/09/26 Python
python下载卫星云图合成gif的方法示例
2020/02/18 Python
Pycharm如何运行.py文件的方法步骤
2020/03/03 Python
HTML5 Notification(桌面提醒)功能使用实例
2014/03/17 HTML / CSS
四年的个人工作自我评价
2013/12/10 职场文书
社区党总支书记先进事迹材料
2014/01/24 职场文书
艺术教育实施方案
2014/05/03 职场文书
写字楼租赁意向书
2014/07/30 职场文书
带刀到教室的检讨书
2014/10/04 职场文书
公司文体活动总结
2015/05/07 职场文书
只需要这一行代码就能让python计算速度提高十倍
2021/05/24 Python
mybatis3中@SelectProvider传递参数方式
2021/08/04 Java/Android
python实现会员信息管理系统(List)
2022/03/18 Python