跳至页脚内容
产品比较

PdfiumViewer 在 C# 中打印 PDF(替代教程)

PDF 文档在各种软件应用中发挥着至关重要的作用,包括生成发票、显示报告和共享信息。 在 C# 中处理 PDF 时,开发人员有多种选择。 本文探讨了两个常用的用于在 C# 中使用 Microsoft Print 打印 PDF 的库:

  • IronPDF
  • PDFiumViewer

让我们深入了解它们的功能和易用性,并比较它们的打印功能,以帮助您为下一个 C# 项目做出明智的决定。

IronPDF。

IronPDF。 概述

IronPDF是一个功能强大的 C# 库,旨在轻松创建、操作和处理 PDF 文件。 它提供了丰富的功能,因此成为开发人员的首选。 IronPDF 的突出之处在于它具备以下能力:

  • 将 HTML、CSS 和图像转换为 PDF 文件。 从头开始生成PDF文档。
  • 编辑现有PDF文件。
  • 支持各种 PDF 文档元素,如图像、文本、表格和表单。
  • 提供数字签名、水印和加密等高级功能。
  • 无需任何第三方工具或库即可实现静默打印。
  • 提供用户友好的界面和全面的文档。

PDFiumViewer

PDFiumViewer概述

PDFiumViewer 是另一个在 C# 中处理 PDF 的热门选择。 它基于开源 PDFium 项目构建,并为其功能提供了一个 .NET 封装。 PDFiumViewer 提供:

  • 能够在 Windows Forms 应用程序中渲染和显示 PDF 文件。
  • 支持在 PDF 文档中进行导航、缩放和文本选择。
  • 为 Windows Forms 项目提供简单直接的集成流程。

安装 IronPDF

要开始使用 IronPDF,请按照以下步骤使用 Visual Studio 中的 NuGet 包管理器进行安装:

  1. 打开 Visual Studio 并创建一个新的控制台应用程序或打开一个现有的控制台应用程序。

! 使用 C# 实现 PDFiumViewer 打印 PDF(替代教程)图 1 - 新建项目 - PDFiumViewer 打印 PDF C#

  1. 在解决方案资源管理器中右键单击项目并选择"管理NuGet包"。
  2. 切换到"浏览"选项卡,搜索"IronPDF",然后单击"安装"。

