新客网WWW.XKER.COM:致力做中国最专业的网络学院!
学院: 操作系统 - 网络应用 - 服务器 - 网络安全 - 工具软件 - 办公软件 - Web开发 - 数据库 - 网页设计 - 图形图像 - 媒体动画 - 硬件学堂 - 存储频道 - QQ专区
您的位置:首页 > 软件开发 > .Net开发 > Asp.net教程 > 正文:C#编写的生成缩略图程序

C#编写的生成缩略图程序

新客网 XKER.COM 2005-04-25 来源: 收藏本文
 

if(fileupload.PostedFile!=null)
     {    
      //addto为要添加的属性,aboutfile为文件说明
      string nam = fileupload.PostedFile.FileName ;
      //取得文件名(抱括路径)里最后一个"."的索引
      int i= nam.LastIndexOf(".");
      //取得文件扩展名
      string newext =nam.Substring(i);
      //这里我自动根据日期和文件大小不同为文件命名,确保文件名不重复
      DateTime now = DateTime.Now;
      string newname=now.DayOfYear.ToString()+fileupload.PostedFile.ContentLength.ToString();
      //保存文件到你所要的目录,这里是IIS根目录下的upload目录.你可以改变.
      //注意: 我这里用Server.MapPath()取当前文件的相对目录.在asp.net里"\"必须用"\\"代替,把"upload\\"改成"\\upload\\"就成了取当前文件的绝对目录了
      fileupload.PostedFile.SaveAs(Server.MapPath("upload\\"+newname+newext));
      //得到这个文件的相关属性:文件名,文件类型,文件大小
      //fname.Text=myFile.PostedFile.FileName;
      //fenc.Text=myFile.PostedFile.ContentType ;
      //fsize.Text=myFile.PostedFile.ContentLength.ToString();
      //下面是生成缩略图
      System.Drawing.Image image,aNewImage;
      int width,height,newwidth,newheight;      
      image=System.Drawing.Image.FromFile(Server.MapPath("upload/"+newname.ToString()+newext.ToString()));
      System.Drawing.Image.GetThumbnailImageAbort callb =new System.Drawing.Image.GetThumbnailImageAbort(ThumbnailCallback);    
      width=image.Width;
      height=image.Height;
      if(firstpageshow.SelectedValue.ToString()=="1"&&fenlei.SelectedValue.ToString()=="5")
      {
       newwidth=203;newheight=86;       
       newheight=height*newwidth/width;
      }
      else if(isweekman.SelectedValue.ToString()=="1")
      {
       newwidth=171;newheight=111;
       newheight=height*newwidth/width;
      }
      else if(firstpageshow.SelectedValue.ToString()=="1"&&fenlei.SelectedValue.ToString()=="3")
      {
       newwidth=171;newheight=111;
       newheight=height*newwidth/width;
      }
      else
      {
       newwidth=62;newheight=80;
       newheight=height*newwidth/width;
      }
      aNewImage=image.GetThumbnailImage(newwidth,newheight,callb,new System.IntPtr());
      aNewImage.Save(Server.MapPath("upload\\"+"small_"+newname+newext));
      image.Dispose();
      //生成缩略图 生成并保存完毕,保存名是在原图名前加了一个small_。
      pic="upload/"+newname.ToString()+newext.ToString();
      smallpic="upload/small_"+newname.ToString()+newext.ToString();
     }


收藏】 【评论】 【推荐】 【投稿】 【打印】 【关闭
发表评论
要记得去论坛讨论,点击注册新会员匿名评论
评论内容:不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
阅读排行
随机推荐
实用信息推荐