回答
这只是不起作用。无论如何,这是非常不恰当的,打印机的分辨率是多好于您的屏幕分辨率。屏幕截图在纸上看起来非常难看,特别是文字变得浮肿,抗锯齿像素变得非常明显。
咬住项目符号并放置窗体上的PrintDocument组件。您通常需要在PrintPage事件处理程序中编写相当数量的代码。但它不是硬代码,它看起来很棒,你可以让它看起来就像你想要的那样。一定要让它看起来像报告,而不是屏幕截图。使用PrintPreviewDialog避免浪费大量纸张。像RDLC和Crystal Reports这样的报告生成器也是常见的解决方案。
试试这个它会使你的形式`
Bitmap b = new Bitmap(this.Bounds.Width, this.Bounds.Height);
this.DrawToBitmap(b, new Rectangle(0,0,this.Width,this.Height));
b.Save("C:\\a.bmp");`
的位图通过这个形象,你也可以打印而不是保存它...
此选项不会“打印”所有控件内容。对于某些控件,内容被省略。 – ArBR 2011-03-09 18:22:01
@阿尔布里托 - 请你说明什么控制/内容类型将被省略? – BornToCode 2012-12-11 15:55:26
- 1. .NET 2.0 WinForm打印屏幕
- 2. Java打印屏幕程序
- 3. iOs打印当前屏幕
- 4. 打印管内容屏幕
- 5. Selenium Grid2打印屏幕
- 6. Vbscript打印屏幕到MSpaint
- 7. 打印到Win32屏幕
- 8. 使用GWT打印屏幕
- 9. C#WinForm - 加载屏幕
- 10. Java - 全屏幕JFrame不显示在打印屏幕/屏幕录制上?
- 11. <canvas />和打印屏幕/屏幕截图
- 12. 在div中打印console.error登录屏幕
- 13. 打印JPanel不显示到屏幕
- 14. 如何打印字符在屏幕
- 15. 如何禁用JavaScript的打印屏幕?
- 16. 在Java中捕捉屏幕打印
- 17. 尝试捕获并打印到屏幕
- 18. 汇编在屏幕上打印数字
- 19. C#MVC发送打印屏幕图像
- 20. 在Android屏幕上打印JSON响应
- 21. 前两次点击打印屏幕
- 22. 如何过滤Python屏幕打印?
- 23. 打印具有屏幕内容的UITableView?
- 24. SSRS屏幕预览vs打印预览
- 25. 以Android手机的打印屏幕?
- 26. C#打印屏幕活动窗口
- 27. 打印Paypal IPN变量到屏幕
- 28. C#打印屏幕可滚动控件
- 29. 从IOS打印屏幕截图
- 30. 代码不打印到屏幕
谢谢。但是我的表单太长(带滚动)。所以它不帮助我。 – Jack 2010-11-08 08:18:51
@Jack,我没有尝试使用多页表单,但是我用datagrid做了这个,在http://www.c-sharpcorner.com/UploadFile/mgold/HowToPrintaDataGridinCsHARPand.NET11212005060838AM/HowToPrintaDataGridinCsHARPand.NET.aspx中的示例是for多个页面,'HasMorePages'是一个关键字,用于打印多个页面 – 2010-11-08 10:22:19