! PdfiumViewer 打印 PDF(C# 替代教程)图 2 - IronPDF 安装

IronPDF安装成功后,我们就可以开始使用它来打印PDF和其他与PDF文档相关的任务了。 在此之前,我们先在系统中安装 PDFiumViewer。

安装 PDFiumViewer

您也可以通过 NuGet 包管理器安装 PDFiumViewer。 具体方法如下

  1. 打开 Visual Studio 项目并创建一个 Windows 窗体应用程序。

! PdfiumViewer 打印 PDF(C# 替代教程)图 3 - 新建项目

  1. 将一个按钮拖到表单中,并将其命名为"打印 PDF"。

! PdfiumViewer 打印 PDF(C# 教程)(替代教程)图 4 - 打印按钮

  1. 在解决方案资源管理器中右键单击项目,然后选择"管理 NuGet 程序包"。
  2. 在"NuGet 程序包管理器"窗口中,切换到"浏览"选项卡,搜索"PDFiumViewer",然后单击"安装"。

! 使用 C# 中的 PDFiumViewer 打印 PDF(替代教程)图 5 - PDFiumViewer 安装

  1. 或者,要安装 PDFium DLL,您可以搜索"PDFiumViewer.Native",根据您的操作系统要求,选择 32 位或 64 位版本。 在 Windows 窗体应用程序中使用 PDFiumViewer 加载 PDF 文件或页面需要此 DLL。

! 使用 C# 中的 PDFiumViewer 打印 PDF(替代教程)图 6 - PDFiumViewer.Native

安装完成后,即可开始使用 PDFiumViewer 打印 PDF 文件和其他与 PDF 相关的任务。

使用 IronPDF 打印 PDF

使用 IronPDF打印 PDF 文件非常简单。 以下是演示如何在不指定打印机名称的情况下打印 PDF 文件的源代码示例:

using IronPdf;

class Program
{
    static void Main()
    {
        // Create a new PDF renderer
        var renderer = new ChromePdfRenderer();

        // Render a PDF from a URL
        PdfDocument pdf = renderer.RenderUrlAsPdf("https://ironpdf.com");

        // Print the PDF document, 300 dpi, without printer name
        pdf.Print(300, true);
    }
}
using IronPdf;

class Program
{
    static void Main()
    {
        // Create a new PDF renderer
        var renderer = new ChromePdfRenderer();

        // Render a PDF from a URL
        PdfDocument pdf = renderer.RenderUrlAsPdf("https://ironpdf.com");

        // Print the PDF document, 300 dpi, without printer name
        pdf.Print(300, true);
    }
}
Imports IronPdf

Friend Class Program
	Shared Sub Main()
		' Create a new PDF renderer
		Dim renderer = New ChromePdfRenderer()

		' Render a PDF from a URL
		Dim pdf As PdfDocument = renderer.RenderUrlAsPdf("https://ironpdf.com")

		' Print the PDF document, 300 dpi, without printer name
		pdf.Print(300, True)
	End Sub
End Class
$vbLabelText   $csharpLabel

在这个代码示例中,IronPDF 可以高效地从 URL 渲染 PDF,并将其发送到默认打印机进行打印。 Print方法配置为 300 DPI 分辨率,允许静默打印而无需提示用户。 如需更多高级打印选项,请访问C# 打印 PDF 文档

输出

项目执行时,打印方法会显示一个打印对话框,用于将文件保存为 PDF 文件。 如果默认打印机设置为物理打印机,则文档将直接打印。

! PdfiumViewer 打印 PDF(C# 替代教程)图 7 - 打印对话框

保存的输出结果是一个像素级完美的PDF文档:

! 使用 C# 中的 PdfiumViewer 打印 PDF(替代教程)图 8 - PDF 输出

使用 PDFiumViewer 打印 PDF

虽然 PDFiumViewer 在渲染和显示 PDF 方面表现出色,但它不提供原生 PDF 打印功能。 要使用 PDFiumViewer 打印 PDF 文档,您需要使用额外的第三方绘图工具或库。 要使用 PDFiumViewer 直接打印,我们需要将 Microsoft 的 System.Drawing.Printing 程序集与 PDFiumViewer 库一起使用。

在以下代码中,首先,我们使用PdfDocument.Load方法加载 PDF。 然后,我们使用来自System.Drawing.Printing命名空间的CreatePrintDocument方法创建一个名为printDocument的打印对象。 最后,我们使用Print方法将加载的 PDF 文件发送到打印机进行打印。

using System;
using System.Drawing.Printing;
using PdfiumViewer;

class Program
{
    static void Main()
    {
        string pathToFile = @"C:\assets\input.pdf"; // Absolute path with filename

        // Load the PDF document
        using (var pdf = PdfDocument.Load(pathToFile))
        {
            // Create a print document for the loaded PDF
            var printDocument = pdf.CreatePrintDocument();

            // Print the document
            printDocument.Print();
        }
    }
}
using System;
using System.Drawing.Printing;
using PdfiumViewer;

class Program
{
    static void Main()
    {
        string pathToFile = @"C:\assets\input.pdf"; // Absolute path with filename

        // Load the PDF document
        using (var pdf = PdfDocument.Load(pathToFile))
        {
            // Create a print document for the loaded PDF
            var printDocument = pdf.CreatePrintDocument();

            // Print the document
            printDocument.Print();
        }
    }
}
Imports System
Imports System.Drawing.Printing
Imports PdfiumViewer

Friend Class Program
	Shared Sub Main()
		Dim pathToFile As String = "C:\assets\input.pdf" ' Absolute path with filename

		' Load the PDF document
		Using pdf = PdfDocument.Load(pathToFile)
			' Create a print document for the loaded PDF
			Dim printDocument = pdf.CreatePrintDocument()

			' Print the document
			printDocument.Print()
		End Using
	End Sub
End Class
$vbLabelText   $csharpLabel

注意: PDFiumViewer 需要System.Windows.Forms程序集才能运行; 否则,它将抛出异常。 这是因为 PDFiumViewer 库是设计用于 Windows Forms 应用程序的。 请确保在有效的 Windows Forms 应用程序中执行此任务。

运行该应用程序后,将显示一个带有"打印 PDF"按钮的 Windows 窗体。 点击后,将显示打印对话框。 将文档另存为PDF文件。

! PdfiumViewer 在 C# 中打印 PDF(替代教程)图 9 - 另存为 PDF

输出结果与输入的PDF文件相同。如果打印机设置中包含实际的打印机名称,那么它就能完美地打印在纸上。

! PdfiumViewer 用 C# 打印 PDF(替代教程)图 10 - 输出

结论

IronPDF 和 PDFiumViewer 在处理 PDF 文件时各有不同的用途。 IronPDF 提供了一套全面的功能,用于创建、操作和打印 PDF 文件。 其易用性和丰富的功能使其成为 .NET 开发人员的热门选择。

另一方面,PDFiumViewer 在 Windows Forms 应用程序中渲染和显示 PDF 方面表现出色。 但是,它缺乏原生的 PDF 打印功能,可能需要像上面的例子所示那样的其他打印解决方案。

IronPDF 和 PDFiumViewer 之间的选择取决于您的具体项目需求。 如果您需要一个功能全面、具备强大PDF处理功能的库,IronPDF是一个绝佳的选择。另一方面,如果您主要关注的是在Windows窗体应用程序中显示PDF,PDFiumViewer则可以满足您的需求。

IronPDF 是一个功能强大的 PDF 库,适用于 C# 开发人员。 它免费用于开发目的,商业许可证起价为单个开发人员的$799 。 此外,还提供包含所有功能和支持的免费试用版,因此您可以在购买前先试用。 您可以从这里下载软件。

请注意PDFiumViewer 是其各自所有者的注册商标。 本网站与 PDFiumViewer 无任何关联,亦未获得其认可或赞助。 所有产品名称、徽标和品牌均为各自所有者的财产。 比较仅供参考,反映的是撰写时的公开信息。

常见问题解答

如何使用 C# 将 HTML 转换为 PDF?

您可以使用 IronPDF 的 RenderHtmlAsPdf 方法将 HTML 字符串转换为 PDF。此外,RenderHtmlFileAsPdf 方法允许直接将 HTML 文件转换为 PDF 文档。

在 C# 应用程序中打印 PDF 的最佳方法是什么?

IronPDF 提供了 C# 应用程序中 PDF 无声打印的内置功能,允许您无需第三方工具即可直接打印文档。

如何在 Windows 窗体应用程序中显示 PDF?

PDFiumViewer 是一个适合在 Windows 窗体应用程序中渲染和显示 PDF 的库。它支持导航、缩放和文本选择,尽管缺乏本地打印功能。

如何在 Visual Studio 中使用 NuGet 安装 PDF 库?

要安装 IronPDF,请打开 Visual Studio,导航到项目中的“管理 NuGet 包”,搜索“IronPDF”,然后点击“安装”。对于 PDFiumViewer,请按照相同的步骤搜索“PDFiumViewer”。

IronPDF 提供哪些用于在 C# 中处理 PDF 的功能?

IronPDF 提供全面的功能来创建和编辑 PDF,包括 HTML 转 PDF 转换,添加数字签名、水印、加密,以及静默打印 PDF 的能力。

PDFiumViewer 是否适合直接从 C# 应用程序打印 PDF?

PDFiumViewer 不支持直接打印 PDF。需要其他库或工具,例如 System.Drawing.Printing 来处理打印任务。

为什么选择 IronPDF 来处理 C# 中的 PDF?

IronPDF 非常适合需要强大解决方案来创建、处理和打印 PDF 的开发人员。它支持高级功能,并提供详尽的文档和用户友好的集成。

在开发过程中我可以免费使用 IronPDF 吗?

是的,IronPDF 可供免费开发使用。对于商业应用程序,可以从指定费用起购买许可证。

哪个库更适合我的 C# 项目,IronPDF 还是 PDFiumViewer?

选择取决于您的需求。IronPDF 更适合全面的 PDF 创建和打印,而 PDFiumViewer 适用于在 Windows 窗体应用程序中显示 PDF。

Curtis Chau
技术作家

Curtis Chau 拥有卡尔顿大学的计算机科学学士学位,专注于前端开发,精通 Node.js、TypeScript、JavaScript 和 React。他热衷于打造直观且美观的用户界面,喜欢使用现代框架并创建结构良好、视觉吸引力强的手册。

除了开发之外,Curtis 对物联网 (IoT) 有浓厚的兴趣,探索将硬件和软件集成的新方法。在空闲时间,他喜欢玩游戏和构建 Discord 机器人,将他对技术的热爱与创造力相结合。