如何使用 PDFSharp 打印 PDF 文件
打印功能是 PDF 处理库的一个关键方面,它允许开发人员直接从他们的应用程序生成高质量的打印文档。 在本文中,我们将比较两种流行的库,IronPDF 和 PDFSharp,在 C# 或 .NET 开发环境中的打印功能。 我们将探讨每个库的优势和局限性,阐明它们打印 PDF 文件的方法。
PDFSharp
PDFSharp是开源的.NET库,可以轻松从任何.NET语言程序文件即时创建和处理PDF文档。 相同的绘图例程可用于创建文档、在屏幕上绘图或将输出发送到任何任意 IP 打印机名称。
IronPDF
IronPDF是一个流行的 C# .NET 库,它使开发人员能够以灵活高效的方式处理 PDF 文件。 它提供了一套全面的功能,用于创建、读取、修改和转换 PDF 文档,使其成为 PDF 相关任务的一站式解决方案。 它的主要功能之一是能够将 HTML 内容转换为 PDF,使其成为从网页和动态内容生成 PDF 的理想选择。 IronPDF 还支持高级功能,例如向 PDF 添加水印、数字签名、帖子附件和交互式表单字段。 IronPDF 凭借其易于使用的 API 和强大的性能,已成为开发人员在 C# 环境中无缝操作 PDF 的首选工具。
如何使用PDFSharp打印PDF文件?
PDFSharp不提供任何用于打印PDF文件的函数。 然而,我们可以与PDFSharp一起使用Acrobat来打印PDF文档。 请注意,在最新版本的PDFSharp中,您将无法使用Acrobat打印PDF文件。您需要安装1.3.0版本的PDFSharp才能在C# .NET中打印PDF文档。 您的电脑上必须安装 Adobe Reader。如果您尚未安装 Adobe Reader,可以下载并安装一个。

安装PDFSharp库
安装PDFSharp库是一个简单的过程。 PDFSharp作为NuGet包提供,允许您轻松将其添加到您的C#或.NET项目中。 以下是使用NuGet安装PDFSharp的步骤:
- 创建或打开一个项目,在该项目中您希望使用PDFSharp库。
- 在 Visual Studio 中,右键单击解决方案资源管理器中的项目解决方案。 然后,从上下文菜单中选择"管理解决方案的 NuGet 程序包..."。
- 在 NuGet 包管理器中,你会看到一个"浏览"选项卡。 在搜索栏中键入"PDFSharp",然后按Enter。 这将显示可用的PDFSharp包列表。

