[C# 画图]我在Panel里面画图,我如何保存成图片

fox_sky 2008-12-08 03:59:29
我先在Panel里面画图,最后我要保存成图片,请问如何操作?
...全文
2151 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
xumingjie2012 2012-08-03
  • 打赏
  • 举报
回复
感谢五楼!V5!
yys863 2011-01-28
  • 打赏
  • 举报
回复
学习了
try-ing 2010-05-13
  • 打赏
  • 举报
回复
向5楼学习,用了一下,是很可以的。
rzzfch520 2009-09-09
  • 打赏
  • 举报
回复
如果 Graphics 实例是从 Panel直接创建的话,如 Graphics g = this.panel1.CreateGraphics();
那么使用DrawToBitmap 方法就没有效果了。
net5i 2008-12-08
  • 打赏
  • 举报
回复
其实不然,5楼是截取当前Panel所在的屏幕区域的做法,这种做法会导致
把Panel的背景也给保存下来啦,还有就是当Panel出现滚动条后,无法保存全部绘图数据

最常用的做法是3楼和4楼的做法,图形绘制到屏幕的同时绘制到内存图象
搂主可以参考下贴,我有类似的回复及解释,仅供参考,具体实现搂主需要自己努力啦:
http://topic.csdn.net/u/20081207/18/f841d3d0-5094-47ef-aef9-54b8c83473bb.html
wb186 2008-12-08
  • 打赏
  • 举报
回复
试了一下,貌似那个panel1.DrawToBitmap没有一个参数的构造函数呀
public void DrawToBitmap (
Bitmap bitmap,
Rectangle targetBounds
)
huangpeng8612 2008-12-08
  • 打赏
  • 举报
回复
C#处理图像确实挺方便的.Graphics类提供的有方法.
wb186 2008-12-08
  • 打赏
  • 举报
回复
是呀 5楼三句代码干净利索就搞定了 学习啦
ckl881003 2008-12-08
  • 打赏
  • 举报
回复
5楼 厉害 。。以后要好好研究研究.NET了。。。
tsorgy 2008-12-08
  • 打赏
  • 举报
回复
牛人啊,,C#里的Panel还有这么爽的方法?又找到个C#对java的优势,java中的图像clone实在让人无语……
wbpmrck 2008-12-08
  • 打赏
  • 举报
回复
五楼真的很牛哦
gogogo 2008-12-08
  • 打赏
  • 举报
回复
不得不承认5楼强人
cpio 2008-12-08
  • 打赏
  • 举报
回复 1

Bitmap bmp = new Bitmap(panel1.Width, panel1.Height);
panel1.DrawToBitmap(bmp);
bmp.Save(fileName);
tsorgy 2008-12-08
  • 打赏
  • 举报
回复
在Panel的OnPaint(PaintEventArgs e)方法里这么画

protected override void OnPaint(PaintEventArgs e)
{
// 先创建一个Bitmap对象
Bitmap bmp = new Bitmap(300, 200);
Graphics g = Graphics.FromImage(bmp);
// 在这里用g画图
...

// 保存
bmp.Save("p1.jpg", System.Drawing.Imaging.ImageFormat.Jpeg); // 可以指定格式

// 更新Panel的图像
e.Graphics.DrawImage(bmp, 0, 0, 100, 100);
g.dispose();
}
h_w_king 2008-12-08
  • 打赏
  • 举报
回复
一般情况下,功夫应是这样:

Bitmap b = new Bitmap(Width, Height);
this.panel1.BackgroundImage = b;
Graphics g = Graphics.FromImage(b);


//执行画图..........


b.Save("...");
tj_tiger 2008-12-08
  • 打赏
  • 举报
回复
你再怎么画也要有graphics才能画吧,用它存。。。
gogogo 2008-12-08
  • 打赏
  • 举报
回复
ding下

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