使用 IRONPRINT

C#以程式方式列印PDF(程式碼範例教學)

發佈 2022年8月31日
分享:

有多種使用案例需要在應用程序中使用列印成 PDF 檔案的功能。 這是一項有時看似很難完成的任務,但實際上並非如此。 有多種工具和第三方庫可用於.NET應用程序,以提供這些功能。 所有都有優缺點,一些是付費的,一些有性能問題,一些難以使用,還有一些不提供所需的功能。

IronPDF最適合這些用途並且經常被推薦用來處理PDF列印。 它是免費的,可供開發使用,易於使用且性能高。 它兼容所有 .NET 框架和語言,包括 C#、VB.NET 和 F#。 此外,它還兼容任何類型的 .NET 應用程式,例如 Web 應用程式。(Forms 或 .NET Core)、Azure Functions,當然還有 Windows Forms 或 Console 應用程式。

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

安裝 IronPDF

首先,安裝IronPDF NuGet 套件. 前往 NuGet 套件管理員 > 為方案管理 NuGet 套件,如下所示。

C# 程式化列印 PDF(代碼示例教學),圖 1:導航至 NuGet 套件管理員

導航至 NuGet 套件管理器

點擊瀏覽,然後按照下面所示搜索 IronPDF。

C# 以程式方式列印 PDF(程式碼範例教學),圖 2:在 NuGet 套件管理器中搜尋 IronPdf 套件

在 NuGet 套件管理器中搜尋 IronPDF 套件

按下“安裝”按鈕。 將安裝 IronPDF NuGet 套件。

讓我們建立一個 PDF 文件以便稍後列印。

生成 PDF 文件

在本節中,IronPDF 提供了一種使用 URL 生成 PDF 文件的簡便方法。

以下程式碼片段將從網址創建 PDF 文件。

IronPdf.ChromePdfRenderer renderer = new IronPdf.ChromePdfRenderer();
PdfDocument pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/PDF");
IronPdf.ChromePdfRenderer renderer = new IronPdf.ChromePdfRenderer();
PdfDocument pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/PDF");
Dim renderer As New IronPdf.ChromePdfRenderer()
Dim pdf As PdfDocument = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/PDF")
VB   C#

列印至檔案

列印到檔案方法由IronPDF提供。 在參數中傳遞文件路徑和名稱。 以下程式碼展示了它的用法。

pdf.PrintToFile("D:/My Folder/ironpdf.pdf");
pdf.PrintToFile("D:/My Folder/ironpdf.pdf");
pdf.PrintToFile("D:/My Folder/ironpdf.pdf")
VB   C#

此語句會將 PDF 文件列印到指定路徑。 這與 Microsoft 的打印至 PDF 功能類似運作。

列印到預設印表機

使用 PrintToFile 函數將直接使用預設的打印機來打印文件,除非另有指定,否則可以將打印機名稱作為參數傳遞給它。 以下程式碼展示其用法。

pdf.PrintToFile("D:/My Folder/ironpdf.pdf","printer name");
pdf.PrintToFile("D:/My Folder/ironpdf.pdf","printer name");
pdf.PrintToFile("D:/My Folder/ironpdf.pdf","printer name")
VB   C#

顯示 GUI 列印對話框

使用 GUI 印表機對話框選擇印表機設定時,IronPDF 的功能也可以向使用者顯示印表機 GUI 對話框。

pdf.PrintToFile("D:/My Folder/ironpdf.pdf", showPreview: true);
pdf.PrintToFile("D:/My Folder/ironpdf.pdf", showPreview: true);
pdf.PrintToFile("D:/My Folder/ironpdf.pdf", showPreview:= True)
VB   C#

只需將 true 值傳遞給 print 函數的參數。 這預設為假。 IronPdf 顯示了實現那些列印任務的簡易程度。 pdf.PrintToFile 函數列印到默認打印機。

列印副本數量

IronPDF還提供設置以指定需要打印多少份特定文件。 以下範例代碼演示了此功能。

pdf.GetPrintDocument().PrinterSettings.Copies = 3;
pdf.GetPrintDocument().PrinterSettings.Copies = 3;
pdf.GetPrintDocument().PrinterSettings.Copies = 3
VB   C#

在這裡,pdf 是一個當前的列印文件物件。

列印 PDF 文件:從頁面屬性

假設用戶不想打印整份文件,而只是想從特定頁面開始打印。 IronPDF 提供了 PrinterSettings.FromPage 屬性用於此目的。 只需將頁碼分配給此屬性。 讓我們來看看一個 C# 的快速演示。

pdf.GetPrintDocument().PrinterSettings.FromPage = 5;
pdf.GetPrintDocument().PrinterSettings.FromPage = 5;
pdf.GetPrintDocument().PrinterSettings.FromPage = 5
VB   C#

