asp.net 中如何得到图片的高度(height)和宽度(width)以及生成图片的缩略图 C#

.net 开发中,需要得到图片的高和宽。代码如下所示:
protected   string  imgPath;
protected   string  fileExtName;

private   void  btnGet_Click( object  sender, System.EventArgs e)
{
   
if (upImage.PostedFile.FileName  !=   "" )
   {
        imgPath 
= upImage.PostedFile.FileName;
        fileExtName 
=  imgPath.Substring(imgPath.LastIndexOf( " . " ) + 1 , 3 );

    
if (fileExtName  != " gif "   &&  fileExtName  !=   " jpg " )
    {
         Response.Write(
" 请选择GIF和JPG格式的图片 " );
    }
    
else
    {
         System.Drawing.Image image 
=   System.Drawing.Image.FromFile(imgPath);
         txtHeight.Text 
=  image.Height.ToString();
         txtWidth.Text 
=  image.Width.ToString();
    }
   }
   
else
   {
        Response.Write(
" 请选择图片! " );
   }
}
生成图片的缩略图的方法
   // 定义image类的对象
  System.Drawing.Image image,newimage;
  
// 图片路径
   protected   string  imagePath;
  
// 图片类型
   protected   string  imageType;
  
// 图片名称
   protected   string  imageName;
  
// 提供一个回调方法,用于确定Image对象在执行生成缩略图操作时何时提前取消执行
  
// 如果此方法确定 GetThumbnailImage 方法应提前停止执行,则返回 true;否则返回 false
  System.Drawing.Image.GetThumbnailImageAbort callb  =   null ;

private   void  btnUp_Click( object  sender, System.EventArgs e)
  {
   
string  mPath;

   
if ( ""   !=  upImage.PostedFile.FileName)
   {
    imagePath
=  upImage.PostedFile.FileName;
    
// 取得图片类型
    imageType =  imagePath.Substring(imagePath.LastIndexOf( " . " ) + 1 );
    
// 取得图片名称
    imageName  =  imagePath.Substring(imagePath.LastIndexOf( " / " ) + 1 );
    
// 判断是否是JPG或者GIF图片,这里只是举个例子,并不一定必须是这两种图片
     if ( " jpg "   !=  imageType  &&   " gif "   !=  imageType)
    {
     Response.Write(
" <script language='javascript'> alert('对不起!请您选择jpg或者gif格式的图片!');</script> " );
     
return ;
    }
    
else
    {
     
try
     {
      
// 建立虚拟路径
      mPath = Server.MapPath( " upFile " );
      
// 保存到虚拟路径
      upImage.PostedFile.SaveAs(mPath + " / " + imageName);
      
// 显示原图
      imageSource.ImageUrl  =   " upFile/ " + imageName;
      
// 为上传的图片建立引用
      image = System.Drawing.Image.FromFile(mPath + " / " + imageName);   
      
// 生成缩略图
      newimage = image.GetThumbnailImage( 100 , 100 ,callb, new  System.IntPtr());
      
// 把缩略图保存到指定的虚拟路径
      newimage.Save(Server.MapPath( " upFile " ) + " /small " + imageName);
      
// 释放image对象占用的资源
      image.Dispose();
      
// 释放newimage对象的资源
      newimage.Dispose();
      
// 显示缩略图
      imageSmall.ImageUrl  =   " upFile/ " + " small " + imageName;

      Response.Write(
" 上传成功! " );
     }
     
catch
     {
      Response.Write(
" 上传成功! " );
     }
     
    }
   }
width="490" scrolling="no" height="150" frameborder="0" align="middle" style="width: 490px; height: 150px;" src="http://www.blogbao.com/script.aspx?userid=21504&AdType=0&AdstyleID=49640&Direction=1" marginheight="0" marginwidth="0">
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值