winform打印的几点工作摘要



c#如果打印内容比较多的时候,打印功可能会出现以下问题。供自己和其他朋友参考:

1,打印不完整:参考网址http://blog.csdn.net/zgke/article/details/3551584 这里提供了一个包括打印panel滚动条下内容的类,当然可以不用存储图片,直接把图片drawimage出来即可。

2,打印背景和文字的显示,这个问题可能是我自己的问题,反正就是pannel面板上 存在例如label控件(或其他)在picturebox控件的上方,但是打印不出来,需要把label控件放到面板的最下方。使用方法:sendtoback 和 bringtofront 来切换panel显示和打印显示的问题。

3,在drawimage的时候,如果想让panel内容和纸张内容的大小按照对应比例缩放。那么使用new Rectangle(。。)的参数带入drawimage方法中,控制面板的大小和缩放的绘图的大小比例控制。使用 e.PageSettings.PaperSize.Width 和 height来缩放比例控制。

4,现在网上比较流行的一个打印的代码是窗体打印,使用gdi来截屏。但是高度有限制,可以直接换成panel。

5,drawimage在有一些实际应用中,可以执行多次方法绘图。控制好坐标 绘制的打印图依然可以实现要求。

———————————

附:csdn上down的一份打印窗体的源码下载