如何将图形保存到png或jpg文件中C#

问题描述

我正在使用C#Windows窗体应用程序中的图形应用程序。我有一个可以在上面使用的表格。 所以我从表单创建了一个jmeter-from-code repo对象。

void StartPoint()
{
    Graphics graphic;
    graphic = Paintwindow.CreateGraphics();
}

我想知道在绘制图形后如何将该图形导出为png或jpg文件。 在此之前,我搜索了这个问题,但没有发现任何用处。 有些人可以通过打印屏幕的这一部分来解决此问题:

graphic.copyFromScreen(...);

这种方式对我没有用,因为有时我需要透明背景图像。 另外,我尝试了位图方式:

    private void ExportBTN_Click(object sender,EventArgs e)
    {
        Bitmap b = new Bitmap(Paintwindow.Width,Paintwindow.Height,graphic);
        b.Save(...);
    }

但是当我保存时,图像文件是完全黑色的。 这是我的应用程序:

enter image description here

解决方法

如果要绘制图像,请create your graphics from that image

using(var myGraphics = Graphics.FromImage(myBitmap))
{ 
    // Do drawing 
}

然后您可以继续使用CopyFromScreen和其他绘图方法来更新图像,然后保存它。