Verwenden Sie die Google Pdfium-Bibliothek, um das automatische Drucken von PDF-Dateien zu realisieren
Frage:
PDF-Dateien, die von der Desktop-Anwendung generiert wurden, müssen gedruckt werden. Wie kann ich diese Dateien ohne Benutzereingriff direkt an den Drucker senden?
Lösung:
Die Google Pdfium-Bibliothek (.NET-Paket namens PdfiumViewer) bietet eine Lösung zum nahtlosen Drucken von PDF-Dokumenten. Hier ist eine Schritt-für-Schritt-Anleitung:
1. Installieren Sie das PdfiumViewer NuGet-Paket:
Installieren Sie im Visual Studio-Projekt das PdfiumViewer NuGet-Paket über den NuGet-Paketmanager.
2. Druckereinstellungen erstellen:
Erstellen Sie PrinterSettings- und PageSettings-Objekte, um den Zieldrucker und das Papierformat zu definieren.
3. PDF-Dokument laden:
Verwenden Sie PdfDocument.Load(Dateiname), um die zu druckende PDF-Datei zu laden.
4. Druckdokument erstellen:
Verwenden Sie document.CreatePrintDocument(), um ein PrintDocument-Objekt zu generieren, um das PDF-Dokument mit den Druckereinstellungen zu verbinden.
5. Dokument drucken:
Führen Sie abschließend printDocument.Print() aus, um den Druckvorgang zu starten.
Implementierungsbeispiel:
Der folgende Codeausschnitt zeigt, wie Sie mehrere Kopien einer PDF-Datei stillschweigend drucken:
<code class="language-csharp">public bool PrintPDF(string printer, string paperName, string filename, int copies) { try { var printerSettings = new PrinterSettings { PrinterName = printer, Copies = (short)copies }; var pageSettings = new PageSettings(printerSettings) { Margins = new Margins(0, 0, 0, 0) }; foreach (PaperSize paperSize in printerSettings.PaperSizes) { if (paperSize.PaperName == paperName) { pageSettings.PaperSize = paperSize; break; } } using (var document = PdfDocument.Load(filename)) { using (var printDocument = document.CreatePrintDocument()) { printDocument.PrinterSettings = printerSettings; printDocument.DefaultPageSettings = pageSettings; printDocument.PrintController = new StandardPrintController(); printDocument.Print(); } } return true; } catch { return false; } }</code>
Das obige ist der detaillierte Inhalt vonWie kann ich den PDF-Druck auf einem bestimmten Drucker ohne Benutzerinteraktion automatisieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!