- 从论坛搜索结果中,选择
PdfSharp包,并选择1.3.0版本。 - 选择软件包和版本后,点击"安装"按钮将其添加到您的项目中。 NuGet将负责下载和安装PDFSharp库及其任何依赖项。
- 安装PDFSharp后,您可以开始在您的C#或.NET代码中使用其类和方法来处理PDF文档。
使用PDFSharp打印PDF文档
使用PDFSharp打印PDF并不是一项简单的任务。 您的系统需要安装Adobe Acrobat Reader。 PDFSharp不提供打印PDF文件的任何功能。 我们将首先使用PDFSharp启动Adobe Reader进程,然后使用Adobe Reader进程打印文档。
以下代码示例演示了如何打印 PDF 文件:
internal class Program
{
static void Main(string[] args)
{
// Set the path to the Adobe Acrobat Reader executable
PdfFilePrinter.AdobeReaderPath = @"C:\Program Files\Adobe\Acrobat DC\Acrobat\Acrobat.exe";
// Create a PdfFilePrinter object with the path to the PDF and printer name
PdfFilePrinter printer = new PdfFilePrinter(@"D:\Tutorial Project\PDFSharpPrintPDF\SamplePDF.pdf", "Microsoft Print To PDF");
try
{
// Print the PDF document
printer.Print();
}
catch (Exception ex) // Catch any exceptions during printing
{
Console.WriteLine("Error: " + ex.Message);
}
}
}
internal class Program
{
static void Main(string[] args)
{
// Set the path to the Adobe Acrobat Reader executable
PdfFilePrinter.AdobeReaderPath = @"C:\Program Files\Adobe\Acrobat DC\Acrobat\Acrobat.exe";
// Create a PdfFilePrinter object with the path to the PDF and printer name
PdfFilePrinter printer = new PdfFilePrinter(@"D:\Tutorial Project\PDFSharpPrintPDF\SamplePDF.pdf", "Microsoft Print To PDF");
try
{
// Print the PDF document
printer.Print();
}
catch (Exception ex) // Catch any exceptions during printing
{
Console.WriteLine("Error: " + ex.Message);
}
}
}
Friend Class Program
Shared Sub Main(ByVal args() As String)
' Set the path to the Adobe Acrobat Reader executable
PdfFilePrinter.AdobeReaderPath = "C:\Program Files\Adobe\Acrobat DC\Acrobat\Acrobat.exe"
' Create a PdfFilePrinter object with the path to the PDF and printer name
Dim printer As New PdfFilePrinter("D:\Tutorial Project\PDFSharpPrintPDF\SamplePDF.pdf", "Microsoft Print To PDF")
Try
' Print the PDF document
printer.Print()
Catch ex As Exception ' Catch any exceptions during printing
Console.WriteLine("Error: " & ex.Message)
End Try
End Sub
End Class
PdfFilePrinter.AdobeReaderPath在您的系统中设置Acrobat Reader可执行文件(Acrobat.exe)的路径。 它告诉PdfFilePrinter在哪里可以找到Acrobat应用程序,这是打印过程中所需的。 请务必添加正确的路径,否则将无法正常工作。- 创建了一个新
PdfFilePrinter对象。 构造函数接受两个参数:第一个参数是要打印的 PDF 文件的路径。 第二个参数是要将打印作业发送到的打印机的名称(在本例中为"Microsoft Print To PDF")。 您可以将其替换为您所需打印机的名称。 - 代码试图使用
Print方法打印PDF文档。 它被封装在try-catch块中,以处理在打印过程中可能发生的任何异常。 如果发生异常,错误信息将显示在控制台上。 - 运行程序后,Adobe Acrobat Reader 将打开并打印文档。

安装 IronPDF NuGet 包
在项目中安装 IronPDF 是一个非常简单的过程。
- 启动 Visual Studio 2022 并打开您的 C# 项目,或者如果您还没有 C# 项目,则创建一个新项目。
- 在解决方案资源管理器中右键单击您的项目。 然后,从上下文菜单中选择"管理 NuGet 程序包..."。
- 在 NuGet 程序包管理器窗口中,确保您位于"浏览"选项卡中。 在搜索栏中输入"IronPDF"。
- 从搜索结果中,找到由Iron Software提供的
IronPdf包,并点击选择。 - 在"NuGet 包管理器"窗口的右侧,您将看到解决方案中的项目列表。 选择要安装软件包的项目。 通常情况下,您会选择要处理 PDF 文档的主要项目。

- 选择项目后,点击"安装"按钮,将
IronPdf包添加到您的项目中。 NuGet 将下载并安装该软件包及其所有必需的依赖项。
就是这样! 现在您已成功在 Visual Studio 2022 C# 项目中安装了 IronPDF NuGet 包,您可以开始使用其类和方法来处理 PDF 文档。
使用 IronPDF 打印 PDF 文档
using IronPDF 打印 PDF 文件是一项非常简单的任务。 与PDFSharp不同,IronPDF提供打印PDF文档的功能。 IronPDF 提供打印设置和其他打印文档所需的方法。 我们不需要使用任何其他流程或第三方库。 以下代码示例演示了如何使用 IronPDF 打印 PDF 文件。
static void Main(string[] args)
{
// Create a new PDF document from the specified file path
PdfDocument pdfDocument = new PdfDocument(@"D:\Tutorial Project\PDFSharpPrintPDF\SamplePDF.pdf");
// Print the PDF document using the default printer
pdfDocument.Print();
}
static void Main(string[] args)
{
// Create a new PDF document from the specified file path
PdfDocument pdfDocument = new PdfDocument(@"D:\Tutorial Project\PDFSharpPrintPDF\SamplePDF.pdf");
// Print the PDF document using the default printer
pdfDocument.Print();
}
Shared Sub Main(ByVal args() As String)
' Create a new PDF document from the specified file path
Dim pdfDocument As New PdfDocument("D:\Tutorial Project\PDFSharpPrintPDF\SamplePDF.pdf")
' Print the PDF document using the default printer
pdfDocument.Print()
End Sub
- 第一行从IronPDF创建一个新
PdfDocument类的实例,带有来自指定文件路径的PDF文档。 该路径指向您要打印的 PDF 文件的位置(在本例中为"SamplePDF.pdf")。PdfDocument类表示一个PDF文档,您可以使用IronPDF进行处理。 - 加载PDF文档后,
Print方法。 在IronPDF的上下文中,Print方法将PDF文档发送到机器上安装的默认打印机,启动打印过程。 - 假设我们的默认打印机是 Microsoft Print to PDF。 在这种情况下,上面的代码会在执行过程中打开"保存文件"对话框。

