如何导出我的表单 C# 的图像
我需要一个解决方案,如何在 C# 上制作 WinForm 的打印屏幕并将其导出为 PNG。
最好的
I need a solution how could i make a Print Screen of my WinForm on C# and export it as PNG.
Bests
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我认为这篇博客文章会有帮助。
I think this blog post will help.
从未尝试过,但我认为您应该能够使用您创建的 PaintEventArgs 调用
OnPaint(args)
,其中包括您想要绘制的图像的 Graphics 以及包含表格的整个区域。仅当您的表单正确处理绘制消息时(即:如果它存储了足够的信息以便能够随意完全重新绘制窗口),这才有效,并且它可能只获得客户区(即:它可能无法获得标题栏或菜单)。
Never tried it, but i'd think you should be able to call
OnPaint(args)
with a PaintEventArgs you create, that includes a Graphics for the image you want to draw on, and the ClipRectangle encompassing the whole area of the form.This would only work if your form properly processes paint messages (ie: if it stores enough info to be able to repaint the window fully at will), and it may only get the client area (ie: it might not get the title bar or menus).