C#打印设置实例解析

开发 后端
C#打印设置在我们实际开发会遇到什么问题呢?那么这里就向你介绍了解决C#打印设置控件页面边距值变化的问题,希望对你了解和学习C#打印设置有所帮助。

我们在实际的实现C#打印开发中C#打印设置会遇到一些问题,那么如何解决这些C#打印设置的问题就变得很实际,那么对于文件实现C#打印、C#打印预览、C#打印设置等等操作其中都有哪些常见的问题呢?下面我们就来谈谈解决C#打印设置控件页面边距值变化的问题:

  1. protected virtual PageSettings ShowPageSetupDialog(  
  2. PrintDocument printDocument)  
  3. {  
  4. //检查printDocument是否为空,空的话抛出异常  
  5. ThrowPrintDocumentNullException(printDocument);  
  6.  
  7. //声明返回值的PageSettings  
  8. PageSettings ps = new PageSettings();  
  9.  
  10. //申明并实例化PageSetupDialog  
  11. PageSetupDialog psDlg = new PageSetupDialog();  
  12.  
  13. ps = printDocument.DefaultPageSettings;  
  14.  
  15. try 
  16. {  
  17. //相关文档及文档页面默认设置  
  18. psDlg.Document = printDocument;  
  19.  
  20. Margins mg = printDocument.DefaultPageSettings.Margins;  
  21. if (System.Globalization.RegionInfo.CurrentRegion.IsMetric)  
  22. {  
  23. mg = PrinterUnitConvert.Convert(mg,   
  24. PrinterUnit.Display, PrinterUnit.TenthsOfAMillimeter);  
  25. }  
  26.  
  27. //备份打印文档的DefaultPageSettings,  
  28. //因为转换后会改变,  
  29. //而设置对话框单击取消按钮后不还原就不能正确显示原来的值  
  30. PageSettings psPrintDocumentBack =   
  31. (PageSettings)(printDocument.DefaultPageSettings.Clone());  
  32.  
  33. psDlg.PageSettings = psPrintDocumentBack;  
  34. //printDocument.DefaultPageSettings;   
  35. //用printDocument的时取消了对话框就要还原  
  36. psDlg.PageSettings.Margins = mg;  
  37.  
  38.  
  39. //显示对话框  
  40. DialogResult result = psDlg.ShowDialog();  
  41. if (result == DialogResult.OK)  
  42. {  
  43. ps = psDlg.PageSettings;  
  44. printDocument.DefaultPageSettings =   
  45. psDlg.PageSettings;  
  46. }  
  47. else 
  48. {  
  49.  
  50. }  
  51.  
  52. }  
  53. catch (System.Drawing.Printing.InvalidPrinterException e)  
  54. {  
  55. ShowInvalidPrinterException(e);  
  56. }  
  57. catch (Exception ex)  
  58. {  
  59. ShowPrinterException(ex);  
  60. }  
  61. finally 
  62. {  
  63. psDlg.Dispose();  
  64. psDlg = null;  
  65. }  
  66.  
  67. return ps;  
  68. }  
  69.  

关于C#打印设置控件页面边距值变化的问题就向你介绍到这里,希望对你了解和学习C#打印设置有所帮助。

【编辑推荐】

  1. 浅析C#打印和C#打印预览的实现
  2. 全面解析C#实现打印功能
  3. 实现C#打印窗体实例详解
  4. 实现C#打印文档实例详解
  5. C#打印文本文件实例详解
责任编辑:仲衡 来源: 博客园
相关推荐

2009-08-26 14:03:26

C#打印原理

2009-09-09 14:40:15

C# XML解析

2009-08-26 11:32:37

C#打印文档

2009-08-26 11:07:36

C#打印窗体

2009-08-26 09:22:44

C#实现打印功能

2009-09-07 06:31:32

C#窗体移动

2009-08-19 16:09:15

C#操作Access

2009-08-31 18:17:32

C#接口编程

2009-08-26 14:31:08

C#打印文件

2009-08-18 10:47:40

C#枚举类型

2009-09-09 13:57:28

C# XML解析

2009-08-26 13:48:31

C#打印条码

2009-08-26 13:36:33

C#打印控件

2009-08-26 10:43:14

C#实现打印功能

2009-09-03 15:43:21

C#时间计算

2009-09-03 09:16:35

C#递归函数

2009-09-14 14:25:53

C# Lambda EC# Lambda

2009-09-01 13:51:51

C#创建Word文档

2009-09-01 18:32:32

C#动态数组

2009-08-31 17:30:10

C#接口的作用
点赞
收藏

51CTO技术栈公众号