跳過到頁腳內容
產品比較

如何使用 PDFSharp 打印 PDF 文件

列印功能是 PDF 處理庫的關鍵方面,它允許開發人員直接從他們的應用程式產生高品質的列印文件。 在本文中,我們將在 C# 或 .NET 開發的背景下比較兩個流行的庫,IronPDF 和 PDFSharp 的列印功能。 我們將探討每個庫的優點和局限性,闡明它們列印 PDF 文件的方法。

PDFsharp。

PDFsharp是一個開源的 .NET 程式庫,可以輕鬆地從任何 .NET 語言程式檔案中即時建立和處理 PDF 文件。 相同的繪圖程式可用於建立文件、在螢幕上繪圖或將輸出傳送到任何任意 IP 印表機名稱。

IronPDF。

IronPDF是一個流行的 C# .NET 程式庫,它使開發人員能夠以靈活且有效率的方式處理 PDF 檔案。 它提供了一套全面的功能,用於建立、讀取、修改和轉換 PDF 文檔,使其成為 PDF 相關任務的一站式解決方案。 它的主要功能之一是能夠將 HTML 內容轉換為 PDF,使其成為從網頁和動態內容生成 PDF 的理想選擇。 IronPDF 還支援進階功能,例如在 PDF 上新增浮水印、數位簽章、貼文附件和互動式表單欄位。 IronPDF 憑藉其易於使用的 API 和強大的效能,已成為開發人員在 C# 環境中無縫操作 PDF 的首選工具。

如何使用 PDFsharp 列印 PDF 檔案?

PDFsharp不提供任何列印PDF文件的功能。 但是,我們可以使用 Acrobat 和 PDFsharp 來列印 PDF 文件。 請注意,最新版本的 PDFsharp 不支援使用 Acrobat 列印 PDF 檔案。您需要安裝 1.3.0 版本的 PDFsharp 才能在 C# .NET 中列印 PDF 文件。 您的電腦上必須安裝 Adobe Reader。如果您尚未安裝 Adobe Reader,可以下載並安裝一個。

如何使用 PDFSharp 列印 PDF 檔案:圖 1 - Adobe Reader

安裝 PDFsharp 庫

安裝 PDFsharp 庫的過程很簡單。 PDFsharp 是一個 NuGet 套件,您可以輕鬆地將其新增至您的 C# 或 .NET 專案。 以下是使用 NuGet 安裝 PDFsharp 的步驟:

  1. 建立或開啟一個要使用 PDFsharp 庫的專案。
  2. 在 Visual Studio 中,以滑鼠右鍵按一下解決方案資源管理器中的專案解決方案。 然後,從上下文選單中選擇"管理解決方案的 NuGet 套件..."。
  3. 在 NuGet 套件管理器中,你會看到一個"瀏覽"標籤。 在搜尋欄中輸入"PDFsharp",然後按回車鍵。 這將顯示可用的 PDFsharp 軟體包清單。

    如何使用 PDFSharp 列印 PDF 檔案:圖 2 - PDFSharp

  4. 從論壇搜尋結果中,選擇PdfSharp軟體包,然後選擇 1.3.0 版本。
  5. 選擇軟體包和版本後,點擊"安裝"按鈕將其新增至您的專案。 NuGet 將負責下載和安裝 PDFsharp 程式庫及其所有相依性。
  6. 將 PDFsharp 安裝到您的專案後,您就可以開始使用其類別和方法在您的 C# 或 .NET 程式碼中處理 PDF 文件。

使用 PDFsharp 列印 PDF 文檔

使用 PDFsharp 進行 PDF 列印並非易事。 您的系統需要安裝Adobe Acrobat Reader。 PDFsharp 不提供任何列印 PDF 檔案的功能。 我們將首先使用 PDFsharp 啟動 Adobe Reader 程序,然後使用 Adobe Reader 程式列印文件。

以下程式碼範例示範如何列印 PDF 檔案:

