我想用pdf打印机第二次打印现有的pdf文件。
我尝试使用PrintDocument。但是如何告诉PrintDocument现有文档的名称?
提前致谢!
答案 0 :(得分:6)
有几种方法可以将现有文件打印到不同的打印机。还有几个第三方库。有些是付费的,有些是免费的。但是,我将解释我在2天后实现它的方式。
安装nuget包PdfiumViewer。 但是不要安装最新版本,因为你必须为pdfium.dll安装另一个软件包,这是忙乱的。
Install-Package PdfiumViewer -Version 2.10.0
此版本附带pdfium.dll文件,因此您无需单独安装。展开解决方案资源管理器,右键单击x64和x86文件夹中的pdfium.dll。转到属性并将复制到输出目录=始终复制。
var path = @"path\file.pdf";
using (var document = PdfDocument.Load(path))
{
using (var printDocument = document.CreatePrintDocument())
{
printDocument.PrinterSettings.PrintFileName = "Letter_SkidTags_Report_9ae93aa7-4359-444e-a033-eb5bf17f5ce6.pdf";
printDocument.PrinterSettings.PrinterName = @"printerName";
printDocument.DocumentName = "file.pdf";
printDocument.PrinterSettings.PrintFileName = "file.pdf";
printDocument.PrintController = new StandardPrintController();
printDocument.Print();
}
}