本人目前做了一个 图片  存 到数据库  二进制的
然后前台界面 PICTUREBOX 掉出图片  然后保存。源文件图片 2m 左右。
但是我保存到本地却有20M
什么个情况
代码如下: Image img = this.pictureBox1.Image;
            saveFileDialog1.Title = "请选择图片保存路径";
            saveFileDialog1.Filter = "jpg 格式(*.jpg)|*.jpg|bmp 格式(*.bmp)|*.bmp";
            saveFileDialog1.FilterIndex = 0;
            if (this.saveFileDialog1.ShowDialog() == DialogResult.OK)
            {
                try
                {
                    Bitmap bmp = new Bitmap(img);                   
                    Graphics draw = Graphics.FromImage(bmp);
                    draw.DrawImage(bmp, 0, 0);
                    bmp.Save(this.saveFileDialog1.FileName);
                    saveFileDialog1.Dispose();
                    draw.Dispose();
                    bmp.Dispose();//释放bmp文件资源

解决方案 »

  1.   

    你直接 img.Save 好了,何必还复制一份,大小可能是压缩方式的原因,你可以指定
    img.Save(this.saveFileDialog1.FileName, System.Drawing.Imaging.ImageFormat.Png);
    用 png 应该不会很大的
      

  2.   

    刚才没注意
    Bitmap bmp = new Bitmap(img);   
    Graphics draw = Graphics.FromImage(bmp);
    draw.DrawImage(bmp, 0, 0);
    你这样空画空,如果是复制,这参数也是 img 吧