internal class Program
{
    static void Main(string[] args)
    {
        // Set the path to the Adobe Acrobat Reader executable
        PdfFilePrinter.AdobeReaderPath = @"C:\Program Files\Adobe\Acrobat DC\Acrobat\Acrobat.exe";

        // Create a PdfFilePrinter object with the path to the PDF and printer name
        PdfFilePrinter printer = new PdfFilePrinter(@"D:\Tutorial Project\PDFSharpPrintPDF\SamplePDF.pdf", "Microsoft Print To PDF");

        try
        {
            // Print the PDF document
            printer.Print();
        }
        catch (Exception ex) // Catch any exceptions during printing
        {
            Console.WriteLine("Error: " + ex.Message);
        }
    }
}
internal class Program
{
    static void Main(string[] args)
    {
        // Set the path to the Adobe Acrobat Reader executable
        PdfFilePrinter.AdobeReaderPath = @"C:\Program Files\Adobe\Acrobat DC\Acrobat\Acrobat.exe";

        // Create a PdfFilePrinter object with the path to the PDF and printer name
        PdfFilePrinter printer = new PdfFilePrinter(@"D:\Tutorial Project\PDFSharpPrintPDF\SamplePDF.pdf", "Microsoft Print To PDF");

        try
        {
            // Print the PDF document
            printer.Print();
        }
        catch (Exception ex) // Catch any exceptions during printing
        {
            Console.WriteLine("Error: " + ex.Message);
        }
    }
}
Friend Class Program
	Shared Sub Main(ByVal args() As String)
		' Set the path to the Adobe Acrobat Reader executable
		PdfFilePrinter.AdobeReaderPath = "C:\Program Files\Adobe\Acrobat DC\Acrobat\Acrobat.exe"

		' Create a PdfFilePrinter object with the path to the PDF and printer name
		Dim printer As New PdfFilePrinter("D:\Tutorial Project\PDFSharpPrintPDF\SamplePDF.pdf", "Microsoft Print To PDF")

		Try
			' Print the PDF document
			printer.Print()
		Catch ex As Exception ' Catch any exceptions during printing
			Console.WriteLine("Error: " & ex.Message)
		End Try
	End Sub
End Class
$vbLabelText   $csharpLabel
  • PdfFilePrinter.AdobeReaderPath設定係統上 Acrobat Reader 可執行檔 (Acrobat.exe) 的路徑。 它告訴PdfFilePrinter在哪裡可以找到列印過程中需要的 Acrobat 應用程式。 請務必新增正確的路徑,否則將無法正常運作。
  • 建立了一個新的PdfFilePrinter物件。 建構函數接受兩個參數:第一個參數是要列印的 PDF 檔案的路徑。 第二個參數是要將列印作業傳送到的印表機的名稱(在本例中為"Microsoft Print To PDF")。 您可以將其替換為您所需的印表機名稱。
  • 程式碼嘗試使用PdfFilePrinterPrint方法列印 PDF 文件。 它被包含在try-catch區塊中,以處理列印過程中可能發生的任何異常。 如果發生異常,錯誤訊息將顯示在控制台上。
  • 執行程式後,Adobe Acrobat Reader 將會開啟並列印文件。

如何使用 PDFSharp 列印 PDF 檔案:圖 3 - 儲存檔案對話框

安裝 IronPDF NuGet 包

在專案中安裝 IronPDF 是一個非常簡單的過程。

  1. 啟動 Visual Studio 2022 並開啟您的 C# 項目,或者如果您還沒有 C# 項目,則建立一個新項目。
  2. 在解決方案資源管理器中以滑鼠右鍵按一下您的專案。 然後,從上下文選單中選擇"管理 NuGet 套件..."。
  3. 在 NuGet 套件管理員視窗中,確保您位於"瀏覽"標籤中。 在搜尋欄中輸入"IronPDF"。
  4. 從搜尋結果中,找到 Iron Software 提供的IronPdf軟體包,然後點選選擇。
  5. 在"NuGet 套件管理器"視窗的右側,您將看到解決方案中的項目清單。 選擇要安裝軟體包的項目。 通常情況下,您會選擇要處理 PDF 文件的主要項目。

    如何使用 PDFSharp 列印 PDF 檔案:圖 4 - IronPdf

  6. 選擇項目後,點選"安裝"按鈕,將IronPdf套件加入您的專案中。 NuGet 將下載並安裝該軟體包及其所有必需的依賴項。

就是這樣! 現在您已成功在 Visual Studio 2022 C# 專案中安裝了 IronPDF NuGet 套件,您可以開始使用其類別和方法來處理 PDF 文件。

使用 IronPDF 列印 PDF 文件

使用 IronPDF 列印 PDF 文件是一項非常簡單的任務。 與 PDFsharp 不同,IronPDF 提供了列印 PDF 文件的功能。 IronPDF 提供列印設定和其他列印文件所需的方法。 我們不需要使用任何其他流程或第三方函式庫。 以下程式碼範例示範如何使用 IronPDF 列印 PDF 檔案。

static void Main(string[] args)
{
    // Create a new PDF document from the specified file path
    PdfDocument pdfDocument = new PdfDocument(@"D:\Tutorial Project\PDFSharpPrintPDF\SamplePDF.pdf");

    // Print the PDF document using the default printer
    pdfDocument.Print();
}
static void Main(string[] args)
{
    // Create a new PDF document from the specified file path
    PdfDocument pdfDocument = new PdfDocument(@"D:\Tutorial Project\PDFSharpPrintPDF\SamplePDF.pdf");

    // Print the PDF document using the default printer
    pdfDocument.Print();
}
Shared Sub Main(ByVal args() As String)
	' Create a new PDF document from the specified file path
	Dim pdfDocument As New PdfDocument("D:\Tutorial Project\PDFSharpPrintPDF\SamplePDF.pdf")

	' Print the PDF document using the default printer
	pdfDocument.Print()