列印 PDF 文件:至頁面屬性

若要指定最後一頁要列印的頁面,可以使用 PrinterSettings.ToPage 屬性來達成此目的。 只需將頁碼分配給此屬性。 以下程式碼演示了它的用法:

pdf.GetPrintDocument().PrinterSettings.ToPage = 8;
pdf.GetPrintDocument().PrinterSettings.ToPage = 8;
pdf.GetPrintDocument().PrinterSettings.ToPage = 8
VB   C#

上面的程式碼將設定文件的最後一頁列印。

設置打印機的裝訂屬性

IronPDF 還提供了先進的列印功能,其中之一是「合併」。

在列印時,「整理」的意思是,如果您正在列印多頁文件的多個副本,將在列印第二個副本之前,先列印每個副本的所有頁面。 此屬性可以設為 true 或 false。

pdf.GetPrintDocument().PrinterSettings.Collate = false;
pdf.GetPrintDocument().PrinterSettings.Collate = false;
pdf.GetPrintDocument().PrinterSettings.Collate = False
VB   C#

例如,如果將 Collate 屬性設為 false,則會在打印下一頁之前打印該頁所需的所有副本。 換句話說,將此屬性設置為false將提供collate屬性的反向功能。

獲取預設頁面設定

要獲取打印機的預設頁面設定,請使用以下代碼。

var defaultSetting = pdf.GetPrintDocument().PrinterSettings.DefaultPageSettings;
var defaultSetting = pdf.GetPrintDocument().PrinterSettings.DefaultPageSettings;
Dim defaultSetting = pdf.GetPrintDocument().PrinterSettings.DefaultPageSettings
VB   C#

此預設設定可在程式中稍後使用。

雙面列印

IronPDF 提供 PrinterSettings.CanDuplex 屬性,返回 true 或 false,告訴我們此打印機是否支援雙面列印。 以下程式碼範例演示了它的用法。

bool isDuplex = pdf.GetPrintDocument().PrinterSettings.CanDuplex;
bool isDuplex = pdf.GetPrintDocument().PrinterSettings.CanDuplex;
Dim isDuplex As Boolean = pdf.GetPrintDocument().PrinterSettings.CanDuplex
VB   C#

如果打印機支持雙面列印,以下程式碼展示瞭如何與打印機的雙面列印設置進行互動。

var duplexSettings = pdf.GetPrintDocument().PrinterSettings.Duplex;
var duplexSettings = pdf.GetPrintDocument().PrinterSettings.Duplex;
Dim duplexSettings = pdf.GetPrintDocument().PrinterSettings.Duplex
VB   C#

取得紙張來源

以下程式碼顯示如何獲取印表機的紙張來源。

var paperSources = pdf.GetPrintDocument().PrinterSettings.PaperSources;
var paperSources = pdf.GetPrintDocument().PrinterSettings.PaperSources;
Dim paperSources = pdf.GetPrintDocument().PrinterSettings.PaperSources
VB   C#

結論

IronPDF 提供開發 .NET 應用程式所需的所有打印功能。 有多種方法可以列印 PDF 檔案。 IronPDF 也提供列印多個 PDF 檔案的功能。

摘要

本教程演示了如何使用IronPDF庫以非常簡單的方式列印PDF:使用URL生成PDF文件、將PDF列印至文件、將PDF列印至預設印表機、指定份數、指定頁碼範圍、整理屬性以及獲取紙張來源。 IronPDF 在開發過程中是免費的,並提供高效能。 請訪問範例頁面以獲得更多列印 PDF 的功能使用 IronPDF。

此外,IronPDF 是使用 C# 進行 PDF 相關任務的理想工具。 IronPDF 為開發人員提供方法來將 PDF 文件渲染成圖像, 提取文字和內容從 PDF 中。 此外,IronPDF 還能夠渲染圖表在PDF檔案中,添加條碼,甚至處理PDF表單程式化地。

如今還有其他許多有用的程式庫可用,例如用於處理 Excel 工作表的 IronXL,用於讀取和生成條碼的 IronBarcode,以及用於從圖像或 PDF 文件中提取文本的 IronOCR。 您現在可以通過購買完整的 Iron Suite 以僅僅購買兩個產品的價格獲得全部五個庫。請訪問授權頁面,了解更多詳情。

< 上一頁
如何在 C# Windows 應用程式中列印 PDF 檔案
下一個 >
C# 將 PDF 發送到打印機(步驟指南)

準備開始了嗎? 版本: 2024.12 剛剛發布

免費 NuGet 下載 總下載次數: 12,281 查看許可證 >