private void button2_Click(object sender, EventArgs e)
{
//using (Graphics g = this.CreateGraphics())
//{
// //Image i = Image.FromFile("D:/GIS.jpg");
// //g.DrawImage(i, 0, 0);
// g.DrawLine(new Pen(Color.Red), 0, 0, 100, 100);
//}
Image img = Image.FromFile("D:/Winter.jpg");
using (Graphics g = Graphics.FromImage(img))
{
g.DrawImage(img, 0, 0);
g.FillRectangle(new SolidBrush(Color.Black), 100, 50, 100, 100);
g.FillRectangle(Brushes.Red, 0, 20, 50, 100);
g.FillRectangle(Brushes.White, 0, 50, 200, 100);
g.DrawString("我爱你中国,亲爱的母亲", new Font(new FontFamily("宋体"), 14), new SolidBrush(Color.Green), 10, 20, new StringFormat());
} //using (Graphics g = Graphics.FromHwnd(this.Handle))
//{
// //Image i = Image.FromFile("D:/Winter.jpg");
// //g.DrawImage(i, 0, 0);
// g.DrawEllipse(new Pen(Color.Red), new Rectangle(0, 0, 100, 100));
//}
}
上面的代码是winform程序的按钮操作,我用this.CreateGraphics()和Graphics.FromHwnd()都能画出图像,为什么Graphics.FromImage(img)(img没有问题)却不显示呢?多谢!
{
//using (Graphics g = this.CreateGraphics())
//{
// //Image i = Image.FromFile("D:/GIS.jpg");
// //g.DrawImage(i, 0, 0);
// g.DrawLine(new Pen(Color.Red), 0, 0, 100, 100);
//}
Image img = Image.FromFile("D:/Winter.jpg");
using (Graphics g = Graphics.FromImage(img))
{
g.DrawImage(img, 0, 0);
g.FillRectangle(new SolidBrush(Color.Black), 100, 50, 100, 100);
g.FillRectangle(Brushes.Red, 0, 20, 50, 100);
g.FillRectangle(Brushes.White, 0, 50, 200, 100);
g.DrawString("我爱你中国,亲爱的母亲", new Font(new FontFamily("宋体"), 14), new SolidBrush(Color.Green), 10, 20, new StringFormat());
} //using (Graphics g = Graphics.FromHwnd(this.Handle))
//{
// //Image i = Image.FromFile("D:/Winter.jpg");
// //g.DrawImage(i, 0, 0);
// g.DrawEllipse(new Pen(Color.Red), new Rectangle(0, 0, 100, 100));
//}
}
上面的代码是winform程序的按钮操作,我用this.CreateGraphics()和Graphics.FromHwnd()都能画出图像,为什么Graphics.FromImage(img)(img没有问题)却不显示呢?多谢!
using (Graphics g = Graphics.FromImage(img))
{
g.DrawImage(img, 0, 0);
g.FillRectangle(new SolidBrush(Color.Black), 100, 50, 100, 100);
g.FillRectangle(Brushes.Red, 0, 20, 50, 100);
g.FillRectangle(Brushes.White, 0, 50, 200, 100);
g.DrawString("我爱你中国,亲爱的母亲", new Font(new FontFamily("宋体"), 14), new SolidBrush(Color.Green), 10, 20, new StringFormat());
}你只是把这些东西画到图片上 没有画到窗体上