Google Pdfium ライブラリを使用して PDF ファイルの自動印刷を実現します
質問:
デスクトップ アプリケーションで生成された PDF ファイルは印刷する必要があります。ユーザーの介入なしにこれらのファイルをプリンターに直接送信するにはどうすればよいですか?
解決策:
Google Pdfium ライブラリ (PdfiumViewer という名前の .NET パッケージ) は、PDF ドキュメントをシームレスに印刷するためのソリューションを提供します。ステップバイステップのガイドは次のとおりです:
1. PdfiumViewer NuGet パッケージをインストールします:
Visual Studio プロジェクトで、NuGet パッケージ マネージャーを介して PdfiumViewer NuGet パッケージをインストールします。
2. プリンター設定を作成します:
PrinterSettings オブジェクトと PageSettings オブジェクトを構築して、ターゲット プリンターと用紙サイズを定義します。
3. PDF ドキュメントをロードします:
PdfDocument.Load(filename) を使用して、印刷する PDF ファイルをロードします。
4. 印刷ドキュメントを作成します:
document.CreatePrintDocument() を使用して PrintDocument オブジェクトを生成し、PDF ドキュメントをプリンター設定に接続します。
5. ドキュメントを印刷します:
最後に、printDocument.Print()を実行して印刷プロセスを開始します。
実装例:
次のコード スニペットは、PDF ファイルの複数のコピーをサイレントに印刷する方法を示しています。
<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>
以上がユーザーの操作なしで特定のプリンターへの PDF 印刷を自動化するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。