產品比較

使用iTextSharp合併PDF文件的方法

發佈 2023年9月12日
分享:

合併 PDF 文件是在各種軟體應用中常見的需求,例如文件管理系統、報告生成工具等。 在 .NET 生態系統中,開發人員有多個庫可以用來操作 PDF 文件。 iTextSharp 和 IronPDF 是在 C# 應用程式中處理 PDF 的兩個流行選擇。 在本文中,我們將探討如何使用iTextSharp合併PDF,並與IronPDF進行比較,以幫助您在選擇PDF操作庫時做出明智的決定。

使用iTextSharp合併PDF文件的方法

以下是關於如何使用iTextSharp合併PDF的逐步指南:

  1. 建立新的 Document 對象並指定 PDF 文件的基礎路徑。

  2. 打開 Document 進行編輯。

  3. 定義一個要合併的 PDF 檔案名稱陣列。

  4. 對於列表中的每個 PDF 檔案,建立一個 PdfReader,將其內容添加到 PdfCopy 對象,然後關閉 PdfReader

  5. 關閉 Document,完成合併的 PDF。

IronPDF

IronPDF 網頁是一個 .NET 程式庫,使開發人員能夠在其 C# 和 .NET 應用程式中創建、修改和操作 PDF 文件。 它通過提供從頭開始生成PDF、將HTML轉換為PDF、PDF操作等功能來簡化PDF相關任務。(包括新增、移除和修改內容)、互動表單處理、PDF 合併和拆分、加密以及跨平台相容性,使其成為需要 PDF 文件管理和生成的各種應用程式的寶貴工具。

iTextSharp

iTextSharp已被iText 7取代,因為已達到其使用壽命终止(換行符號),只有安全修復可見。 強烈建議使用iText 7,或考慮將現有項目轉換為新專案。 iText 7 提供了重要的改進,包括 HTML 到 PDF 的轉換、PDF 編輯、SVG 支援、更好的語言支援、除錯工具、數據提取,以及更模組化的功能。 它簡化了 PDF 文件處理,並提供 AGPL 和商業許可證。

安裝 IronPDF 庫

若要在 Visual Studio 專案中安裝 IronPDF NuGet 套件,您可以按照以下步驟進行:

  1. 首先在 Visual Studio 中開啟您的專案,然後將 IronPDF 程式庫用於該專案。

  2. 如果您使用的是 Visual Studio,請依次前往 工具 > NuGet 套件管理員 > 套件管理器主控台。

  3. 在套件管理器控制台中,運行以下命令來安裝IronPDF:
Install-Package IronPdf

Visual Studio 將下載並安裝該軟體包及其相依性。 您可以在輸出視窗中監控進度。 安裝完成後,您可以在C#代碼中開始使用IronPDF。

**如何使用 iTextSharp 合併 PDF 檔案:圖 1 - 在 Visual Studio 的內建終端中顯示的完成安裝。**

在成功安裝 IronPDF 後,您現在可以在專案中開始使用它。 您可以在程式碼檔案中包含必要的「using」聲明,並開始使用IronPDF的功能來處理PDF文件。 匯入必要的命名空間,然後根據需要開始處理PDF。

Using IronPDF;
Using IronPDF;
Dim IronPDF As [Using]
VB   C#

您現在可以在 C# 專案中使用 IronPDF 提供的功能來處理 PDF 文件。 請記得儲存您的專案並建置它,以確保庫正確整合。

安裝 iTextSharp PDF 程式庫

若要在 C# 專案中安裝 iTextSharp PDF 庫,請遵循以下步驟:

  1. 在您偏好的整合開發環境中打開您希望使用iTextSharp庫的C#專案(集成開發環境),例如 Visual Studio。

  2. 轉到工具 > NuGet 套件管理器 > 套件管理器控制台。

  3. 在套件管理器主控台中,運行以下命令:
Install-Package iTextSharp

此命令告訴 NuGet(Visual Studio 的套件管理器)下載並安裝 iTextSharp 套件及其相依性到您的專案中。

NuGet 會下載並安裝 iTextSharp 套件及任何所需的相依項。 您可以在套件管理器主控台中監控安裝進度。

**如何使用 iTextSharp 合併 PDF 文件**:圖 2 - 在 Visual Studio 的內建終端機中顯示已完成的安裝。

安裝完成後,您會在封裝管理員主控台中看到一條確認訊息,表示 iTextSharp 套件已成功安裝。 成功安裝 iTextSharp 後,您現在可以開始在您的項目中使用它。 您可以在程式碼檔案中包含必要的 using 陳述式,並開始使用 iTextSharp 的功能處理 PDF。

使用 IronPDF 將多個 PDF 合併為單一 PDF 文件

IronPDF 提供直接的方法來將多個 PDF 文件合併為一個 PDF 文件. IronPDF 在將多個 PDF 文件合併為一個 PDF 文件時,提供了極大的靈活性。 以下範例代碼展示了如何將多個 PDF 合併為一個 PDF 文件:

