.NET库用于打印PDF文件

时间:2011-02-13 21:06:30

标签: c# .net pdf

我正在寻找一个可以接受已经创建的PDF文件并直接发送到打印机的库。我不希望用户需要安装Adobe Reader或其他任何东西,应用程序将生成PDF并且我想打印它。

7 个答案:

答案 0 :(得分:5)

抱歉,我的第一个答案(自删除后 - FGITW回答说只使用iTextSharp)假设它是PDF常见问题解答#1实际上它是PDF常见问题解答#〜5,mea culpa ......

没有系统提供的原生PDF处理,所以除了使用FoxIt等应用程序之外 或者Acrobat - 你不应该过快地折扣 - 使用PDF的人会有一个或另一个,他们会选择他们喜欢哪一个,因为他们并不都是平等的,特别是如果你进入更高级的功能及其相关的许可和货币化计划。

不知道任何特定的库来满足这个要求,虽然我上面提到的另一个问题应该有一个很好的答案。 ...研究;时间过去... An answer other questionPDFSharp应该适合,the sample看起来很简单。

根据查看Pdfsharp的FAQ wiki的反思,iTextSharp与PDFSharp有相似的stuff for generating TIFFs/images

可能包含也可能不在范围内的替代方案是生成和/或转换为例如XPS文件,该文件具有内置打印支持(非常确定.NET 3.5,并且可能更早地将其作为标准组件)在客户档案中。)

在这一切中不容错过的一点是Lowagie book (iText In Action)非常出色,如果你要在阅读,写作或提供PDF表格方面做任何事情,你应该把它放在架子上。同样,如果你去了FLOSS图书馆路线,必须认真考虑iText。

答案 1 :(得分:4)

我不知道有任何免费/开源库可以做到这一点,但在评估了一些之后,我选择了cete DynamicPDF Print Manager.NET。到目前为止,它在系统资源方面是最有效的,即RAM。我尝试过的其他产品来自Tall Components,GnosticeBCL EasyPDF SDK。与cete的产品相比,所有这些都使用了大量的RAM。 Print Manger具有良好的文档易于使用。

你也可以从.NET调用gsprint,它是gsview的一部分,它是GhostScript的FOSS GUI。我没有走这条路,但也注意到它似乎比动态PDF使用更多的系统资源。如果您可以将它与软件打包在一起,那么对用户来说它更透明。我知道它不符合您的标准,但这似乎是唯一可用的免费解决方案。

如果您遇到PDFSharp,请注意它使用Adobe Reader进行打印。

Apache's PDFBox有一个命令行PrintPDF实用程序,您也可以从.NET调用它。我在购买打印管理器后遇到过它,所以我还没有尝试过。

更新:您可以使用Sumatra PDFcommand line静默打印。我怀疑它在发送到打印机之前光栅化PDF,但是对于应该工作的较小文件。

答案 2 :(得分:1)

我希望这会对某人有所帮助。 在线查看后,我找到了这个很棒的开源库(C#),它对我来说非常适合。

https://github.com/tonyedgecombe/RawPrint

    using RawPrint;

    Printer.PrintFile("Printer Name", @"C:\Path\To\Print\File.prn");

祝你好运,

答案 3 :(得分:0)

您可以尝试PDFView4NET。它支持打印PDF文件和将PDF页面转换为图像。

免责声明:我为开发PDFView4NET的公司工作。

答案 4 :(得分:0)

那里有一些商业图书馆。例如,我会推荐http://pdfprinting.net

P.S。 我为提供该解决方案的公司工作。

答案 5 :(得分:0)

免费的PDFiumViewer来自Nuget并具有打印功能,请参阅此处的代码示例。

真正易于使用 - 我花了很长时间才找到 - 所以我发布给那些在"错误"问题:

https://stackoverflow.com/a/41751184/586754

答案 6 :(得分:0)

我创建了一个名为PDFFilePrint的小型.Net 4.0库,您可以通过nuget程序包管理器来获取它,也可以在nuget程序包管理器控制台中调用“安装程序包PDFFilePrint”。这是指向package的链接。