如何在 C# 中列印 PDF 文件 | IronPRINT

How to Print PDF Files in C#

This article was translated from English: Does it need improvement?
Translated
View the article in English
role="alert"> 探索 IronPrint .NET 打印庫 是 Iron Software 的全新 .NET 打印庫,提供跨多個平台的兼容性,包括 Windows、macOS、Android 和 iOS。 立即了解如何開始使用 IronPrint

從 .NET C# 代碼將 PDF 發送到打印機自動化打印過程,使您能夠將打印功能集成到應用程序中,減少手動努力,並確保 PDF 文件生產的一致性。 它提供對打印過程的精確控制。

IronPDF 提供了快速以編程方式打印到物理打印機的選項,只需一次方法調用即可打印多個 PDF 文件。 也可以使用可配置的水平和垂直 DPI 指定打印機解析度。 使用接受 Microsoft PrinterSettingsPrintController 的方法來進一步控制 PDF 打印過程。

快速入門:使用 IronPDF 在 .NET 中打印 PDF

只需幾行代碼,即可使用 IronPDF 輕鬆打印您的 PDF 文檔。 本指南將向您展示如何快速將 PDF 打印集成到您的 .NET 應用程序中。 使用 IronPDF,您可以以最少的設置將文件直接發送到打印機,同時享受靈活的設置和高質量的輸出。 現在開始簡化您的文檔工作流程。

Nuget IconGet started making PDFs with NuGet now:

  1. Install IronPDF with NuGet Package Manager

    PM > Install-Package IronPdf

  2. Copy and run this code snippet.

    IronPdf.PdfDocument.FromFile("example.pdf").Print();
  3. Deploy to test on your live environment

    Start using IronPDF in your project today with a free trial
    arrow pointer
class="hsg-featured-snippet">

最小工作流程 (5 步)

  1. 下載 IronPDF 庫來打印 PDF
  2. 準備要打印的輸入 PDF 文件
  3. 使用 Print 方法將 PDF 文件發送到默認打印機
  4. 指定打印機名稱以將其發送到不同的打印機
  5. 使用 GetPrintDocument 方法進行高級打印機設置


打印 PDF 文件示例

Print 方法可通過 PdfDocument 對象使用,允許您打印新創建的和現有的 PDF 文件。 默認情況下,該方法使用系統的默認打印機,但您可以通過將其名稱作為字符串傳遞給 Print 方法來指定其他打印機。

請注意所有打印功能僅在 Windows 上支持。

: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")
$vbLabelText   $csharpLabel
class="content-img-align-center">
class="center-image-wrapper"> 打印隊列

打印機解析度

可以通過向 Print 方法提供所需的 DPI 值來指定打印的 PDF 的解析度,該值將應用於水平和垂直尺寸。 要使用不同的 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")
$vbLabelText   $csharpLabel

讓我們看看在接下來的示例中如何光柵化並打印 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("")
$vbLabelText   $csharpLabel

探索 PDF 文檔打印設置

要自定義打印選項,請使用 GetPrintDocument 方法,它接受 Microsoft PrinterSettingsPrintController 對象。 此方法返回當前的打印文檔對象。 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()
$vbLabelText   $csharpLabel
  • CanDuplex: 指示打印機是否支持雙面打印。 如果為 true,則可以在紙張的兩面打印; 否則,則不能。
  • Collate: 指定多個 PDF 文件或 PDF 文檔副本在打印時是否應按順序整理。 如果為 true,則打印機會整理副本; 如果為 false,則不會。
  • Copies: 設置要打印的 PDF 文檔的副本數量。 它決定將打印多少相同的文檔副本。
  • DefaultPageSettings: 代表打印機的默認頁設置,包括紙張大小、邊距和方向。
  • Duplex: 指定要使用的雙面打印模式。 選項包括 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: 指示是否將打印到文件而不是物理打印機。 如果是 true,您可以使用 PrintFileName 指定文件路徑。
  • SupportsColor: 指示打印機是否支持彩色打印。 如果為 true,則支持彩色打印; 否則,僅限於黑白(單色)打印。

最後,您可以轉到機器設置的“打印機和掃描儀”部分來配置默認打印機以打印 PDF。

常見問題解答

使用 .NET C# 列印 PDF 文件的最佳方法是什麼?

使用 .NET C# 列印 PDF 文件的最佳方法是利用 IronPDF 庫。它提供了一個簡單的 `Print` 方法,可讓您將 PDF 檔案直接傳送到實體印表機。

如何在我的.NET專案中安裝IronPDF庫?

您可以使用 Visual Studio 中的 NuGet 套件管理器將 IronPDF 庫安裝到您的 .NET 專案中。在 NuGet 套件管理器中搜尋“IronPDF”並將其新增至您的專案。

我可以自訂PDF文件的列印設定嗎?

是的,使用 IronPDF,您可以使用 `GetPrintDocument` 方法自訂列印設置,該方法可讓您指定印表機選擇、頁面範圍和雙面列印等選項。

是否可以列印PDF文件中的特定頁面?

是的,您可以透過在 IronPDF 的 `PrinterSettings` 物件中設定 `PrintRange`、`FromPage` 和 `ToPage` 屬性來列印 PDF 檔案中的特定頁面。

如何以高品質設定列印PDF文件?

若要使用 IronPDF 以高品質設定列印 PDF,您可以透過在 `Print` 方法中指定所需的 DPI 值來配置 DPI(每英吋點數),以確保高解析度輸出。

我可以在非Windows平台上列印PDF文件嗎?

目前,IronPDF 的列印功能主要支援 Windows 平台。不過,該庫功能強大,也可用於 macOS、Android 和 iOS 上的其他功能。

