利用PHP实现图片等比例放大和缩小的方法详解


Posted in PHP onJune 06, 2013
    function resizeimage($srcfile,$mySize){
    $size=getimagesize($srcfile);
    switch($size[2]){
    case 1:
    $img=imagecreatefromgif($srcfile);
    break;
    case 2:
    $img=imagecreatefromjpeg($srcfile);
    break;
    case 3:
    $img=imagecreatefrompng($srcfile);
    break;
    }
    //源图片的宽度和高度
    $oldImg['w']=imagesx($img);
    $oldImg['h']=imagesy($img);
    if ($oldImg['w']<=$mySize['w'] && $oldImg['h']<156){
    $rate=1;
    }elseif ($oldImg['w']>$mySize['w'] && $oldImg['h']<$mySize['h']){
    $rate=$mySize['w']/$oldImg['w'];
    }elseif ($oldImg['w']<$mySize['w'] && $oldImg['h']>$mySize['h']){
    $rate=$mySize['h']/$oldImg['h'];
    }elseif ($oldImg['w']>$mySize['w'] && $oldImg['h']>$mySize['h']){
    $rate1=$mySize['w']/$oldImg['w'];
    $rate2=$mySize['h']/$oldImg['h'];
    if ($rate1>$rate2){$rate=$rate2;}else{$rate=$rate1;}
    }
    $newImg['w']=$oldImg['w']*$rate;
    $newImg['h']=$oldImg['h']*$rate;
    return "width=".$newImg['w']." height=".$newImg['h'];
    }

应用实例
   $mySize=array('w'=>143,'h'=>156);
   $imgSize=resizeimage("22.jpg",$mySize);
   echo "<img src=\"22.jpg\"".resizeimage("22.jpg",$mySize)."/>";
PHP 相关文章推荐
通过ODBC连接的SQL SERVER实例
Oct 09 PHP
php strstr查找字符串中是否包含某些字符的查找函数
Jun 03 PHP
php程序效率优化的一些策略小结
Jul 17 PHP
Discuz7.2版的faq.php SQL注入漏洞分析
Aug 06 PHP
微信公众平台开发关注及取消关注事件的方法
Dec 23 PHP
php写入、删除与复制文件的方法
Jun 20 PHP
PHP实现根据图片色界在不同位置加水印的方法
Aug 08 PHP
PHP消息队列用法实例分析
Feb 12 PHP
PHP 闭包详解及实例代码
Sep 28 PHP
php制作基于xml的RSS订阅源功能示例
Feb 08 PHP
php高性能日志系统 seaslog 的安装与使用方法分析
Feb 29 PHP
aec加密 php_php aes加密解密类(兼容php5、php7)
Mar 14 PHP
PHP删除目录及目录下所有文件的方法详解
Jun 06 #PHP
解决PHP超大文件下载,断点续传下载的方法详解
Jun 06 #PHP
探讨PHP函数ip2long转换IP时数值太大产生负数的解决方法
Jun 06 #PHP
php IP转换整形(ip2long)的详解
Jun 06 #PHP
php全局变量和类配合使用深刻理解
Jun 05 #PHP
php数组声明、遍历、数组全局变量使用小结
Jun 05 #PHP
PHP Global变量定义当前页面的全局变量实现探讨
Jun 05 #PHP
You might like
PHP 存取 MySQL 数据库的一个例子
2006/10/09 PHP
PHP输出XML到页面的3种方法详解
2013/06/06 PHP
windows中为php安装mongodb与memcache
2015/01/06 PHP
PHP实现多级分类生成树的方法示例
2017/02/07 PHP
禁止你的左键复制实用技巧
2013/01/04 Javascript
JS+flash实现chrome和ie浏览器下同时可以复制粘贴
2013/09/22 Javascript
JS,Jquery获取select,dropdownlist,checkbox下拉列表框的值(示例代码)
2014/01/11 Javascript
JavaScript中统计Textarea字数并提示还能输入的字符
2014/06/10 Javascript
Javascript访问器属性实例分析
2014/12/30 Javascript
AngularJS ng-style中使用filter
2016/09/21 Javascript
纯JS代码实现隔行变色鼠标移入高亮
2016/11/23 Javascript
jQuery中的100个技巧汇总
2016/12/15 Javascript
input file样式修改以及图片预览删除功能详细概括(推荐)
2017/08/17 Javascript
用jquery获取select标签中选中的option值及文本的示例
2018/01/25 jQuery
快速解决vue-cli不能初始化webpack模板的问题
2018/03/20 Javascript
vue组件实现弹出框点击显示隐藏效果
2020/10/26 Javascript
分享vue里swiper的一些坑
2018/08/30 Javascript
vue router动态路由设置参数可选问题
2019/08/21 Javascript
1分钟快速生成用于网页内容提取的xslt
2018/02/23 Python
python随机取list中的元素方法
2018/04/08 Python
python requests库爬取豆瓣电视剧数据并保存到本地详解
2019/08/10 Python
python pygame实现球球大作战
2019/11/25 Python
在python中求分布函数相关的包实例
2020/04/15 Python
深入了解Python 方法之类方法 &amp; 静态方法
2020/08/17 Python
伦敦所有西区剧院演出官方票务代理:Theatre Tickets Direct
2017/05/26 全球购物
澳大利亚领先的孕妇服装品牌:Mamaway
2018/08/14 全球购物
乌克兰网上珠宝商店:GoldSoveren
2020/03/31 全球购物
高中生期末评语大全
2014/01/28 职场文书
电焊工岗位职责
2014/03/06 职场文书
服装店营销方案
2014/03/10 职场文书
党委领导班子整改方案
2014/09/30 职场文书
2014年财务科工作总结
2014/11/11 职场文书
2015应届毕业生自荐信范文
2015/03/05 职场文书
借款民事起诉状范文
2015/05/19 职场文书
高三毕业感言
2015/07/30 职场文书
python flask框架快速入门
2021/05/14 Python