如何打印 PDF 文件
通过.NET C#代码将PDF发送到打印机可实现打印过程的自动化,从而将打印功能集成到应用程序中,减少人工操作,并确保PDF文件生产的一致性。它提供了对打印过程的精确控制。
IronPDF 提供了通过一个方法调用,以编程方式快速打印到物理打印机的选项,允许您打印多个 PDF 文件。还可以通过配置水平和垂直 DPI 来指定打印机分辨率。使用同时接受 Microsoft PrinterSettings 和 PrintController 的方法可进一步控制 PDF 打印过程。
如何用 C# 打印 PDF 文件
- 下载将 PDF 打印到物理打印机的 C# 库
- 准备打印输入的 PDF 文件
- 使用
打印
方法将 PDF 文件发送到默认打印机 - 指定打印机名称,将其发送到不同的打印机
- 使用
Get打印Document
方法来指定 Microsoft 打印erSettings 和 打印Controller
开始在您的项目中使用IronPDF,并立即获取免费试用。
查看 IronPDF 上 Nuget 用于快速安装和部署。它有超过800万次下载,正在使用C#改变PDF。
Install-Package IronPdf
考虑安装 IronPDF DLL 直接。下载并手动安装到您的项目或GAC表单中: IronPdf.zip
手动安装到你的项目中
下载DLL打印 PDF 文件示例
可以从 PdfDocument 对象访问 Print
方法。新渲染的和现有的 PDF 文件都可以使用该方法打印。调用 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")
打印机分辨率
通过向 Print
方法传递所需的 DPI 数字,指定打印 PDF 文件的分辨率。这将为垂直和水平设置相同的 DPI。如果希望垂直和水平方向的 DPI 值不同,可以指定两个参数,其中第一个数字用于水平方向 (x)第二个是垂直 (y).
: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 文档转换为位图 (像素式) 图像格式,然后再将其保存为 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。GetPrintDocument "方法返回当前打印文档对象。PrinterSettings 选项将在代码示例下面进行描述,而 PrintController 可用于自定义打印的执行方式,并提供处理异常和进度报告的选项,如打印对话框、打印预览、跟踪打印过程以及其他与打印相关的任务。
: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(双面打印):表示打印机是否支持双面打印。 (双面) 打印。如果为 "true",则可以在纸张两面打印;否则不能。
- 整理:指定是否要整理多个 PDF 文件或 PDF 文档的副本 (有条不紊) 打印时。为 "true "时,打印机拼版;为 "false "时,不拼版。
- 份数:设置打印 PDF 文档的份数。它决定打印多少份相同的文档副本。
- 默认页面设置:代表打印机的默认页面设置,包括纸张大小、页边距和方向。
- 双面:指定双面 (双面) 要使用的打印模式。选项包括双面默认打印模式、双面单面打印模式和双面打印模式。 (单面)Duplex.Horizontal 和 Duplex.Vertical。
- 已安装打印机:提供系统中已安装打印机名称的集合。您可以遍历该集合,获取可用打印机的名称。
- IsDefaultPrinter(默认打印机):指示 PrinterName 中指定的打印机是否被设置为系统的默认打印机。
- IsPlotter( 绘图仪 ):确定打印机是否为绘图仪。绘图打印机通常用于大幅面打印,如建筑或工程图纸。
- IsValid(是否有效):表示打印机设置是否有效,是否可用于打印 PDF 文件。
- LandscapeAngle(横向角度):指定角度 (自转) 打印机的横向方向,纵向通常为 90 度。
- 最大份数:代表打印 PDF 时可指定的最大份数。
- 最大页数:指定打印或转换时可设置的最大页数。
- 最小页数:指定打印或转换时可设置的最小页码。
- 纸张尺寸:提供打印机支持的纸张尺寸集合。您可以查询该集合以确定可用的纸张尺寸。
- 纸张来源:提供打印机可用纸源或纸盘的集合。这在选择打印 PDF 文件的纸张来源时非常有用。
- 打印机名称:指定用于打印或转换的打印机名称。
- 打印机分辨率:提供可用打印机分辨率集合,让您选择打印质量。
- 打印文件名称:使用 PrintToFile 打印到文件时,获取或设置文件名。
- 打印范围指定要打印的 PDF 页面范围,如所有页面、特定范围或选择。使用此选项可打印特定页面。
- 从页:指定打印或转换的起始页号。打印将从该页开始。
- ToPage:指定打印或转换的终止页码。打印到此页后将停止。
PrintToFile(打印到文件):表示是否打印到文件而不是物理打印机。为真时,可以使用 PrintFileName 指定文件路径。
- SupportsColor(支持彩色):指示打印机是否支持彩色打印。若为 true,则支持彩色打印;否则,仅限于黑白打印。 (单铬) 印刷。
最后,要配置默认打印机打印 PDF,可以进入机器设置中的 "打印机和扫描仪 "部分。