End Sub
$vbLabelText   $csharpLabel
  • 第一行使用指定的檔案路徑,從 IronPDF 建立PdfDocument類別的新實例。 該路徑指向您要列印的 PDF 檔案的位置(在本例中為"SamplePDF.pdf")。 PdfDocument類別表示您可以使用 IronPDF 處理的 PDF 文件。
  • 載入 PDF 文件後,呼叫PdfDocument實例的Print方法。 在 IronPDF 中, Print方法會將 PDF 文件傳送到電腦上安裝的預設印表機,從而啟動列印過程。
  • 假設我們的預設印表機是 Microsoft Print to PDF。 在這種情況下,上面的程式碼會在執行過程中開啟"儲存檔案"對話方塊。

如何使用 PDFSharp 列印 PDF 文件:圖 5 - 儲存文件

您也可以使用以下代碼指定其他印表機:

// Set the printer name to a specific printer
pdfDocument.GetPrintDocument().PrinterSettings.PrinterName = "my Printer";
// Set the printer name to a specific printer
pdfDocument.GetPrintDocument().PrinterSettings.PrinterName = "my Printer";
' Set the printer name to a specific printer
pdfDocument.GetPrintDocument().PrinterSettings.PrinterName = "my Printer"
$vbLabelText   $csharpLabel
  • 此行透過在PrinterSettings中設定PrinterName屬性,將列印作業配置為使用除預設印表機以外的指定印表機。

結論

IronPDF 和 PDFsharp 都是功能強大的程式庫,可用於在 C# 或 .NET 中處理 PDF 檔案。 然而,IronPDF 提供了一個更現代化、更豐富的解決方案,它提供了創建、讀取、修改和轉換 PDF 的功能,以及對 HTML 到 PDF 轉換的支援。 IronPDF 簡潔明了的 API 和簡化的方法使開發人員能夠輕鬆地在應用程式中直接處理 PDF 檔案。 另一方面,PDFsharp 雖然功能強大,但某些任務(例如列印 PDF)需要像 Acrobat 這樣的外部應用程序,這使得它在處理整個 PDF 工作流程方面相對不太方便。

IronPDF 可供開發使用,並提供免費試用版商業用途使用

請注意PDFSharp 是其各自所有者的註冊商標。 本網站與PDFSharp無任何關聯,亦未獲得其認可或贊助。所有產品名稱、標誌和品牌均為其各自所有者的財產。 比較資料僅供參考,並反映撰寫時的公開資訊。

常見問題解答

如何在 C# 中列印 PDF 而不遺失格式?

您可以使用 IronPDF 在不丟失格式的情況下列印 PDF。IronPDF 提供內建的列印功能,不需要第三方應用程式,可確保文件格式得以保留。

IronPDF 與 PDFsharp 的主要差異為何?

IronPDF 提供了一套全面的功能,包括 HTML 到 PDF 的轉換和內建的列印功能。另一方面,PDFsharp 則需要 Adobe Acrobat Reader 才能列印,因為它缺乏內建的列印功能。

如何在 C# 中將 HTML 轉換為 PDF?

使用 IronPDF,您可以使用 RenderHtmlAsPdf 方法將 HTML 轉換為 PDF。這樣就可以輕鬆地將 HTML 字串或檔案轉換成 PDF 格式。

可以用 C# 在 PDF 文件中加入水印嗎?

是的,IronPDF 允許您利用其 API 為 PDF 文件添加水印。此功能可讓您有效地自訂和保護您的文件。

如何使用 NuGet 安裝 IronPDF?

若要透過 NuGet 安裝 IronPDF,請開啟 Visual Studio,在專案上按一下滑鼠右鍵,選擇「管理 NuGet 套件...」,搜尋「IronPDF」,選擇您的專案,然後按一下「安裝」。

IronPDF 是否支持 PDF 文档中的数字签名?

是的,IronPDF 支援在 PDF 文件中加入數位簽章,以加強重要檔案的安全性和真實性。

使用 IronPDF 列印 PDF 時,可以指定不同的印表機嗎?

是的,IronPDF 允許您透過設定 PdfDocumentPrinterSettings 中的 PrinterName 屬性來指定不同的印表機。

IronPdf 是否免費提供給開發者使用?

IronPDF 免費供開發使用,並提供試用版供商業使用,讓您可以進行測試並將其整合至專案中。

Curtis Chau
技術作家

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

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