跳過到頁腳內容
使用 IRONPRINT

如何在 C# Windows 應用中打印 PDF 文件

便攜式文件格式 (PDF),有時也稱為 ISO 32000,由AdAdobe於 1992 年創建,是一種文件格式,它允許以文字格式和圖形呈現文檔,而無需依賴作業系統、硬體或應用程式軟體。 PDF 檔案是對平面文件的解釋,它具有明確的佈局,包括顯示該文件所需的所有文字、字體、柵格圖像、向量圖形和其他資料。 它基於PostScript構建。

透過 .NET C# 程式碼傳送PDF 檔案至印表機來自動化列印流程,可節省手動,確保 PDF 檔案建立的一致性,並允許您將列印功能整合到應用程式中。它還提供了對列印過程的精細控制。

本文中,我們將在 C# Windows 應用中打印 PDF 文件。

如何在 C# Windows 應用程式中列印 PDF 文件

  1. 建立一個新的 Windows 專案。
  2. 從 NuGet 安裝IronPrint庫。
  3. 導入庫。
  4. 編寫匯入 PDF 檔案的程式碼。
  5. 實作邏輯並處理異常。
  6. 列印文件。

IronPrint

.NET C# 應用程式的開發人員可以使用IronPrint (一個強大的 C# 列印庫)來幫助他們整合列印功能。 無論您是開發桌面應用程式、行動應用程式還是 Web 應用程序, IronPrint都是一個可靠的文件列印解決方案。

IronPrint 的特點

IronPrint與 Windows、macOS、Android 和 iOS 相容,並且在所有這些系統上都能流暢運作。 無論您是開發 Web 應用、行動應用或桌面軟體,IronPrint 都能保證可靠的列印效果。 IronPrint 可以列印以下格式的文件:PDF、PNG、HTML、TIFF、GIF、JPEG 和 BITMAP。

  • 使用 IronPrint,您可以直接從應用程式程式碼列印文件。 可輕鬆整合列印功能,用於列印發票、報告和標籤。
  • 自動列印,無需彈出對話框。 非常適合無需使用者參與的後台作業或批次處理。
  • 調整列印份數、紙張尺寸、方向和 DPI 等參數。 IronPrint 使開發人員能夠自訂列印流程以滿足特定需求。 IronPrint 透過類別和方法提供與列印相關的某些功能。 對於開發者而言,精確且全面的列印設定可確保 API 的簡化。 IronPrint 提供非同步列印、更強大的平台相容性和更完善的列印功能。

對於需要流暢文件輸出的應用程式而言, IronPrint是一個至關重要的工具,因為它能讓 .NET 開發人員對列印進行精確控制。 了解 IronPrint,利用其高效的文件列印功能來增強您的程式。 要了解有關 IronPrint 的更多信息,請參閱此文件頁面

在 Visual Studio 中建立新專案

開啟 Visual Studio 應用程序,然後按一下"檔案"功能表。 然後選擇"新建專案",接著在 C# 中選擇"Windows 窗體應用程式 (.NET Framework)"。

如何在 C# Windows 應用程式中列印 PDF 檔案:圖 1 - 開啟 Visual Studio 並在 .NET Framework 中建立一個新的 C# Windows 窗體應用程式專案。

選擇項目地點後,在指定的文字欄位中輸入項目名稱。 接下來,選擇所需的 .NET Framework,然後按一下"建立"按鈕,如下範例所示。

如何在 C# Windows 應用程式中列印 PDF 檔案:圖 2 - 選擇專案名稱和位置,然後選擇對應的 .NET Framework 版本,然後按一下"建立"按鈕。

接下來,Visual Studio 專案的組織方式將取決於選擇哪個應用程式。 只需開啟 Form1.cs 檔案即可開始新增程式碼並建立 Windows 窗體應用程式。

然後就可以測試程式碼並添加庫了。

安裝 IronPrint 庫

使用 Visual Studio 工具,從"工具"功能表中選擇 NuGet 套件管理器。 若要查看軟體包管理終端控制台,請導覽至軟體套件管理器介面。

Install-Package IronPrint

下載並安裝軟體包後,即可在正在進行的專案中使用該軟體包。

如何在 C# Windows 應用程式中列印 PDF 檔案:圖 3 - 若要使用 NuGet 套件管理器控制台安裝 IronPrint,請使用下列命令:Install-Package IronPrint

另一種選擇是使用 NuGet 套件管理器解決方案方法。 使用 Visual Studio,您可以使用 NuGet 套件管理器將套件直接安裝到解決方案中。 下圖展示如何開啟 NuGet 套件管理器。

