如何在C#中打印PDF文件
通过 .NET C# 代码将 PDF 发送到打印机可实现打印过程自动化,使您能够将打印功能集成到应用程序中,减少人工操作,并确保 PDF 文件生产的一致性。 它提供了对打印过程的精确控制。
IronPDF支持通过一个方法调用快速编程打印到物理打印机,使您可以打印多个PDF文件。 打印机的分辨率也可以通过可配置的水平和垂直DPI来指定。 使用接受 Microsoft PrinterSettings 和 PrintController 的方法,以获得对 PDF 打印过程的更多控制。
如何用 C# 打印 PDF 文件
- 下载IronPDF库以打印PDF文件
- 准备打印输入的 PDF 文件
- 使用
打印
方法将 PDF 文件发送到默认打印机 - 指定打印机名称,将其发送到不同的打印机
- 使用
获取打印文档
高级打印机设置方法
开始使用IronPDF
立即在您的项目中开始使用IronPDF,并享受免费试用。
打印 PDF 文件示例
通过 PdfDocument 对象可以使用 Print
方法,这使您可以打印新创建和现有的 PDF 文件。 默认情况下,该方法使用系统的默认打印机,但您可以通过将打印机名称作为字符串传递给Print
方法来指定其他打印机。
请注意
:path=/static-assets/pdf/content-code-examples/how-to/print-pdf-print.cs
using IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Test printing</h1>");
// Send the document to "Microsoft Print to PDF" printer
pdf.Print("Microsoft Print to PDF");
Imports IronPdf
Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Test printing</h1>")
' Send the document to "Microsoft Print to PDF" printer
pdf.Print("Microsoft Print to PDF")

打印机分辨率
您可以通过将所需的 DPI 值提供给 Print
方法来指定打印 PDF 的分辨率,该方法将对水平和垂直方向应用相同的 DPI。 要使用不同的DPI值,请向方法传递两个参数:第一个用于水平(x)DPI和第二个用于垂直方向的(y)每英寸点数 (DPI)。
:path=/static-assets/pdf/content-code-examples/how-to/print-pdf-dpi.cs
using IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Test printing</h1>");
// Set custom DPI
pdf.Print(300);
// Specify printing resolution
pdf.Print(10, 10, "Microsoft Print to PDF");
Imports IronPdf
Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Test printing</h1>")
' Set custom DPI
pdf.Print(300)
' Specify printing resolution
pdf.Print(10, 10, "Microsoft Print to PDF")
让我们在下一个示例中看看如何栅格化和打印 PDF 文件。
打印到文件
PrintToFile
方法通过将 PDF 文档转换为位图来有效地光栅化文档(像素式)将图像保存为 PDF 文件。此过程由 Windows 内置打印机处理,例如“Microsoft Print to PDF”。值得注意的是,此方法将 PDF 保存到磁盘,而不是发送到实体打印机。
:path=/static-assets/pdf/content-code-examples/how-to/print-pdf-print-to-file.cs
using IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Test printing</h1>");
// Print to file
pdf.PrintToFile("");
Imports IronPdf
Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Test printing</h1>")
' Print to file
pdf.PrintToFile("")
探索打印PDF文档设置
要自定义打印选项,请使用 GetPrintDocument
方法,该方法接受 Microsoft PrinterSettings 和 PrintController 对象。 此方法返回当前打印文档对象。 PrinterSettings允许您配置选项,如页面范围和打印机选择,而PrintController则可以控制打印过程,包括处理异常、进度报告、打印对话框、打印预览及其他相关任务。 代码示例下方提供了PrinterSettings选项的详细描述。
:path=/static-assets/pdf/content-code-examples/how-to/print-pdf-printer-setting.cs
using IronPdf;
using System.Drawing.Printing;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Testing</h1>");
PrinterSettings settings = new PrinterSettings() {
PrinterName = "Microsoft Print to PDF",
// Number of Copy
Copies = 2,
// Page range to print
FromPage = 2,
ToPage = 4,
};
PrintDocument document = pdf.GetPrintDocument(settings);
// Print
document.Print();
Imports IronPdf
Imports System.Drawing.Printing
Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Testing</h1>")
Private settings As New PrinterSettings() With {
.PrinterName = "Microsoft Print to PDF",
.Copies = 2,
.FromPage = 2,
.ToPage = 4
}
Private document As PrintDocument = pdf.GetPrintDocument(settings)
' Print
document.Print()
- CanDuplex:表示打印机是否支持双面打印(双面)打印。 如果为真,则可以实现双面打印; 否则,它就无法做到。
- 整理:指定是否应整理多个PDF文件或PDF文档的副本。(有条不紊)打印时。 当为真时,打印机会整理副本; 当为 false 时,它不会。
- 副本:设置要打印的PDF文档的副本数量。 它确定将打印多少份相同的文档。
- DefaultPageSettings:表示打印机的默认页面设置,包括纸张尺寸、边距和方向。
- 双面:指定双面打印(双面)要使用的打印模式。 选项包括 Duplex.Default、Duplex.Simplex。(单面), Duplex.Horizontal和Duplex.Vertical.
- InstalledPrinters:提供系统上已安装打印机名称的集合。 您可以遍历此集合以获取可用打印机的名称。
- IsDefaultPrinter: 指示在系统中是否将PrinterName中指定的打印机设置为默认打印机。
- IsPlotter:确定该打印机是否为绘图仪。 绘图打印机常用于大幅面打印,例如用于建筑或工程图纸。
- IsValid:指示打印机设置是否有效并可用于打印 PDF 文件。
- LandscapeAngle:指定角度(自转)适用于打印机的横向方向,通常为纵向90度。
- MaximumCopies:表示可以为打印 PDF 指定的最大份数。
- MaximumPage:指定可设置为打印或转换的最大页码。
- MinimumPage:指定可以设置用于打印或转换的最小页码。
- PaperSizes:提供打印机支持的纸张尺寸集合。 您可以查询此集合以确定可用的纸张尺寸。
- PaperSources:提供打印机可用的纸张来源或纸盒集合。 在选择打印 PDF 文件的纸张来源时,这可能很有用。
- PrinterName:指定用于打印或转换的打印机名称。
- PrinterResolutions:提供可用打印机分辨率的集合,允许您选择打印质量。
- PrintFileName:获取或设置使用 PrintToFile 打印到文件时的文件名。
- PrintRange: 指定要打印的PDF页面范围,例如所有页面、特定范围或选择的页面。 使用此功能打印特定页面。
- FromPage:指定打印或转换的起始页码。 打印将从这一页开始。
- ToPage:指定打印或转换的结束页码。 打印将在到达此页后停止。
- PrintToFile:指示是否打印到文件而不是物理打印机。 当为真时,您可以使用PrintFileName指定文件路径。
SupportsColor:指示打印机是否支持彩色打印。 如果为真,则支持彩色打印; 否则,它仅限于黑白色(单铬)打印。
最后,要将默认打印机配置为打印 PDF,可以进入机器设置的 "打印机和扫描仪 "部分。