首页 >后端开发 >C++ >如何使用 Google Pdfium 以编程方式在 .NET 中打印 PDF?

如何使用 Google Pdfium 以编程方式在 .NET 中打印 PDF?

Patricia Arquette
Patricia Arquette原创
2025-01-23 22:21:12384浏览

How Can I Programmatically Print PDFs in .NET Using Google Pdfium?

使用 Google Pdfium 在 .NET 中自动打印 PDF

有效管理自动文档打印对于简化工作流程至关重要。 本文解决了在 Windows .NET 环境中以编程方式打印 PDF 文件的挑战,提供了使用强大的 Google Pdfium 库及其 .NET 包装器 PdfiumViewer 的解决方案。

这个开源库提供了一个简单的 API 来简化 PDF 打印。 以下代码示例演示了如何以静默方式打印 PDF 的多个副本:

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

        // Configure page settings for paper size
        var pageSettings = new PageSettings(printerSettings)
        {
            Margins = new Margins(0, 0, 0, 0), // Set margins to zero
        };
        foreach (PaperSize size in printerSettings.PaperSizes)
        {
            if (size.PaperName == paperName)
            {
                pageSettings.PaperSize = size;
                break;
            }
        }

        // Initiate PDF printing
        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 (Exception ex)
    {
        // Handle exceptions appropriately (log, display error message, etc.)
        return false;
    }
}</code>

此方法提供了一种强大而可靠的方法来将 PDF 文件发送到打印机队列,从而提高工作效率并自动执行常见任务。 PdfiumViewer 显着简化了流程,为开发人员提供了无缝 PDF 打印集成的便捷工具。

以上是如何使用 Google Pdfium 以编程方式在 .NET 中打印 PDF?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn