首頁 > 後端開發 > C++ > 如何自動列印PDF到特定的印表機佇列?

如何自動列印PDF到特定的印表機佇列?

DDD
發布: 2025-01-23 22:07:08
原創
997 人瀏覽過

How to Automatically Print PDFs to a Specific Printer Queue?

自動將 PDF 列印到指定印表機

問題:如何在使用者啟動操作後將在使用者桌面上建立的 PDF 檔案自動傳送到特定的本機印表機佇列?

解決方案:利用 PdfiumViewer 函式庫

Google Pdfium 函式庫及其 .NET 包裝器 PdfiumViewer 提供了一個簡單的解決方案。 以下是示範具有可自訂設定的靜默 PDF 列印的範例:

<code class="language-csharp">public bool PrintPDF(string printerName, string paperSizeName, string filePath, int numberOfCopies)
{
    try
    {
        // Configure printer settings
        var printerSettings = new PrinterSettings
        {
            PrinterName = printerName,
            Copies = (short)numberOfCopies
        };

        // Configure page settings
        var pageSettings = new PageSettings(printerSettings)
        {
            Margins = new Margins(0, 0, 0, 0) // Set margins to zero
        };

        // Find the specified paper size
        foreach (PaperSize paperSize in printerSettings.PaperSizes)
        {
            if (paperSize.PaperName == paperSizeName)
            {
                pageSettings.PaperSize = paperSize;
                break;
            }
        }

        // Initiate PDF printing
        using (var pdfDocument = PdfDocument.Load(filePath))
        using (var printDocument = pdfDocument.CreatePrintDocument())
        {
            printDocument.PrinterSettings = printerSettings;
            printDocument.DefaultPageSettings = pageSettings;
            printDocument.PrintController = new StandardPrintController(); //Ensures standard printing behavior
            printDocument.Print();
        }
        return true;
    }
    catch (Exception ex)
    {
        //Handle exceptions appropriately (log, display error message, etc.)
        return false;
    }
}</code>
登入後複製

主要考慮因素:

  • 安裝 PdfiumViewer NuGet 套件以使用此程式庫。
  • 根據需要調整程式碼以適應不同的份數和印表機配置。
  • PdfiumViewer 的開源性質(Apache 2.0 授權)使其適合各種應用程式。 請記住處理潛在的異常以進行穩健的錯誤管理。

以上是如何自動列印PDF到特定的印表機佇列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板