生成缩略图


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 相关文章推荐
模仿OSO的论坛(五)
Oct 09 PHP
php面向对象全攻略 (十一)__toString()用法 克隆对象 __call处理调用错误
Sep 30 PHP
php中计算时间差的几种方法
Dec 31 PHP
在WAMP环境下搭建ZendDebugger php调试工具的方法
Jul 18 PHP
探讨如何在PHP开启gzip页面压缩实例
Jun 09 PHP
PHP实用函数分享之去除多余的0
Feb 06 PHP
ThinkPHP实现递归无级分类――代码少
Jul 29 PHP
PHP递归实现层级树状展开
Apr 01 PHP
php json相关函数用法示例
Mar 28 PHP
ThinkPHP中获取指定日期后工作日的具体日期方法
Oct 14 PHP
php 实现简单的登录功能示例【基于thinkPHP框架】
Dec 02 PHP
WordPress免插件实现面包屑导航的示例代码
Aug 20 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学习之数据类型之间的转换代码
2011/05/29 PHP
Laravel 5框架学习之Laravel入门和新建项目
2015/04/07 PHP
PHP利用curl发送HTTP请求的实例代码
2020/07/09 PHP
客户端静态页面玩分页
2006/06/26 Javascript
使用JavaScript构建JSON格式字符串实现步骤
2013/03/22 Javascript
本地图片预览(支持IE6/IE7/IE8/Firefox3)经验总结
2013/03/25 Javascript
jquery特效 幻灯片效果示例代码
2013/07/16 Javascript
javascript中验证大写字母、数字和中文
2014/01/15 Javascript
JS阻止冒泡事件以及默认事件发生的简单方法
2014/01/17 Javascript
js检验密码强度(低中高)附图
2014/06/05 Javascript
js自动生成的元素与页面原有元素发生堆叠的解决方法
2014/09/04 Javascript
使用jquery解析XML的方法
2014/09/05 Javascript
jQuery制作简洁的多级联动Select下拉框
2014/12/23 Javascript
JS 面向对象之继承---多种组合继承详解
2016/07/10 Javascript
基于JavaScript实现屏幕滚动效果
2017/01/18 Javascript
使用vue和datatables进行表格的服务器端分页实例代码
2017/06/07 Javascript
微信小程序 开发MAP(地图)实例详解
2017/06/27 Javascript
Vue实战之vue登录验证的实现代码
2017/10/31 Javascript
vue二级路由设置方法
2018/02/09 Javascript
vue自定义指令实现方法详解
2019/02/11 Javascript
深入解析Vue源码实例挂载与编译流程实现思路详解
2019/05/05 Javascript
详解JavaScript中的坐标和距离
2019/05/27 Javascript
Vue 实现html中根据类型显示内容
2019/10/28 Javascript
[57:55]EG vs Fnatic 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
对python:threading.Thread类的使用方法详解
2019/01/31 Python
在Python中获取操作系统的进程信息
2019/08/27 Python
在Python中预先初始化列表内容和长度的实现
2019/11/28 Python
HTML块级标签汇总(小篇)
2016/07/13 HTML / CSS
悦木之源美国官网:Origins美国
2016/08/01 全球购物
C语言50道问题
2014/10/23 面试题
六十岁生日答谢词
2014/01/10 职场文书
幼儿园秋季开学寄语
2014/08/02 职场文书
求职信格式范文
2015/03/19 职场文书
初中体育教学随笔
2015/08/15 职场文书
vue 把二维或多维数组转一维数组
2022/04/24 Vue.js
JavaScript设计模式之原型模式详情
2022/06/21 Javascript