static void Main(string [] args)
{
    string basePath = @"D:\PDFFiles\";
    string [] pdfFiles = { "PdfFile_1.pdf", "PdfFile_2.pdf" };
    List<PdfDocument> docList = new List<PdfDocument>();
    foreach (string filename in pdfFiles)
    {
        docList.Add(new PdfDocument(basePath + filename));
    }
    var mergedPDF = PdfDocument.Merge(docList);
    mergedPDF.SaveAs(basePath + "mergePDFbyIronPDF.pdf");
}
static void Main(string [] args)
{
    string basePath = @"D:\PDFFiles\";
    string [] pdfFiles = { "PdfFile_1.pdf", "PdfFile_2.pdf" };
    List<PdfDocument> docList = new List<PdfDocument>();
    foreach (string filename in pdfFiles)
    {
        docList.Add(new PdfDocument(basePath + filename));
    }
    var mergedPDF = PdfDocument.Merge(docList);
    mergedPDF.SaveAs(basePath + "mergePDFbyIronPDF.pdf");
}
Shared Sub Main(ByVal args() As String)
	Dim basePath As String = "D:\PDFFiles\"
	Dim pdfFiles() As String = { "PdfFile_1.pdf", "PdfFile_2.pdf" }
	Dim docList As New List(Of PdfDocument)()
	For Each filename As String In pdfFiles
		docList.Add(New PdfDocument(basePath & filename))
	Next filename
	Dim mergedPDF = PdfDocument.Merge(docList)
	mergedPDF.SaveAs(basePath & "mergePDFbyIronPDF.pdf")
End Sub
VB   C#

上述代碼使用 IronPDF 庫合併兩個 PDF 檔案(「PdfFile_1.pdf」和「PdfFile_2.pdf」)位於指定的基礎路徑(D:\PDFFiles). 它創建一個 PdfDocument 對象的列表,將輸入的 PDF 添加到列表中,並使用 PdfDocument.Merge 將它們合併成一個單一的 PDF,並將合併後的 PDF 保存為 "mergePDFbyIronPDF.pdf" 在相同的基本路徑下。

以下是此範例中使用的 PDF 範本:

**如何使用 iTextSharp 合併 PDF 文件**:圖 3 - 一個簡單的 PDF 文件,標題為「A Simple PDF File」,下面有一些正文,以及一個單頁 PDF 文章。

以下是合併的 PDF 文件:

**如何使用 iTextSharp 合併 PDF 檔案**:圖4 - 合併後的 PDF,簡單的 PDF 在前,文章在後。

使用 iTextSharp 合併多個 PDF 文件

iTextSharp 不提供直接合併 PDF 檔案的方法。 然而,我們可以通過開啟每個輸入的 PDF,並將其內容添加到輸出文件中來實現。 以下範例代碼將 PDF 文件合併為單一的 PDF 文件:

static void Main(string [] args)
{
    Document doc = new Document();
    string basePath = @"D:\PDFFiles\";
    PdfCopy copy = new PdfCopy(doc, new FileStream(basePath + "mergePdf.pdf", FileMode.Create));
    doc.Open();

    string [] pdfFiles = { "PdfFile_1.pdf", "PdfFile_2.pdf" };

    foreach (string filename in pdfFiles)
    {
        PdfReader reader = new PdfReader(basePath + filename);
        copy.AddDocument(reader);
        reader.Close();
    }

    doc.Close();
}
static void Main(string [] args)
{
    Document doc = new Document();
    string basePath = @"D:\PDFFiles\";
    PdfCopy copy = new PdfCopy(doc, new FileStream(basePath + "mergePdf.pdf", FileMode.Create));
    doc.Open();

    string [] pdfFiles = { "PdfFile_1.pdf", "PdfFile_2.pdf" };

    foreach (string filename in pdfFiles)
    {
        PdfReader reader = new PdfReader(basePath + filename);
        copy.AddDocument(reader);
        reader.Close();
    }

    doc.Close();
}
Shared Sub Main(ByVal args() As String)
	Dim doc As New Document()
	Dim basePath As String = "D:\PDFFiles\"
	Dim copy As New PdfCopy(doc, New FileStream(basePath & "mergePdf.pdf", FileMode.Create))
	doc.Open()

	Dim pdfFiles() As String = { "PdfFile_1.pdf", "PdfFile_2.pdf" }

	For Each filename As String In pdfFiles
		Dim reader As New PdfReader(basePath & filename)
		copy.AddDocument(reader)
		reader.Close()
	Next filename

	doc.Close()
End Sub
VB   C#

上面的代碼使用iTextSharp合併了兩個PDF文件(「PdfFile_1.pdf」和「PdfFile_2.pdf」)自指定的基路径(D:\PDFFiles)合併成一個名為 "mergePdf.pdf" 的單一 PDF。它通過打開每個輸入 PDF,將其內容添加到輸出文件,然後關閉這些文件來完成這項工作。 上述程式碼將多個 PDF 合併為一個 PDF。

我們使用了如下兩個輸入文件:

**如何使用 iTextSharp 合併 PDF 文件**:圖5 - 與之前相同的輸入 PDF。

我們的程式碼創建的新文件如下:

**如何使用 iTextSharp 合併 PDF 文件**:圖 6 - 合併的 PDF,簡單的 PDF 位于前面,文章位于後面。

結論

與 iTextSharp 的比較,IronPDF 成為在 C# 應用程式中合併 PDF 文件的最佳選擇。 雖然這兩個庫都很強大,但IronPDF 提供了一個更易於使用的界面、現代化的功能如HTML到PDF轉換、明確的授權選項、透過NuGet的簡便整合和活躍的開發,這些總體上簡化了合併過程,減少了開發時間,並確保PDF相關任務的更可靠解決方案。 其使用者友好的介面、強大的功能集以及持續的開發,使 IronPDF 成為在 C# 中合併 PDF 的卓越解決方案。

< 上一頁
iTextsharp HTML 轉 PDF 與 CSS 樣式 C# 範例 對比 IronPDF
下一個 >
Adobe Reader SDK 與 IronPDF 在 C# 中的比較

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

免費 NuGet 下載 總下載次數: 11,622,374 查看許可證 >