如何將PDF文件另存為影像檔案?

您可以使用 IronPDF 中的 `PrintToFile` 方法將 PDF 文件儲存為影像文件,該方法會將 PDF 轉換為點陣圖影像並將其儲存到磁碟。

IronPDF是否支援PDF文件的雙面列印?

是的,如果您的印表機支援雙面列印,IronPDF 支援雙面列印。您可以透過 `PrinterSettings` 物件進行設定。

如何使用 IronPDF 列印多個 PDF 文件?

您可以透過將 IronPDF 中 `PrinterSettings` 物件中的 `Copies` 屬性設定為所需的份數來列印 PDF 的多份副本。

如果我的PDF檔案列印不正確,我該怎麼辦?

如果您的 PDF 檔案列印不正確,請確保您已安裝最新版本的 IronPDF,並檢查應用程式中的印表機設定。確認已選擇正確的印表機,並查看任何錯誤訊息以進行進一步的故障排除。

IronPDF 列印 PDF 時是否與 .NET 10 完全相容?

是的。 IronPDF 與 .NET 10 完全相容,就像與先前的 .NET 版本一樣。它支援在 .NET 10 項目中使用 `Print()`、`PrintToFile()` 和 `GetPrintDocument()` 等方法進行列印,無需任何特殊變通方法或配置變更。無論您建立的是桌面應用程式、Web 應用程式、微服務應用程式還是 .NET MAUI 應用程序,這一點都適用。

A PHP Error was encountered

Severity: Warning

Message: Illegal string offset 'name'

Filename: sections/author_component.php

Line Number: 18

Backtrace:

File: /var/www/ironpdf.com/application/views/main/sections/author_component.php
Line: 18
Function: _error_handler

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 63
Function: view

File: /var/www/ironpdf.com/application/views/products/sections/three_column_docs_page_structure.php
Line: 64
Function: main_view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/views/products/how-to/index.php
Line: 2
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 552
Function: view

File: /var/www/ironpdf.com/application/controllers/Products/Howto.php
Line: 31
Function: render_products_view

File: /var/www/ironpdf.com/index.php
Line: 292
Function: require_once

A PHP Error was encountered

Severity: Warning

Message: Illegal string offset 'title'

Filename: sections/author_component.php

Line Number: 38

Backtrace:

File: /var/www/ironpdf.com/application/views/main/sections/author_component.php
Line: 38
Function: _error_handler

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 63
Function: view

File: /var/www/ironpdf.com/application/views/products/sections/three_column_docs_page_structure.php
Line: 64
Function: main_view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/views/products/how-to/index.php
Line: 2
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 552
Function: view

File: /var/www/ironpdf.com/application/controllers/Products/Howto.php
Line: 31
Function: render_products_view

File: /var/www/ironpdf.com/index.php
Line: 292
Function: require_once

A PHP Error was encountered

Severity: Warning

Message: Illegal string offset 'comment'

Filename: sections/author_component.php

Line Number: 48

Backtrace:

File: /var/www/ironpdf.com/application/views/main/sections/author_component.php
Line: 48
Function: _error_handler

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 63
Function: view

File: /var/www/ironpdf.com/application/views/products/sections/three_column_docs_page_structure.php
Line: 64
Function: main_view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/views/products/how-to/index.php
Line: 2
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 552
Function: view

File: /var/www/ironpdf.com/application/controllers/Products/Howto.php
Line: 31
Function: render_products_view

File: /var/www/ironpdf.com/index.php
Line: 292
Function: require_once

審核人

A PHP Error was encountered

Severity: Warning

Message: Illegal string offset 'name'

Filename: sections/author_component.php

Line Number: 70

Backtrace:

File: /var/www/ironpdf.com/application/views/main/sections/author_component.php
Line: 70
Function: _error_handler

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 63
Function: view

File: /var/www/ironpdf.com/application/views/products/sections/three_column_docs_page_structure.php
Line: 64
Function: main_view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/views/products/how-to/index.php
Line: 2
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 552
Function: view

File: /var/www/ironpdf.com/application/controllers/Products/Howto.php
Line: 31
Function: render_products_view

File: /var/www/ironpdf.com/index.php
Line: 292
Function: require_once

A PHP Error was encountered

Severity: Warning

Message: Illegal string offset 'title'

Filename: sections/author_component.php

Line Number: 84

Backtrace:

File: /var/www/ironpdf.com/application/views/main/sections/author_component.php
Line: 84
Function: _error_handler

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 63
Function: view

File: /var/www/ironpdf.com/application/views/products/sections/three_column_docs_page_structure.php
Line: 64
Function: main_view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/views/products/how-to/index.php
Line: 2
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 552
Function: view

File: /var/www/ironpdf.com/application/controllers/Products/Howto.php
Line: 31
Function: render_products_view

File: /var/www/ironpdf.com/index.php
Line: 292
Function: require_once

A PHP Error was encountered

Severity: Warning

Message: Illegal string offset 'comment'

Filename: sections/author_component.php

Line Number: 85

Backtrace:

File: /var/www/ironpdf.com/application/views/main/sections/author_component.php
Line: 85
Function: _error_handler

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 63
Function: view

File: /var/www/ironpdf.com/application/views/products/sections/three_column_docs_page_structure.php
Line: 64
Function: main_view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/views/products/how-to/index.php
Line: 2
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 552
Function: view

File: /var/www/ironpdf.com/application/controllers/Products/Howto.php
Line: 31
Function: render_products_view

File: /var/www/ironpdf.com/index.php
Line: 292
Function: require_once

準備好開始了嗎?
Nuget 下載 16,154,058 | 版本: 2025.11 剛剛發布