请教C#中GDI+画的图怎样才能保存为bmp或jpg格式呢!我看过一些C++中保存为bmp格式的例子,其中用到了设备上下文DC。那么在C#中该用什么呢,有没有不调用api函数的方法?

解决方案 »

  1.   

    Bitmap bmp = new Bitmap(300, 400);
                Graphics g = Graphics.FromImage(bmp);
                g.Clear(Color.White);
                g.DrawString("测试的文本", this.Font, new SolidBrush(Color.Black), new Point(100, 25));
                g.Dispose();
                SaveFileDialog dlg = new SaveFileDialog();
                if (dlg.ShowDialog() == DialogResult.OK)
                {
                    bmp.Save(dlg.FileName,System.Drawing.Imaging.ImageFormat.Bmp);
                }
                bmp.Dispose();
      

  2.   

    谢谢wuyazhe(wyz&xyl) ,您的方法我试过了可以的,非常感谢!在麻烦您一下,如果我是在一个面板控件中绘制的图形该怎样保存呢!
    另外该怎样给分呢?
      

  3.   

    使用:
    Control.DrawToBitmap(bitmap, rectangle)
      

  4.   

    谢谢楼上几位,对于第二个问题我现在的解决方法是使用双缓冲,然后用两个Graphics,一个绘图一个保存,DrawToBitmap我使过了,保存不了绘制的图形,只能一张黑图,是不是我的方法不对头?