如何在C#中使用IronWord將DOCX轉換為PDF

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronWord透過其ToPdf方法實現DOCX到PDF的無縫轉換,支持自動化文件工作流程、報告分發和需要標準化PDF輸出格式的歸檔過程。

快速入門:在C#中將DOCX轉換為PDF

使用IronWord,以單一方法呼叫載入DOCX並將其轉換為PDF。

  1. 使用NuGet套件管理器安裝https://www.nuget.org/packages/IronWord

    PM > Install-Package IronWord
  2. 複製並運行這段程式碼片段。

    using IronWord;
    
    WordDocument doc = new WordDocument("report.docx");
    doc.ToPdf("report.pdf");
  3. 部署以在您的實時環境中測試

    今天就開始在您的專案中使用IronWord,透過免費試用

    arrow pointer

如何將DOCX文件轉換為PDF?

ToPdf方法處理所有PDF生成的複雜性,同時保持文件格式、圖像、表格和文字樣式。 使用ToPdf()並提供輸出路徑,轉換將自動完成。

:path=/static-assets/word/content-code-examples/how-to/word-to-pdf-basic.cs
using IronWord;

// Load existing DOCX file
WordDocument doc = new WordDocument("input.docx");

// Convert to PDF
doc.ToPdf("output.pdf");
Imports IronWord

' Load existing DOCX file
Dim doc As New WordDocument("input.docx")

' Convert to PDF
doc.ToPdf("output.pdf")
$vbLabelText   $csharpLabel

ToPdf方法在轉換過程中保持文件完全忠實性,包含字型、顏色、圖像和布局。

這種方法適合自動化報告分發、發票生成或任何需要標準化PDF輸出的工作流程。 轉換後的PDF在所有平台和裝置上呈現相同,非常適合官方文件、法律歸檔和面向客戶的交付品,這些場合一致的外觀至關重要。


如何將多個DOCX文件轉換為PDF?

對於高容量文件處理,批量轉換會自動處理整個目錄。 使用Directory.GetFiles()檢索所有DOCX文件,然後遍歷每個文件應用相同的轉換方法。 使用try-catch塊進行錯誤處理,確保損壞的文件不會讓整個批次操作停止。

:path=/static-assets/word/content-code-examples/how-to/word-to-pdf-batch.cs
using IronWord;
using System;
using System.IO;

// Get all DOCX files from input directory
string[] docxFiles = Directory.GetFiles("input-folder", "*.docx");

foreach (string filePath in docxFiles)
{
    try
    {
        // Load DOCX file
        WordDocument doc = new WordDocument(filePath);

        // Generate output PDF path
        string fileName = Path.GetFileNameWithoutExtension(filePath);
        string outputPath = $"output-folder/{fileName}.pdf";

        // Convert to PDF
        doc.ToPdf(outputPath);

        Console.WriteLine($"Converted: {fileName}");
    }
    catch (Exception ex)
    {
        Console.WriteLine($"Failed: {Path.GetFileName(filePath)} - {ex.Message}");
    }
}
Imports IronWord
Imports System
Imports System.IO

' Get all DOCX files from input directory
Dim docxFiles As String() = Directory.GetFiles("input-folder", "*.docx")

For Each filePath As String In docxFiles
    Try
        ' Load DOCX file
        Dim doc As New WordDocument(filePath)

        ' Generate output PDF path
        Dim fileName As String = Path.GetFileNameWithoutExtension(filePath)
        Dim outputPath As String = $"output-folder/{fileName}.pdf"

        ' Convert to PDF
        doc.ToPdf(outputPath)

        Console.WriteLine($"Converted: {fileName}")
    Catch ex As Exception
        Console.WriteLine($"Failed: {Path.GetFileName(filePath)} - {ex.Message}")
    End Try
Next
$vbLabelText   $csharpLabel

上面的範例展示了帶有主控台日誌的實用批處理以進行進度跟踪。 這種模式對於檔案庫遷移專案、自動化工作流程或定期報告生成非常有效,其間上百個DOCX文件需要無人值守的轉換。

在處理大量批次時,請在轉換之前確認源文件存在並保持一致的輸出命名規則。 考慮採用並行處理以提高性能,但請監控系統資源,以防止在並發操作期間記憶體耗盡。

常見問題

IronWord中用於將DOCX轉換為PDF的主要方法是什麼?

IronWord中用於將DOCX轉換為PDF的主要方法是`ToPdf()`方法。它處理整個轉換過程,確保文件完整性,包括字型、顏色、圖片和版面。

如何使用IronWord將單個DOCX文件轉換為PDF?

為了使用IronWord將單個DOCX文件轉換為PDF,請使用`new WordDocument("file.docx")`載入DOCX檔案,然後呼叫`ToPdf()`方法,指定所需的輸出路徑。

IronWord能處理多個DOCX文件轉換為PDF的批量轉換嗎?

是的,IronWord可以處理批量轉換,通過`Directory.GetFiles()`檢索DOCX文件並迭代每個文件以應用`ToPdf()`方法。這對於高容量文件處理非常有用。

使用IronWord將DOCX轉換為PDF的好處是什麼?

使用IronWord將DOCX轉換為PDF可以確保不同平台上的一致外觀,非常適合正式文件、法律存檔和面向客戶的交付品。

IronWord在轉換過程中能否保留文件格式?

是的,IronWord可以保留文件格式,包括文字風格、表格和圖片,確保轉換後的PDF保持完整的文件完整性。

使用IronWord能否以不同方式儲存轉換後的PDF?

是的,轉換後的PDF可以使用`SaveAs()`儲存或作為字節陣列檢索,提供文件儲存或分發方式的靈活性。

如何確保使用IronWord的批量轉換過程中有效處理錯誤?

要在批量轉換過程中有效處理錯誤,請使用try-catch區塊,確保損壞的檔案不會中斷整個批量操作。

使用IronWord進行批量處理時應考慮哪些系統因素?

使用IronWord進行批量處理時,應考慮並行處理以獲得性能提升,但要監控系統資源以防止在同時操作過程中耗盡記憶體。

哪種型別的工作流程從使用IronWord進行DOCX到PDF轉換中受益?

自動化報告分發、發票生成和任何需要標準化PDF輸出的工作流程都能從使用IronWord的DOCX到PDF轉換中受益。

我可以從哪裡下載C#的IronWord程式庫?

C#的IronWord程式庫可以從NuGet套件管理器下載,存取https://nuget.org/packages/IronWord/。

Ahmad Sohail
全端開發人員

Ahmad是一位擁有C#、Python和網頁技術堅實基礎的全端開發人員。他對構建可擴展的軟體解決方案深感興趣,並喜歡探索設計和功能在現實世界應用中的結合。

加入Iron Software團隊之前,Ahmad曾致力於自動化專案和API整合,專注於提升性能和開發者體驗。

在空閒時間,他喜歡試驗UI/UX理念,為開放原始碼工具做出貢獻,偶爾也會潛心編寫技術文件和文章以簡化複雜的主題。

準備開始了嗎?
Nuget 下載 49,323 | 版本: 2026.7 剛剛發布
Still Scrolling Icon

還在滾動?

想要快速證明嗎? PM > Install-Package IronWord
運行範例觀看您的資料變成Word檔。