C# 打印 PDF 到特定打印機(代碼示例教程)
開發人員在許多情況下可能需要直接從應用程式列印 PDF 文件。 當用戶要打印多個 PDF 文件或使用默認打印機以外的特定打印機名稱時,這項任務有時可能看似複雜。 列印PDF文件可以使用多種方法。 有些需要付費,有些效能不穩定,有些難以實施。
IronPDF 是一個 .NET 程式庫,它提供了一組用於以程式設計方式建立 PDF 檔案的類別。 這些類別位於 IronPDF.Core 程式集中,設計上方便與任何 .NET 語言(包括 C#、VB.NET、F# 等)一起使用。該庫提供了許多用於建立 PDF 文件、操作現有 PDF、讀取 PDF、列印 PDF 以及以程式設計方式建立 PDF 表單的功能。
讓我們來看一些列印 PDF 檔案的範例程式碼片段。
如何在 C# 中將 PDF 列印到指定印表機
- 安裝 PDF 印表機 C# 庫
- 使用 C# 渲染新的或載入現有的 PDF 文檔
- 使用
PrintDoc類別配置 PDF 印表機 - 透過設定
PrinterName屬性從指定印表機列印 - 執行
Print方法,以預設 DPI 或自訂 DPI 進行列印。
安裝 IronPDF。
首先,安裝 IronPDF 庫。 為此,請前往軟體包管理器控制台並輸入以下命令。
Install-Package IronPrint
! C# 將 PDF 列印到指定印表機(程式碼範例教學),圖 1:透過套件管理器控制台安裝套件 透過軟體包管理器控制台安裝軟體包
下一步是建立PDF文件。 如果您不想建立新的 PDF 文檔,也可以直接載入現有的 PDF 文檔。 我們來建立一個PDF文件。
使用 URL 建立 PDF 文檔
IronPDF 提供了兩個使用 URL 建立 PDF 文件的函數: RenderUrlAsPdf和RenderUrlAsPdfAsync 。 RenderUrlAsPdfAsync提供非同步功能。
以下程式碼片段將根據 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")使用 HTML 字串建立 PDF 文檔
可以使用 HTML 字串建立 PDF 文件。 IronPDF 提供了兩種方法來實現此目的: RenderHtmlAsPdf和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>")將 PDF 檔案列印到指定印表機
透過使用PrinterSettings的PrinterName屬性,可以輕鬆地將 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"pdf變數指的是已建立的 PDF 文件。 GetPrintDocument方法傳回PrintDocument實例,因此可以對將 PDF 傳送到印表機進行精細控制。
列印對話框
如果使用者需要使用類似 Word 文件或 Adobe Acrobat 中出現的 UI 對話方塊來選擇所有印表機設置,IronPDF 可以透過向Print函數傳遞單一參數來顯示列印 GUI 對話方塊。
pdf.Print(true);pdf.Print(true);pdf.Print(True)將true傳遞給Print函數的參數會顯示 GUI 列印對話方塊。 預設情況下, Print功能會將列印內容傳送到預設印表機。
請指定份數
可以透過設定PrinterSettings的Copies屬性來實現列印相同文件的多份副本。 以下範例程式碼展示了這一點:
var printDoc = pdf.GetPrintDocument();
printDoc.PrinterSettings.Copies = 5;var printDoc = pdf.GetPrintDocument();
printDoc.PrinterSettings.Copies = 5;Dim printDoc = pdf.GetPrintDocument()
printDoc.PrinterSettings.Copies = 5這裡, pdf是當前列印文件物件。
選擇要列印的 PDF 文件頁面範圍
如果您不想列印整個文檔,可以指定PrinterSettings的FromPage和ToPage屬性。
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這段程式碼設定了列印的起始頁和結束頁,因此只會列印文件的特定範圍。
整理屬性
列印中的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如果將Collate設定為 false,印表機將在列印下一頁之前列印每一頁所需的所有副本。
獲取論文來源
若要取得印表機可用的紙張資源,請使用以下程式碼:
var paperSources = pdf.GetPrintDocument().PrinterSettings.PaperSources;var paperSources = pdf.GetPrintDocument().PrinterSettings.PaperSources;Dim paperSources = pdf.GetPrintDocument().PrinterSettings.PaperSources結論
IronPDF 為開發需要列印功能的 .NET 應用程式提供了所有必要的功能。 列印 PDF 文件有多種選項,您可以根據自己的需求選擇最合適的選項,並列印多個 PDF 文件。
摘要
本教學示範如何使用 IronPDF 庫直接將 PDF 文件列印到指定的印表機——該庫可免費用於開發,並提供高效能。 若要了解 IronPDF 的更多 PDF 列印功能,請瀏覽此範例頁面。
此外,IronPDF 只需幾行程式碼即可渲染圖表、新增條碼、使用密碼增強安全性以及新增浮水印。
此外,還有其他一些有用的程式庫,例如用於處理 Excel 文件的 IronXL、用於處理條碼的 IronBarcode 和用於處理 OCR 的 IronOCR。 購買完整的 Iron Suite 套裝,即可用兩個庫的價格獲得全部五個庫。請造訪許可頁面以了解更多詳情。
常見問題解答
如何使用 C# 將 PDF 列印至特定的印表機?
若要在 C# 中將 PDF 列印至特定的印表機,請使用 IronPDF 將 PrinterSettings 的 PrinterName 屬性設定為所需的印表機名稱,並執行 Print 方法。
列印 PDF 時可以自訂 DPI 設定嗎?
是的,IronPDF 允許您在列印 PDF 時自訂 DPI 設定。您可以在 PrintDoc 類中指定 DPI,以符合您對列印品質的需求。
使用 IronPDF 列印 PDF 時,如何顯示列印對話?
若要顯示列印對話,請在 IronPDF 的 Print 函式的參數中傳入「true」。這將會觸發 GUI 列印對話,以便在列印前調整印表機設定。
是否可以從 PDF 中只列印特定範圍的頁面?
是的,使用 IronPDF,您可以在執行列印指令前,透過設定 PrinterSettings 的 FromPage 和 ToPage 屬性來列印特定範圍的頁面。
如何使用 IronPDF 列印多份 PDF?
若要列印多份,請在執行 Print 方法之前,將 IronPDF 中 PrinterSettings 的 Copies 屬性設定為所需的份數。
列印 PDF 時,Collate 選項有什麼作用?
IronPDF 中的 Collate 選項可確保在開始列印下一份副本之前,依序列印每份副本的所有頁面,這在列印一份文件的多份副本時非常有用。
如何檢索印表機的可用紙張來源?
在 IronPDF 中,您可以使用 PrinterSettings 的 PaperSources 屬性來擷取特定印表機的可用紙張來源,並從中進行選擇。
IronPDF 在 PDF 操作方面提供哪些附加功能?
IronPDF 提供的功能包括將 HTML 和 URL 呈現為 PDF、新增 BarCode、利用密碼增強文件安全性、水印等,使其成為開發人員的全面工具。
如何安裝 IronPDF 函式庫以進行 PDF 操作?
要安裝 IronPDF,請使用 Package Manager Console 中的 Install-Package IronPdf 指令,將此函式庫新增至您的 .NET 專案。
IronPDF 可以渲染現有的 PDF 文件進行列印嗎?
是的,IronPDF 可以渲染新的和現有的 PDF 文件進行列印,讓您可以指定印表機設定並輕鬆執行列印指令。