您还可以使用以下代码指定其他打印机:
// Set the printer name to a specific printer
pdfDocument.GetPrintDocument().PrinterSettings.PrinterName = "my Printer";
// Set the printer name to a specific printer
pdfDocument.GetPrintDocument().PrinterSettings.PrinterName = "my Printer";
' Set the printer name to a specific printer
pdfDocument.GetPrintDocument().PrinterSettings.PrinterName = "my Printer"
- 这一行通过在
PrinterName属性,将打印作业配置为使用指定打印机,而不是默认的打印机。
结论
IronPDF和PDFSharp都是在C#或.NET中处理PDF文件的强大库。 然而,IronPDF 提供了一个更现代化、功能更丰富的解决方案,它提供了创建、读取、修改和转换 PDF 的功能,以及对 HTML 到 PDF 转换的支持。 IronPDF 简洁明了的 API 和简化的方法使开发人员能够轻松地在应用程序中直接处理 PDF 文件。 另一方面,虽然PDFSharp功能强大,但它在处理特定任务如打印PDF时需要使用外部应用程序如Acrobat,使其在处理整个PDF工作流时相对便利性较低。
IronPDF 可供开发使用,并提供免费试用版供商业用途使用。
常见问题解答
如何在 C# 中打印 PDF 而不丢失格式?
您可以使用 IronPDF 打印 PDF,而不丢失格式。IronPDF 提供了内置的打印功能,无需第三方应用程序,确保文档的格式得以保留。
IronPDF 和 PDFsharp 之间的主要区别是什么?
IronPDF 提供了全面的功能集,包括 HTML 到 PDF 的转换和内置的打印功能。PDFsharp 另一方面,由于缺乏内置的打印功能,需要 Adobe Acrobat Reader 来打印。
如何在C#中将HTML转换为PDF?
using IronPDF,您可以通过使用 RenderHtmlAsPdf 方法将 HTML 转换为 PDF。这使得将 HTML 字符串或文件轻松转换为 PDF 格式成为可能。
是否可以在 C# 中向 PDF 文档添加水印?
是的,IronPDF 允许您通过使用其 API 向 PDF 文档添加水印。此功能使您能够有效地定制和保护您的文档。
如何使用 NuGet 安装 IronPDF?
要通过 NuGet 安装 IronPDF,请打开 Visual Studio,右键单击您的项目,选择“管理 NuGet 包...”,搜索“IronPDF”,选择您的项目,然后单击“安装”。
IronPDF 是否支持在 PDF 文档中使用数字签名?
是的,IronPDF 支持向 PDF 文档添加数字签名,提高重要文件的安全性和真实性。
using IronPDF 打印 PDF 时可以指定不同的打印机吗?
是的,IronPDF 允许您通过在 PdfDocument 的 PrinterSettings 中设置 PrinterName 属性来指定不同的打印机。
IronPDF 在开发用途上是免费的吗?
IronPDF 对开发用途是免费的,并提供商业用途的试用版,使其在测试和集成到项目中变得可访问。



