CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Web 开发 >  PHP

关于在51。NET空间上用PHP建立缩略图的问题?

楼主zidover()2004-09-02 20:20:06 在 Web 开发 / PHP 提问

小弟在CSDN上找了这段代码:  
  <?  
   
  $FILENAME=time()."_s";  
   
  //   生成图片的宽度  
  $RESIZEWIDTH=200;  
   
  //   生成图片的高度  
  $RESIZEHEIGHT=200;  
   
   
  function   ResizeImage($im,$maxwidth,$maxheight,$name){  
          $width   =   imagesx($im);  
          $height   =   imagesy($im);  
          if(($maxwidth   &&   $width   >   $maxwidth)   ||   ($maxheight   &&   $height   >   $maxheight)){  
                  if($maxwidth   &&   $width   >   $maxwidth){  
                          $widthratio   =   $maxwidth/$width;  
                          $RESIZEWIDTH=true;  
                  }  
                  if($maxheight   &&   $height   >   $maxheight){  
                          $heightratio   =   $maxheight/$height;  
                          $RESIZEHEIGHT=true;  
                  }  
                  if($RESIZEWIDTH   &&   $RESIZEHEIGHT){  
                          if($widthratio   <   $heightratio){  
                                  $ratio   =   $widthratio;  
                          }else{  
                                  $ratio   =   $heightratio;  
                          }  
                  }elseif($RESIZEWIDTH){  
                          $ratio   =   $widthratio;  
                  }elseif($RESIZEHEIGHT){  
                          $ratio   =   $heightratio;  
                  }  
                  $newwidth   =   $width   *   $ratio;  
                  $newheight   =   $height   *   $ratio;  
                  if(function_exists("imagecopyresampled")){  
                              $newim   =   imagecreatetruecolor($newwidth,   $newheight);  
                              imagecopyresampled($newim,   $im,   0,   0,   0,   0,   $newwidth,   $newheight,   $width,   $height);  
                  }else{  
                          $newim   =   imagecreate($newwidth,   $newheight);  
                              imagecopyresized($newim,   $im,   0,   0,   0,   0,   $newwidth,   $newheight,   $width,   $height);  
                  }  
                  ImageJpeg   ($newim,$name   .   ".jpg");  
                  ImageDestroy   ($newim);  
          }else{  
                  ImageJpeg   ($im,$name   .   ".jpg");  
          }  
  }  
   
   
   
  if($_FILES['image']['size']){  
          if($_FILES['image']['type']   ==   "image/pjpeg"){  
                  $im   =   imagecreatefromjpeg($_FILES['image']['tmp_name']);  
          }elseif($_FILES['image']['type']   ==   "image/x-png"){  
                  $im   =   imagecreatefrompng($_FILES['image']['tmp_name']);  
          }elseif($_FILES['image']['type']   ==   "image/gif"){  
                  $im   =   imagecreatefromgif($_FILES['image']['tmp_name']);  
          }  
          if($im){  
                  if(file_exists("$FILENAME.jpg")){  
                          unlink("$FILENAME.jpg");  
                  }  
                  ResizeImage($im,$RESIZEWIDTH,$RESIZEHEIGHT,$FILENAME);  
                  ImageDestroy   ($im);  
          }  
  }  
   
  ?>  
   
  <img   src="<?   echo($FILENAME.".jpg?reload=".rand(0,999999));   ?>"><br><br>  
   
  <form   enctype="multipart/form-data"   method="post">  
  <br>  
  <input   type="file"   name="image"   size="50"   value="浏览"><p>  
  <input   type="submit"   value="上传图片">  
  </form>    
   
  </body>  
  </html>  
   
  运行了一下:Fatal   error:   imagecreatetruecolor():   requires   GD   2.0   or   later   in   /z2/hztltex/public_html/product/img2.php   on   line   38  
   
  小弟把这段代码作如下修改才运行正常:  
   
              if(function_exists("imagecopyresampled")){  
                              $newim   =   imagecreate($newwidth,   $newheight);  
                              imagecopyresized($newim,   $im,   0,   0,   0,   0,   $newwidth,   $newheight,   $width,   $height);  
                  }else{  
                          $newim   =   imagecreate($newwidth,   $newheight);  
                              imagecopyresized($newim,   $im,   0,   0,   0,   0,   $newwidth,   $newheight,   $width,   $height);  
                  }  
   
  但是上传的无论是GIF还是JPG为什么上传后的文件格式是JPG?                
  问题点数:0、回复次数:6Top

1 楼pwtitle(doodoo)回复于 2004-09-04 11:32:14 得分 0

ImageJpeg   ($newim,$name   .   ".jpg");  
   
  程序只生成jpg啊。Top

2 楼hehe6(hehe6)回复于 2004-09-04 12:13:13 得分 0

jpg就不错了,GIF不支持也没办法啊,不过看看网上所有缩略图一般都是JPG图片Top

3 楼unixdotnet(byopen)回复于 2004-09-04 17:01:59 得分 0

不是说51不支持gdTop

4 楼surfchen(冲浪)回复于 2004-09-05 01:54:05 得分 0

支持的。。Top

5 楼efan100(壹帆)回复于 2004-09-05 17:50:19 得分 0

版权问题,有些不让支持的Top

6 楼zhangfeng1133()回复于 2005-09-05 16:11:33 得分 0

听说gif的版权到期了啊Top

相关问题

  • 如何用PHP给JPG图片做缩略图?
  • 关于用php生成缩略图的问题
  • 请问.net有没有生成缩略图的方法
  • PHP中上传进度条的实现和缩略图的自动生成
  • 如何提高.net生成的缩略图质量??求教高手
  • 缩略图问题
  • 我搞asp已经一年多了,但是asp没有无阻件缩略图,所以我想改变方向,学习php了
  • 求一缩略图组件
  • 怎么显示缩略图???
  • 也求缩略图技术

关键词

得分解答快速导航

  • 帖主:zidover

相关链接

  • Web开发类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo