在当前项目中,我需要打印我从SSRS以Pdf格式收到的报告。到目前为止,我已经了解到Pdf和WPF根本就不是朋友。但是还有更多要求:
我已经看到很多方法。我还调查了一些WPF - PDF库,但它们都没有涵盖这些要求。
我的解决方案是将报告作为SSRS的Imagesource,然后为每个源创建Image
WPF控件。然后创建FixedDocument
,每个页面都包含Image
控件。
然而,这是有效的,创建的文件非常大,打印它们需要很长时间。因此,打印原生PDF文件的方法会更好。
我想要的是:
var bytes = GetSomeReportFromReportingServices();
var pdfDocuments = new PdfDocument(bytes);
var printQueue = LocalPrintServer.GetDefaultPrintQueue();
var printTicket = printQueue.DefaultPrintTicket();
//Extension method to set the input bin
printTicket.SetInputBin("SomeInputBinDifferentFromDefault");
//Set some other PrintTicket Properties
//[...]
pdfDocument.Print(printQueue, printTicket);
很容易。我想要的只是配置PrintTicket并将该pdf打印到打印机。是否有一些库/组件能够做到这样的事情?