跳至頁尾內容
USING IRONPRINT

C# 列印 PDF 到特定列印機(程式碼範例教程)

在許多情況下,開發者可能需要從他們的應用程式直接列印PDF文件。 當使用者想要列印多個PDF文件或使用非預設的特定印表機名稱時,此任務有時似乎很複雜。 多種方法可以協助我們列印PDF文件。 其中一些需要付費,一些表現不穩定,還有一些難以實施。

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

讓我們來看看一些用於列印PDF文件的範例程式碼片段。

安裝 IronPDF

首先,安裝IronPDF程式庫。 為此,請進入Package Manager Console並輸入以下命令。

Install-Package IronPrint

C#將PDF列印到特定印表機(程式碼範例教程),圖1:通過Package Manager Console安裝套件 通過Package Manager Console安裝套件

下一步是建立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");
Dim renderer = New IronPdf.ChromePdfRenderer()
Dim doc As PdfDocument = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/PDF")
$vbLabelText   $csharpLabel

使用HTML字串建立PDF文件

可以使用HTML字串來建立PDF文件。 IronPDF provides two methods for this purpose: RenderHtmlAsPdf and 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>")
$vbLabelText   $csharpLabel

將PDF文件列印到特定印表機

通過使用PrinterSettings中,可以輕鬆地將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"
$vbLabelText   $csharpLabel

pdf變數指的是已建立的PDF文件。 PrintDocument實例,允許精細控制將PDF文件送到印表機。

列印對話框

如果使用者需要使用類似於Word文件或Adobe Acrobat中的使用者介面對話框來選擇所有列印設置,IronPDF可以通過傳遞單個參數到Print函式來顯示列印GUI對話框。

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

Print函式的參數會顯示GUI列印對話框。 預設情況下,Print函式會列印到預設印表機。

指定副本數量

要列印單份文件的多個副本,可以通過設置PrinterSettings中達成。 以下範例程式碼顯示了這一點:

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

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

選擇頁範圍來列印PDF文件

如果您不想列印完整文件,可以指定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;
Dim 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;
Dim printDoc = pdf.GetPrintDocument()
printDoc.PrinterSettings.Collate = False
$vbLabelText   $csharpLabel

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

獲取紙張來源

要檢索印表機可用的紙張來源,請使用以下程式碼:

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

結論

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

總結

本教程演示了如何使用IronPDF程式庫將PDF簡單地列印到特定印表機 — 它對開發是免費的,並提供高效能水平。 如需更多IronPDF的列印PDF功能,請查看此範例頁面

此外,IronPDF還能夠在幾行程式碼内渲染圖表新增條碼用密碼增强安全性頁面水印

此外,還有其他有用的程式庫,例如IronXL用於處理Excel文件,IronBarcode用於處理條碼,IronOCR用於處理光學字元識別。 您可以通過購買完整的Iron Suite以兩個的價格獲得全部五個程式庫。請存取授權頁面獲取更多詳情。

常見問題

如何在 C# 中將 PDF 列印至指定列印機?

要在 C# 中將 PDF 列印至指定列印機,使用 IronPDF 設置 PrinterSettingsPrinterName 屬性為所需列印機名稱,然後執行 Print 方法。

我可以自訂列印 PDF 時的 DPI 設定嗎?

是的,IronPDF 允許您在列印 PDF 時自訂 DPI 設定。您可以在 PrintDoc 類中指定 DPI,以滿足您的列印質量需求。

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

要顯示列印對話框,將 'true' 傳遞給 IronPDF 中的 Print 函式的參數。這將觸發 GUI 列印對話框,以便在列印前調整列印機設定。

是否可以僅列印 PDF 的特定頁碼?

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

如何使用 IronPDF 列印多份 PDF?

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

列印 PDF 時的 Collate 選項有什麼作用?

IronPDF 中的 Collate 選項確保每一份複製都在開始列印下一份之前按頁碼順序列印完全部頁面,這在列印多份文件時很有用。

如何檢索特定列印機的可用紙張來源?

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

IronPDF 為 PDF 操作提供了哪些附加功能?

IronPDF 提供將 HTML 和 URL 渲染為 PDF、新增條碼、通過密碼增強文件安全性、加水印等功能,是開發人員的全面工具。

如何安裝用于 PDF 操作的 IronPDF 程式庫?

要安裝 IronPDF,請在套件管理器控制台使用命令 Install-Package IronPdf 將程式庫新增到 .NET 專案。

IronPDF 可以渲染現有的 PDF 文件以便列印嗎?

是的,IronPDF 可以渲染新建和現有的 PDF 文件以進行列印,讓您輕鬆指定列印機設定並執行列印命令。

Curtis Chau
技術作家

Curtis Chau擁有Carleton大學的電腦科學學士學位,專精於前端開發,擁有Node.js、TypeScript、JavaScript和React的專業知識。Curtis熱衷於建立直觀且美觀的使用者介面,喜愛使用現代框架並建立結構良好、視覺吸引力的手冊。

除了開發,Curtis對物聯網(IoT)有濃厚的興趣,探索創新的方法來整合硬體和軟體。在空閒時間,他喜歡玩遊戲和建立Discord機器人,結合他對技術的熱愛與創造力。

Iron 支援團隊

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