跳過到頁腳內容
使用 IRONPRINT

C# 打印 PDF 到特定打印機(代碼示例教程)

開發人員在許多情況下可能需要直接從應用程式列印 PDF 文件。 當使用者想要列印多個 PDF 檔案或使用預設印表機以外的特定印表機名稱時,這項任務有時會顯得很複雜。 列印PDF文件可以使用多種方法。 有些需要付費,有些效能不穩定,有些難以實施。

IronPDF是一個.NET函式庫,它提供了一組用於以程式設計方式建立 PDF 檔案的類別。 這些類別位於IronPdf.Core 程式集中,設計上便於與任何.NET語言(包括 C#、VB .NET、F# 等)一起使用。該庫提供了許多用於建立 PDF 文件、操作現有 PDF、讀取 PDF、列印 PDF 以及以程式設計方式建立 PDF 表單的功能。

讓我們來看一些列印 PDF 檔案的範例程式碼片段。

安裝IronPDF

首先,安裝IronPDF庫。 為此,請前往軟體包管理器控制台並輸入以下命令。

Install-Package IronPrint

C# 將 PDF 列印到指定印表機(程式碼範例教學),圖 1:透過套件管理器控制台安裝套件 透過軟體包管理器控制台安裝軟體包

下一步是建立PDF文件。 如果您不想建立新的 PDF 文檔,也可以直接載入現有的 PDF 文檔。 我們來建立一個PDF文件。

使用 URL 建立 PDF 文檔

IronPDF提供了兩個使用 URL 建立 PDF 文件的功能: RenderUrlAsPdfRenderUrlAsPdfAsyncRenderUrlAsPdfAsync 提供非同步功能。

以下程式碼片段將根據 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");
$vbLabelText   $csharpLabel

使用 HTML 字串建立 PDF 文檔

可以使用 HTML 字串建立 PDF 文件。 IronPDF提供了兩種方法來實現這一目的: RenderHtmlAsPdfRenderHtmlAsPdfAsyncRenderHtmlAsPdfAsync 方法用於非同步操作。

以下程式碼片段將從 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>");
$vbLabelText   $csharpLabel

將 PDF 檔案列印到指定印表機

可使用 PrinterName 屬性輕鬆地將 PDF 檔案列印到特定印表機。 以下示範如何使用 C# 將 PDF 文件列印到指定的印表機。

var printDoc = pdf.GetPrintDocument();
printDoc.PrinterSettings.PrinterName = "myPrinter";
var printDoc = pdf.GetPrintDocument();
printDoc.PrinterSettings.PrinterName = "myPrinter";
$vbLabelText   $csharpLabel

變數 pdf 指的是已建立的 PDF 文件。 GetPrintDocument 方法傳回一個 PrintDocument 實例,允許對將 PDF 傳送至印表機進行精細控制。

列印對話框

如果使用者需要使用類似於 Word 文件或 Adob​​e Acrobat 中出現的 UI 對話方塊來選擇所有印表機設置, IronPDF可以透過向 Print 函數傳遞單一參數來顯示列印 GUI 對話框。

pdf.Print(true);
pdf.Print(true);
$vbLabelText   $csharpLabel

true 傳遞給 Print 函數的參數,即可顯示 GUI 列印對話方塊。 預設情況下,Print 函數會列印到預設印表機。

請指定份數

可以透過設定 Copies 屬性來實現列印單一文件的多個副本。 以下範例程式碼展示了這一點:

var printDoc = pdf.GetPrintDocument();
printDoc.PrinterSettings.Copies = 5;
var printDoc = pdf.GetPrintDocument();
printDoc.PrinterSettings.Copies = 5;
$vbLabelText   $csharpLabel

這裡,pdf 是目前列印文件物件。

選擇要列印的 PDF 文件頁面範圍

如果您不想列印整個文檔,您可以指定 FromPageToPage 屬性 PrinterSettings

var printDoc = pdf.GetPrintDocument();
printDoc.PrinterSettings.FromPage = 3;
printDoc.PrinterSettings.ToPage = 3;
var printDoc = pdf.GetPrintDocument();
printDoc.PrinterSettings.FromPage = 3;
printDoc.PrinterSettings.ToPage = 3;
$vbLabelText   $csharpLabel

這段程式碼設定了列印的起始頁和結束頁,因此只會列印文件的特定範圍。

整理屬性

列印功能 Collate 表示,如果您要列印多份多頁文檔,則在列印第二份之前,會先列印每份文檔的所有頁面。 您可以根據需要設定此屬性。

var printDoc = pdf.GetPrintDocument();
printDoc.PrinterSettings.Collate = false;
var printDoc = pdf.GetPrintDocument();
printDoc.PrinterSettings.Collate = false;
$vbLabelText   $csharpLabel

如果將 Collate 設定為 false,印表機將在列印下一頁之前列印每一頁所需的所有副本。

獲取論文來源

若要取得印表機可用的紙張資源,請使用以下程式碼:

var paperSources = pdf.GetPrintDocument().PrinterSettings.PaperSources;
var paperSources = pdf.GetPrintDocument().PrinterSettings.PaperSources;
$vbLabelText   $csharpLabel

結論

IronPDF為開發需要列印功能的.NET應用程式提供了所有必要的功能。 列印 PDF 文件有多種選項,您可以根據自己的需求選擇最合適的選項,並列印多個 PDF 文件。

概括

本教學課程示範如何使用IronPDF庫直接將 PDF 文件列印到指定的印表機——該庫可免費用於開發,並提供高效能。 如需了解IronPDF的更多 PDF 列印功能,請瀏覽此範例頁面

此外, IronPDF只需幾行程式碼即可渲染圖表添加條碼使用密碼增強安全性以及添加浮水印

此外,還有其他一些有用的函式庫,例如用於處理 Excel 文件的IronXL 、用於處理條碼的IronBarcode和用於處理 OCR 的IronOCR 。 購買完整的Iron Suite套裝,即可用兩個庫的價格獲得全部五個庫。請造訪許可頁面以了解更多詳情。

常見問題解答

如何在 C# 中打印 PDF 到特定打印機?

要在 C# 中將 PDF 列印到特定的印表機,請使用 IronPDF 設定 PrinterName 屬性於 PrinterSettings 中,並執行 Print 方法。

我可以自定義打印 PDF 時的 DPI 設置嗎?

是的,IronPDF 允許您在列印 PDF 時自訂 DPI 設定。您可以在 PrintDoc 類別中指定 DPI,以符合您的列印品質需求。

如何在使用 IronPDF 打印 PDF 時顯示打印對話框?

要顯示列印對話框,請將 'true' 傳遞給 IronPDF 中 Print 函數的參數。這將觸發圖形使用者介面列印對話框,以便在列印之前調整印表機設定。

是否可以僅打印 PDF 的特定頁面範圍?

是的,使用 IronPDF,您可以通過在執行列印命令之前設置 PrinterSettingsFromPageToPage 屬性,來列印特定範圍的頁面。

我如何使用 IronPDF 列印多份 PDF?

要列印多份副本,請在執行 Print 方法前,將 IronPDF 中 PrinterSettingsCopies 屬性設置為所需的副本數量。

在打印 PDF 時,使用整理選項有什麼作用?

IronPDF 中的整理選項確保每一份的所有頁面在開始打印下一份之前按順序打印,這在打印多份文檔時很有用。

如何檢索打印機的可用紙源?

在 IronPDF 中,您可以使用 PrinterSettingsPaperSources 屬性來檢索並從特定打印機的可用紙張來源中選擇。

IronPDF 為 PDF 操作提供了什麼其他功能?

IronPDF 提供的功能包括將 HTML 和 URL 渲染為 PDF、添加條碼、使用密碼增強文檔安全性、添加水印等,是開發人員的綜合工具。

如何安裝用于PDF處理的IronPDF庫?

要安裝 IronPDF,請在套件管理器控制台中使用命令 Install-Package IronPDF,將此庫新增至您的 .NET 專案。

IronPDF 可以渲染現有 PDF 文檔以進行打印嗎?

是的,IronPDF 可以渲染新和現有的 PDF 文檔以進行打印,允許您輕鬆指定打印機設置並執行打印命令。

Curtis Chau
技術作家

Curtis Chau 擁有卡爾頓大學計算機科學學士學位,專注於前端開發,擅長於 Node.js、TypeScript、JavaScript 和 React。Curtis 熱衷於創建直觀且美觀的用戶界面,喜歡使用現代框架並打造結構良好、視覺吸引人的手冊。

除了開發之外,Curtis 對物聯網 (IoT) 有著濃厚的興趣,探索將硬體和軟體結合的創新方式。在閒暇時間,他喜愛遊戲並構建 Discord 機器人,結合科技與創意的樂趣。

鋼鐵支援團隊

我們每週 5 天,每天 24 小時在線上。
聊天
電子郵件
打電話給我