从C#打印数据的好方法?

时间:2011-12-24 22:24:09

标签: c# .net printing

我需要打印文档作为我用C#编写的程序的输出。纯文本不够 - 我需要表格,字体选择等。

这听起来应该非常容易实现,但是,我不知道该怎么做。

以下是我考虑的选项:

  • DocX文档很容易生成,但是,我不知道如何打印它们。
  • Crystal Reports,显然已从.NET中删除但仍可下载,似乎具有该功能。有这方面的经验吗?
  • 我可以生成图像或表格并打印出来。但是,打印时文本会显得很糟糕。我想要清脆的信件。
  • 我可以使用XPS,但我认为这对所有打印机都不起作用?该程序在打印机方面不够挑剔。
  • 我可以手动创建打印机理解的任何格式,并以某种方式手动发送。这可能是很多工作,我不知道从哪里开始。

真的没有更简单的解决方案吗?如果没有,最好的选择是什么?

2 个答案:

答案 0 :(得分:3)

手动将其发送到打印机不需要太多工作。您只需使用PrintDocument class并处理其事件即可进行绘图。你需要知道GDI +,但这是最好和最有效的方式。例如,您可以将RichTextBox的结果绘制到它。

答案 1 :(得分:2)

我非常希望ITextSharp能够将自定义报告生成为PDF文档。这个库有点复杂,你需要从头开始构建所有东西(不像Crystal报告),但相信值得努力。

您可以保存或发送电子邮件或下载PDF报告,这将增强您网站的功能。

通过以下教程我已经取得了很多成就:http://www.mikesdotnetting.com/Article/80/Create-PDFs-in-ASP.NET-getting-started-with-iTextSharp