从 c#/.net 打印内容的最佳方法是什么?
问题涉及单页以及包含大量页面的报告。
如果能获得最常见的打印库的列表,其中包含每个库的主要功能和陷阱,那就太好了。
[更新] 适用于标准 Windows 客户端(或服务器),不适用于网络应用程序。
对于报告,我使用 RDLC 控件。
对于其他一切,我使用 .NET 中固有的打印对象。
Edit固有的打印对象都可以在 System.Drawing.Printing 命名空间中找到。当您在 WinForms(或 WPF)应用程序中使用 PrintDialog 或 PrintPreviewDialog 时,您将控制权移交给这些对象。
基本概念是您正在打印机上绘图。最简单的形式是:
Sub MyMethod()
Dim x as New PrintDocument
AddHandler x.PrintPage, AddressOf printDoc_PrintPage
x.Print
End Sub
Sub printDoc_PrintPage( sender as Object, e as PrintPageEventArgs)
Dim textToPrint as String= ".NET Printing is easy"
dim printFont as new Font("Courier New", 12)
dim leftMargin as int= e.MarginBounds.Left
dim topMargin as int = e.MarginBounds.Top
e.Graphics.DrawString(textToPrint, printFont, Brushes.Black, leftMargin, topMargin)
End Sub
这里发生的情况是,当我的对象 (x) 收到打印命令时,它会引发“打印页”事件(设计为一次打印一页)。然后,该事件使用 PrintPageEventArgs 的 Graphics 属性将相关字符串直接绘制到打印后台处理程序。
这是一个教程 http://www.ondotnet.com/pub/a/dotnet/2002/06/24/printing.html,并且在 Google 上快速搜索“.NET 打印教程”会返回超过 20 万条结果。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)