C# 将 PDF 打印到特定打印机(代码示例教程)
开发者可能需要在应用程序中直接打印PDF文档的场合有很多。 当用户想要打印多个 PDF 文件或使用默认打印机名以外的特定打印机名时,此任务有时可能显得复杂。 多种方法可以帮助我们打印PDF文件。 其中有些需要付费,有些表现不稳定,还有些实现起来困难。
IronPDF是一个.NET库,提供了一组用于以编程方式创建PDF文件的类。 这些类位于IronPDF.Core程序集内,设计为能够与任何.NET语言(包括C#、VB.NET、F#等)轻松使用。该库提供了许多功能用于创建PDF文档、操作现有PDF、读取PDF、打印PDF和以编程方式创建PDF表单。
让我们来看一些用于打印PDF文件的示例代码片段。
如何在 C# 中将 PDF 打印到指定打印机
- 安装 PDF 打印机 C# 库
- 使用 C# 渲染新的或加载现有的 PDF 文档
- 使用
PrintDoc类配置 PDF 打印机 - 通过设置
PrinterName属性从指定打印机进行打印 - 执行
Print方法,以默认 DPI 或自定义 DPI 进行打印。
安装 IronPDF。
首先,安装IronPDF库。 为此,请进入包管理器控制台并写入以下命令。
Install-Package IronPrint
通过包管理器控制台安装包
下一步是创建PDF文档。 如果您不想创建新文档,也可以简单加载现有的PDF文档。 让我们创建一个PDF文档。
使用URL创建PDF文档
IronPDF提供了两个使用URL创建PDF文档的函数:RenderUrlAsPdf和RenderUrlAsPdfAsync。 RenderUrlAsPdfAsync提供了异步功能。
以下代码片段将从URL创建一个PDF文件。
var renderer = new IronPdf.ChromePdfRenderer();
PdfDocument doc = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/PDF");var renderer = new IronPdf.ChromePdfRenderer();
PdfDocument doc = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/PDF");Dim renderer = New IronPdf.ChromePdfRenderer()
Dim doc As PdfDocument = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/PDF")使用HTML字符串创建PDF文档
可以使用HTML字符串创建PDF文档。 IronPDF为此目的提供了两种方法:RenderHtmlAsPdf和RenderHtmlAsPdfAsync。 RenderHtmlAsPdfAsync方法用于异步操作。
以下代码片段将从HTML字符串创建一个PDF文件。
IronPdf.ChromePdfRenderer renderer = new IronPdf.ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf(@"<h1>My PDF File</h1> <p>This is a sample PDF document created to demonstrate the PDF file generation using HTML string</p>");IronPdf.ChromePdfRenderer renderer = new IronPdf.ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf(@"<h1>My PDF File</h1> <p>This is a sample PDF document created to demonstrate the PDF file generation using HTML string</p>");Dim renderer As New IronPdf.ChromePdfRenderer()
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>My PDF File</h1> <p>This is a sample PDF document created to demonstrate the PDF file generation using HTML string</p>")打印PDF文件到特定打印机
使用PrinterSettings的PrinterName属性可以轻松实现将PDF文件打印到特定的打印机。 这是一种在C#中打印PDF文档到特定打印机的演示。
var printDoc = pdf.GetPrintDocument();
printDoc.PrinterSettings.PrinterName = "myPrinter";var printDoc = pdf.GetPrintDocument();
printDoc.PrinterSettings.PrinterName = "myPrinter";Dim printDoc = pdf.GetPrintDocument()
printDoc.PrinterSettings.PrinterName = "myPrinter"pdf变量指的是创建的PDF文档。 GetPrintDocument方法返回一个PrintDocument实例,允许对将PDF发送到打印机进行细粒度控制。
打印对话框
如果用户需要使用类似于Word文档或Adobe Acrobat中出现的UI对话框来选择所有打印机设置,IronPDF可以通过将一个参数传递给Print函数来显示打印GUI对话框。
pdf.Print(true);pdf.Print(true);pdf.Print(True)将true传递给Print函数的参数会显示GUI打印对话框。 默认情况下,Print函数会打印到默认打印机。
指定副本数量
通过设置PrinterSettings的Copies属性可以打印单个文档的多份副本。 以下示例代码显示了这个功能:
var printDoc = pdf.GetPrintDocument();
printDoc.PrinterSettings.Copies = 5;var printDoc = pdf.GetPrintDocument();
printDoc.PrinterSettings.Copies = 5;Dim printDoc = pdf.GetPrintDocument()
printDoc.PrinterSettings.Copies = 5这里,pdf是当前的打印文档对象。
选择页面范围以打印PDF文件
如果您不想打印完整的文档,可以指定PrinterSettings的FromPage和ToPage属性。
var printDoc = pdf.GetPrintDocument();
printDoc.PrinterSettings.FromPage = 3;
printDoc.PrinterSettings.ToPage = 3;var printDoc = pdf.GetPrintDocument();
printDoc.PrinterSettings.FromPage = 3;
printDoc.PrinterSettings.ToPage = 3;Dim printDoc = pdf.GetPrintDocument()
printDoc.PrinterSettings.FromPage = 3
printDoc.PrinterSettings.ToPage = 3此代码设置了打印的开始和结束页,因此只打印文档中的特定范围。
交错打印属性
打印中的Collate功能意味着如果你打印多份多页文档,副本将打印所有页面,然后再打印第二份。 您可以根据需要设置此属性。
var printDoc = pdf.GetPrintDocument();
printDoc.PrinterSettings.Collate = false;var printDoc = pdf.GetPrintDocument();
printDoc.PrinterSettings.Collate = false;Dim printDoc = pdf.GetPrintDocument()
printDoc.PrinterSettings.Collate = False如果将Collate设置为false,打印机会在打印下一页之前打印所有需要的各页副本。
获取纸张来源
要检索打印机的可用纸张来源,请使用以下代码:
var paperSources = pdf.GetPrintDocument().PrinterSettings.PaperSources;var paperSources = pdf.GetPrintDocument().PrinterSettings.PaperSources;Dim paperSources = pdf.GetPrintDocument().PrinterSettings.PaperSources结论
IronPDF提供了用于开发需要打印功能的.NET应用程序的所有必要功能。 多种选项可用于打印PDF文件,允许您选择最适合您需求的方法并打印多个PDF文件。
摘要
本教程演示了如何使用IronPDF库简单地将PDF打印到特定的打印机—它是开发免费且提供高性能级别的工具。 有关IronPDF更多打印PDF功能,请浏览此示例页面。
此外,IronPDF能够渲染图表,添加条码,通过密码增强安全性,以及水印,只需几行代码。
此外,还有其他有用的库,如用于处理Excel文档的IronXL,用于处理条码的IronBarcode,以及用于光学字符识别的IronOCR。 通过购买完整的Iron Suite,您可以以仅购买两个库的价格获得全部五个库。请访问许可页面了解更多详情。
常见问题解答
如何在 C# 中将 PDF 打印到特定打印机?
要在 C# 中将 PDF 打印到特定打印机,使用 IronPDF 设置 PrinterSettings 的 PrinterName 属性为所需的打印机名称,并执行 Print 方法。
打印 PDF 时可以自定义 DPI 设置吗?
可以,IronPDF 允许您在打印 PDF 时自定义 DPI 设置。您可以在 PrintDoc 类中指定 DPI 以满足您的打印质量需求。
如何在使用 IronPDF 打印 PDF 时显示打印对话框?
要显示打印对话框,请在 IronPDF 的 Print 函数参数中传入 'true'。这将触发 GUI 打印对话框以调整打印机设置,然后再打印。
是否可以仅打印 PDF 中的特定页范围?
可以,使用 IronPDF,您可以通过在执行打印命令之前设置 PrinterSettings 的 FromPage 和 ToPage 属性来打印特定页范围。
如何使用IronPDF打印PDF的多份副本?
要打印多份副本,请在执行 Print 方法之前,将 IronPDF 中 PrinterSettings 的 Copies 属性设置为所需的副本数量。
打印 PDF 时的 Collate 选项有什么作用?
IronPDF 中的 Collate 选项确保在开始打印下一份副本之前,先按顺序打印每份副本的所有页面,这在打印多个文档副本时非常有用。
如何检索打印机可用的纸张来源?
在 IronPDF 中,您可以使用 PrinterSettings 的 PaperSources 属性来检索并选择特定打印机的可用纸张来源。
IronPDF 提供了哪些用于 PDF 操作的附加功能?
IronPDF 提供的功能包括将 HTML 和 URL 渲染为 PDF,添加条形码,通过密码增强文档安全性,加水印等,使其成为开发人员的综合工具。
如何安装 IronPDF 库进行 PDF 操作?
要安装 IronPDF,请在 Package Manager Console 中使用 Install-Package IronPdf 命令,将库添加到您的 .NET 项目中。
IronPDF 可以渲染现有 PDF 文档进行打印吗?
可以,IronPDF 可以渲染新 PDF 和现有 PDF 文档进行打印,允许您指定打印设置并轻松执行打印命令。









