本人用(C#)Panel写了一个画图小软件,但是不知道怎么才能够将Panel中的画图结果生成图片保存。请高手帮帮忙。

解决方案 »

  1.   

    to 本人用(C#)Panel写了一个画图小软件,但是不知道怎么才能够将Panel中的画图结果生成图片保存。请高手帮帮忙。你最好才用double-buffer的处理,否则你就需要调用api来保存了,
    前者参看
    http://blog.csdn.net/Knight94/archive/2006/08/18/1094078.aspx
      

  2.   

    类似于如下方法吧
    Graphics graphics = panel1.CreateGraphics();
    Bitmap bitmap = new Bitmap(panel1.Width, panel1.Height, graphics);
    bitmap.Save(...);不过渔翁说的对,如果不用double-buffer吧,你的图片在画或者拖动的时候可能会出现闪烁的感觉
      

  3.   

    我觉得既然已经画图结果都有了,最好直接能够将结果保存,记录逻辑然后重新用bitmap画一次...嗯,好像麻烦了一点。
    (碗掉了)那位高手的保存方法保存下来怎么是个黑漆漆的图片?
    Graphics graphics = panel1.CreateGraphics();
    Bitmap bitmap = new Bitmap(panel1.Width, panel1.Height, graphics);
    bitmap.Save(@"E:\123.bmp",System.Drawing.Imaging.ImageFormat.Bmp);还有double_buffer是指多放一个缓存的图片吧,愚翁给的例子是用Picturebox,不知道panel该怎么做呢?
      

  4.   

    yun~另外一种方法就更麻烦了
    参看
    http://www.syncfusion.com/faq/windowsforms/Search/870.aspx
      

  5.   

    阿,我就是想要这个效果,不过确实麻烦......老实讲,我画图的时候确实闪的利害~~用panel这个东西,double_buffer应该怎么做呢?~
      

  6.   

    to 用panel这个东西,double_buffer应该怎么做呢?~yun~就知道picture是容器,panel难道就不是吗?我给的例子很清楚,你只是替换一下control就行了
      

  7.   

    看问题最初还以为是“picture保存成图片问题”呢,原来不是。