服务器上有张图片 大小格式不一致 但是我想在展示图片列表的时候 把图片按照一定比列缩放 但是不想保存它的缩放图  我想直接通过文件 直接展示缩放后的图片    举个例子:服务器保存的图片是780x500 的图片1, 图片展示的大小是 300X300 
          我想展示的图片300x500/(780/300) 大小 
      图片已存在  不可以采取保存缩放图的方式  只能根据源文件读取展示

解决方案 »

  1.   

    我今天刚好做这个了,比如我图片是400*400的  
    我用<asp:Image                                                                          Width="50px" Height="45px" /> 来显示图片, 只用调整Image的宽高,图片显示的时候就按照 50*45的比例缩放了
      

  2.   


    不想重新绘图保存。。那就用比例显示呗。,。。比如原图宽高是:100px,50px;你设置<img width="50" height="25">这不就行了吗
      

  3.   


    //通过链接到一个页面查找图片,通过输出图片二进制展示
            string path = Server.MapPath("images/p002.jpg");
            System.Drawing.Image image = System.Drawing.Image.FromFile(path);
            Bitmap bitmap = new Bitmap(100, 100);
            //...其他一些操作,例如按比例缩放等自己添加
            Graphics g = Graphics.FromImage(bitmap);
            g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.High;
            g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
            g.Clear(Color.White);
            g.DrawImage(image, new Rectangle(0, 0, bitmap.Width, bitmap.Height), new Rectangle(0, 0, image.Width, image.Height), GraphicsUnit.Pixel);
            bitmap.Save(Response.OutputStream, ImageFormat.Jpeg);
            g.Dispose();
            bitmap.Dispose();
            image.Dispose();