如何在 C# Windows 應用程式中列印 PDF 檔案:圖 4 - 在 Visual Studio 中,前往"工具" - "NuGet 套件管理器" - 選擇"管理解決方案的 NuGet 套件"。

使用 NuGet 網站上的搜尋框尋找軟體包。 只需在軟體包管理器中搜尋"IronPrint",如下圖所示。

如何在 C# Windows 應用程式中列印 PDF 檔案:圖 5 - 使用 NuGet 套件管理員的搜尋列中搜尋"ironprint",然後選擇專案並點擊"安裝"按鈕,即可透過管理解決方案的 NuGet 套件來安裝 IronPrint。

附圖顯示了相關搜尋結果清單。 請進行以下更改,以便將NuGet IronPrint庫安裝到您的電腦上。

使用 IronPrint 列印 PDF

借助IronPrint庫,列印文件變得輕而易舉。 第一步是在建立專案時建立的預設 Windows 窗體中新增兩個按鈕來設計 Windows 窗體。 第一個按鈕用於選擇我們需要列印的PDF文件。 第二個按鈕用於觸發列印 PDF 文件。

如何在 C# Windows 應用程式中列印 PDF 檔案:圖 6 - 使用 IronPrint 庫選擇 PDF 檔案並列印所選 PDF 的 Windows 窗體設計。

在這個例子中,我們將用幾行程式碼來列印 PDF 檔案。

using System;
using System.Windows.Forms;
using IronPrint;

namespace WindowsFormsApp1
{
    public partial class Form1 : Form
    {
        // Constructor to initialize the form
        public Form1()
        {
            InitializeComponent();
        }

        // Event handler for the first button click to open file dialog
        private void button1_Click(object sender, EventArgs e)
        {
            openFileDialog1.ShowDialog(this);
        }

        // Event handler for the second button click to print the selected PDF
        private void button2_Click(object sender, EventArgs e)
        {
            // Print the file silently with default settings
            Printer.Print(openFileDialog1.FileName);

            // Alternative: Configure print settings before printing
            PrintSettings printSettings = new PrintSettings
            {
                Dpi = 150,
                NumberOfCopies = 2,
                PaperOrientation = PaperOrientation.Portrait
            };

            // Print with custom settings
            Printer.Print(openFileDialog1.FileName, printSettings);

            // Alternative: Show print dialog
            Printer.ShowPrintDialog(openFileDialog1.FileName);
        }
    }
}
using System;
using System.Windows.Forms;
using IronPrint;

namespace WindowsFormsApp1
{
    public partial class Form1 : Form
    {
        // Constructor to initialize the form
        public Form1()
        {
            InitializeComponent();
        }

        // Event handler for the first button click to open file dialog
        private void button1_Click(object sender, EventArgs e)
        {
            openFileDialog1.ShowDialog(this);
        }

        // Event handler for the second button click to print the selected PDF
        private void button2_Click(object sender, EventArgs e)
        {
            // Print the file silently with default settings
            Printer.Print(openFileDialog1.FileName);

            // Alternative: Configure print settings before printing
            PrintSettings printSettings = new PrintSettings
            {
                Dpi = 150,
                NumberOfCopies = 2,
                PaperOrientation = PaperOrientation.Portrait
            };

            // Print with custom settings
            Printer.Print(openFileDialog1.FileName, printSettings);

            // Alternative: Show print dialog
            Printer.ShowPrintDialog(openFileDialog1.FileName);
        }
    }
}
Imports System
Imports System.Windows.Forms
Imports IronPrint

Namespace WindowsFormsApp1
	Partial Public Class Form1
		Inherits Form

		' Constructor to initialize the form
		Public Sub New()
			InitializeComponent()
		End Sub

		' Event handler for the first button click to open file dialog
		Private Sub button1_Click(ByVal sender As Object, ByVal e As EventArgs)
			openFileDialog1.ShowDialog(Me)
		End Sub

		' Event handler for the second button click to print the selected PDF
		Private Sub button2_Click(ByVal sender As Object, ByVal e As EventArgs)
			' Print the file silently with default settings
			Printer.Print(openFileDialog1.FileName)

			' Alternative: Configure print settings before printing
			Dim printSettings As New PrintSettings With {
				.Dpi = 150,
				.NumberOfCopies = 2,
				.PaperOrientation = PaperOrientation.Portrait
			}

			' Print with custom settings
			Printer.Print(openFileDialog1.FileName, printSettings)

			' Alternative: Show print dialog
			Printer.ShowPrintDialog(openFileDialog1.FileName)
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

