如何获取System.Drawing.Graphics对象绘制的图像?

时间:2012-04-17 07:33:35

标签: c# graphics system.drawing

请参阅以下方法:

void Paint(System.Drawing.Graphics g)
{
//How can I start record what 'g' will draw to an image object?
g.DrawLine(0,0,50,50);
g.DrawImage(...);
..
..
etc.

}

现在我如何获得关于'g'绘制的图像?
谢谢:))

2 个答案:

答案 0 :(得分:2)

你可以试试......

using (Graphics g=Graphics.FromImage(inImage)) 
{ 
  g.Clear(Color.White); 
  g.DrawLine(0,0,50,50); 
} 

然后,这将在图像上绘制线条。只要确保图像足够大......

此外,您可以通过覆盖OnPaint事件并从eventArgs获取图形对象来直接绘制到表单。

答案 1 :(得分:1)

你可以这样做

Bitmap bmp;
...
{
 InitializeComponent();
 bmp = new Bitmap(this.Width,this.Height,Graphics.FromHwnd(this.Handle));
}

void Paint(object sender, System.Windows.Forms.PaintEventArgs e)
{
  Graphics g = Graphics.FromImage(bmp);
  g.DrawLine(0,0,50,50);
  ..
  .. 
  e.Graphics.DrawImage(bmp,0,0);
}