请问上传图片时如何可以实现控制/检查图片的类型格式,大小,像素呢?谢谢!

解决方案 »

  1.   

    用System.Drawing.Image 名空间下的Image类的属性试试
      

  2.   

    System.Drawing.Image 
    这个下面的很多属性的,你看看好了,网上找一下也可以呀
      

  3.   

    用image好像太复杂了.如果楼主要做的是一个专业的图片上传控件的话,不妨去找第三方组件.
      

  4.   

    if 上传对象obj.postedfile.contenttype.substring(0,5).tolower="image" then
    '是图片
    obj.postedfile.contentlength '大小 单位 字节
    end if使用这个System.Drawing.Image 可以获取w h
      

  5.   

    使用System.Drawing.Image 不是要已经上传了文件才操作吗?我想SAVE前就操作了
      

  6.   

    using System;
    using System.Data;
    using System.Configuration;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    //using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
    using System.Drawing;
    using System.Drawing.Imaging;
    /// <summary>
    /// /**//// <summary> 
    /// 生成缩略图 
    /// </summary> 
    /// <param name="originalImagePath">源图路径(物理路径)</param> 
    /// <param name="thumbnailPath">缩略图路径(物理路径)</param> 
    /// <param name="width">缩略图宽度</param> 
    /// <param name="height">缩略图高度</param> 
    /// <param name="mode">生成缩略图的方式</param> 
    /// thumbnailimage 的摘要说明
    /// </summary>
    ///     public class thumbnailimage
        {
            public thumbnailimage(string originalImagePath, string thumbnailPath, int width, int height, string mode)
            {            Image originalImage = Image.FromFile(originalImagePath);            int towidth = width;
                int toheight = height;            int x = 0;
                int y = 0;
                int ow = originalImage.Width;
                int oh = originalImage.Height;            switch (mode)
                {
                    case "HW"://指定高宽缩放(可能变形)                 
                        break;
                    case "W"://指定宽,高按比例                     
                        toheight = originalImage.Height * width / originalImage.Width;
                        break;
                    case "H"://指定高,宽按比例 
                        towidth = originalImage.Width * height / originalImage.Height;
                        break;
                    case "Cut"://指定高宽裁减(不变形)                 
                        if ((double)originalImage.Width / (double)originalImage.Height > (double)towidth / (double)toheight)
                        {
                            oh = originalImage.Height;
                            ow = originalImage.Height * towidth / toheight;
                            y = 0;
                            x = (originalImage.Width - ow) / 2;
                        }
                        else
                        {
                            ow = originalImage.Width;
                            oh = originalImage.Width * height / towidth;
                            x = 0;
                            y = (originalImage.Height - oh) / 2;
                        }
                        break;
                    default:
                        break;
                }            //新建一个bmp图片 
                Image bitmap = new System.Drawing.Bitmap(towidth, toheight);            //新建一个画板 
                Graphics g = System.Drawing.Graphics.FromImage(bitmap);            //设置高质量插值法 
                g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.High;            //设置高质量,低速度呈现平滑程度 
                g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;            //清空画布并以透明背景色填充 
                g.Clear(Color.Transparent);            //在指定位置并且按指定大小绘制原图片的指定部分 
                g.DrawImage(originalImage, new Rectangle(0, 0, towidth, toheight),
                    new Rectangle(x, y, ow, oh),
                    GraphicsUnit.Pixel);            try
                {
                    //以jpg格式保存缩略图 
                    bitmap.Save(thumbnailPath, System.Drawing.Imaging.ImageFormat.Jpeg);
                }
                catch (System.Exception e)
                {
                    throw e;
                }
                finally
                {
                    originalImage.Dispose();
                    bitmap.Dispose();
                    g.Dispose();
                }            //
                // TODO: 在此处添加构造函数逻辑
                //
            }
        }
      

  7.   

    bitMap bmp=new bigMap()
    bmp....