在上面的程式碼範例中,要使用IronPrint庫,首先我們使用using IronPrint;將其匯入到程式碼中。 然後,我們透過OpenFileDialog控件,點擊"選擇檔案"按鈕,幫助使用者選擇本機磁碟機上的 PDF 文件。 選擇 PDF 檔案後,應用程式會等待使用者點擊"列印"按鈕。 當您按一下"列印"按鈕時,我們將輸入的 PDF 檔案傳遞給IronPrint庫的Printer類別中的Print方法。

列印方法允許我們在不打開任何列印對話方塊的情況下靜默列印 PDF 文件。 在 Print 方法中傳遞檔案名稱後,它會將要列印的 PDF 檔案載入到物件中,並將檔案傳送到預設印表機。 現在印表機將列印PDF文件。 列印物件允許我們傳遞兩種類型的參數:一種是檔案名稱或檔案位元組數組,用於使用預設列印設定列印 PDF 檔案;另一種是PrintSetting參數,我們可以在其中指定印表機設置,例如頁面大小、紙張方向(縱向或橫向)、印表機名稱、紙張邊距、使用 NumberOfCopies 設定列印多份等。

如果我們不想靜默列印文檔,可以使用名為ShowPrintDialog的另一種方法來列印 PDF 文件,該方法會開啟列印對話方塊選單,並允許我們選擇印表機選項。 要了解有關 IronPrint 程式碼的更多信息,請參閱程式碼範例頁面。

結論

總而言之, IronPrint證明了數位時代資訊獲取和知識共享的力量。 IronPrint是一個寶貴的資源,對於學者、愛好者和學生來說都是如此,它擁有豐富的印刷作品收藏,涵蓋了廣泛的主題、體裁和語言。 IronPrint 透過採用技術並將其館藏數位化,使這些寶貴的資源能夠被世界各地的受眾所獲取,打破了資訊壁壘,並以前所未有的規模促進了學習和探索。 IronPrint 猶如一座啟蒙的燈塔,它保存過去,提升現在,並鼓勵後代在社會變革中發現人類創造力和知識的輝煌。

IronPrint 的經濟型開發版提供免費試用,方便您了解價格詳情。如需了解 Iron Software 的其他產品,請造訪其網站

常見問題解答

如何在 C# Windows 應用程式中列印 PDF 檔案?

若要在 C# Windows 應用程式中列印 PDF 檔案,您可以使用 IronPrint 函式庫。首先,在 Visual Studio 中建立一個新的 Windows 專案,透過 NuGet 安裝 IronPrint 函式庫,然後使用 Printer.Print 方法將 PDF 檔案傳送至印表機。

C# 應用程式中的列印支援哪些檔案格式?

IronPrint 支援在 C# 應用程式中列印各種檔案格式,包括 PDF、PNG、HTML、TIFF、GIF、JPEG 和 BITMAP。

我可以使用 C# 函式庫執行無聲列印嗎?

是的,使用 IronPrint,您可以執行無聲列印,讓文件在不顯示列印對話框的情況下自動列印,非常適合背景處理。

如何在 C# 應用程式中自訂列印設定?

您可以使用 IronPrint 的 PrintSettings 類在 C# 應用程式中自訂列印設定。這可讓您調整複本數量、紙張大小、方向和 DPI 等設定。

C# 是否可以實現異步列印?

是的,IronPrint 支持 C# 异步打印,使您的应用程序能够在打印文档的同时继续运行其他任务。

如何安裝 PDF 列印的 C# 函式庫?

要在 C# 專案中安裝用於 PDF 列印的 IronPrint 函式庫,請使用 Visual Studio 中的 NuGet Package Manager。在套件管理員控制台執行指令 Install-Package IronPrint 或透過 NuGet 套件管理員介面找到 IronPrint。

使用 C# 列印函式庫有什麼好處?

使用 IronPrint 之類的 C# 列印函式庫可精確控制文件輸出、提供跨平台相容性,以及簡化 API 以增強 .NET 應用程式的列印功能。

如何以 C# 開啟新的 Windows Forms 專案進行列印?

若要以 C# 開啟新的 Windows Forms 專案進行列印,請開啟 Visual Studio,移至「檔案」功能表,選擇「新增專案」,選擇「Windows Forms App (.NET Framework)」,並設定專案設定。

在哪裡可以找到用 C# 實作 PDF 列印的範例?

使用 IronPrint 在 C# 中實現 PDF 列印的範例和說明文件可在 Iron Software 網站找到,該網站針對各種情況提供了詳細的指南和程式碼範例。

是否有可用於測試 C# 中 PDF 列印的試用版?

是的,IronPrint 的免費試用版可用於測試 C# 應用程式中的 PDF 列印。您可以在 Iron Software 網站找到更多詳細資訊。

Curtis Chau
技術作家

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

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