Gunakan pustaka Google Pdfium untuk merealisasikan pencetakan automatik fail PDF
Soalan:
Fail PDF yang dijana oleh aplikasi desktop perlu dicetak. Bagaimanakah saya boleh menghantar fail ini terus ke pencetak tanpa campur tangan pengguna?
Penyelesaian:
Pustaka Google Pdfium (pakej .NET bernama PdfiumViewer) menyediakan penyelesaian untuk mencetak dokumen PDF dengan lancar. Berikut ialah panduan langkah demi langkah:
1. Pasang pakej PdfiumViewer NuGet:
Dalam projek Visual Studio, pasang pakej PdfiumViewer NuGet melalui pengurus pakej NuGet.
2. Buat tetapan pencetak:
Bina objek PrinterSettings dan PageSettings untuk menentukan pencetak sasaran dan saiz kertas.
3 Muatkan dokumen PDF:
Gunakan PdfDocument.Load(nama fail) untuk memuatkan fail PDF yang akan dicetak.
4. Cipta dokumen cetakan:
Gunakan document.CreatePrintDocument() untuk menjana objek PrintDocument untuk menyambungkan dokumen PDF dengan tetapan pencetak.
5. Cetak dokumen:
Akhir sekali, laksanakan printDocument.Print() untuk memulakan proses pencetakan.
Contoh pelaksanaan:
Coretan kod berikut menunjukkan cara mencetak berbilang salinan fail PDF secara senyap:
<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>
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengautomasikan Pencetakan PDF ke Pencetak Tertentu Tanpa Interaksi Pengguna?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!