生成缩略图


Posted in PHP onOctober 09, 2006

生成缩略图 $tx=GetImageSize($sample);
  if($tx[0]<=$tx[1] and $tx[1]>=120){
     $height=120;
     $width=intval($height*$tx[0]/$tx[1]);
  }
  if($tx[0]>=$tx[1] and $tx[0]>=100){
     $width=100;
     $height=intval($width*$tx[1]/$tx[0]);
  }
  if($tx[0]<100 and $tx[1]<120){
     $width=$tx[0];
     $height=$tx[1];
  }

  makethumb2($sample,$target,$width,$height);

  // $srcFile: 源文件
  // $dstFile: 目标文件
  // $dstW: 目标图片宽度
  // $dstH: 目标文件高度
  function makethumb2($srcFile,$dstFile,$dstW,$dstH){
           $data=GetImageSize($srcFile,&$info);
           switch($data[2]){
                  case 1:
                       $im=@ImageCreateFromGIF($srcFile);
                       break;
                  case 2:
                       $im=@ImageCreateFromJPEG($srcFile);
                       break;
                  case 3:
                       $im=@ImageCreateFromPNG($srcFile);
                       break;
           }
           $srcW=ImageSX($im);
           $srcH=ImageSY($im);
           $ni=ImageCreate($dstW,$dstH);
           ImageCopyResized($ni,$im,0,0,0,0,$dstW,$dstH,$srcW,$srcH);
           ImageJpeg($ni,$dstFile);
           // 如果需要输出到浏览器,那么将上一句改为ImageJpeg($ni);
           // 如果需要其它格式的图片,改动最后一句就可以了
  }

PHP 相关文章推荐
dedecms中常见问题修改方法总结
Mar 21 PHP
php入门学习知识点三 PHP上传
Jul 14 PHP
30 个很棒的PHP开源CMS内容管理系统小结
Oct 14 PHP
仿Aspnetpager的一个PHP分页类代码 附源码下载
Oct 08 PHP
完美解决令人抓狂的zend studio 7代码提示(content Assist)速度慢的问题
Jun 20 PHP
php生成数组的使用示例 php全组合算法
Jan 16 PHP
CodeIgniter框架过滤HTML危险代码
Jun 12 PHP
PHP使用Session遇到的一个Permission denied Notice解决办法
Jul 30 PHP
php array_multisort 对数组进行排序详解及实例代码
Oct 27 PHP
PHP格式化显示时间date()函数代码
Oct 03 PHP
在TP5数据库中四个字段实现无限分类的示例
Oct 18 PHP
laravel 出现command not found问题的解决方案
Oct 23 PHP
一个目录遍历函数
Oct 09 #PHP
phpBB BBcode处理的漏洞
Oct 09 #PHP
用IE远程创建Mysql数据库的简易程序
Oct 09 #PHP
PHP使用者状态管理功能的应用
Oct 09 #PHP
PHP安全编程之加密功能
Oct 09 #PHP
PHP中的加密功能
Oct 09 #PHP
PHP编程网上资源导航
Oct 09 #PHP
You might like
php array_pop()数组函数将数组最后一个单元弹出(出栈)
2011/07/12 PHP
PHP获取文件后缀名的三个函数
2012/10/15 PHP
php使用Cookie实现和用户会话的方法
2015/01/21 PHP
php简单实现多字节字符串翻转的方法
2015/03/31 PHP
yii添删改查实例
2015/11/16 PHP
浅谈socket同步和异步、阻塞和非阻塞、I/O模型
2016/12/15 PHP
jQuery 1.0.4 - New Wave Javascript(js源文件)
2007/01/15 Javascript
JavaScript RegExp方法获取地址栏参数(面向对象)
2009/03/10 Javascript
jquery+json 通用三级联动下拉列表
2010/04/19 Javascript
form表单中去掉默认的enter键提交并绑定js方法实现代码
2013/04/01 Javascript
jquery+php实现滚动的数字特效
2015/11/29 Javascript
200行代码实现blockchain 区块链实例详解
2018/03/14 Javascript
Angular使用Restful的增删改
2018/12/28 Javascript
Vue中使用better-scroll实现轮播图组件
2020/03/07 Javascript
只有 20 行的 JavaScript 模板引擎实例详解
2020/05/11 Javascript
vue 数据遍历筛选 过滤 排序的应用操作
2020/11/17 Javascript
python计算程序开始到程序结束的运行时间和程序运行的CPU时间
2013/11/28 Python
深入剖析Python的爬虫框架Scrapy的结构与运作流程
2016/01/20 Python
python编程实现希尔排序
2017/04/13 Python
python+selenium实现简历自动刷新的示例代码
2019/05/20 Python
Python文件读写w+和r+区别解析
2020/03/26 Python
详解CSS3选择器的使用方法汇总
2015/11/24 HTML / CSS
HTML5上传文件显示进度的实现代码
2012/08/30 HTML / CSS
HTML 5.1来了 9月份正式发布 更新内容预览
2016/04/26 HTML / CSS
英国领先的葡萄酒专家:Majestic Wine
2017/05/30 全球购物
瑞士网球商店:Tennis-Point
2020/03/12 全球购物
幼儿园实习自我鉴定
2013/12/15 职场文书
工作的心得体会
2013/12/31 职场文书
创先争优活动承诺书
2014/08/30 职场文书
大学生实训报告总结
2014/11/05 职场文书
2015年中秋节活动总结
2015/03/23 职场文书
放假通知
2015/04/14 职场文书
银行求职信范文
2019/05/13 职场文书
redis连接被拒绝的解决方案
2021/04/12 Redis
httpclient调用远程接口的方法
2022/08/14 Java/Android
CSS 实现磨砂玻璃(毛玻璃)效果样式
2023/05/21 HTML / CSS