How to Convert Microsoft Word to PDF in C
IronPDF 允許 C# 開發人員使用 DocxToPdfRenderer 類通過簡單的一行方法調用將 DOCX 文件轉換為 PDF 格式,保留所有格式並支持郵件合併功能以進行批量文件生成。
DOCX 文件是使用 Microsoft 提供的 Microsoft Office 套件中的字處理程式 Microsoft Word 建立的文件。 它使用 Office Open XML (OOXML) 標準,使其高效並與各種軟體相容。 自 Word 2007 起,它是 Word 文件的預設格式,取代了以前發布的 DOC 格式。 DOCX 格式提供了多種優勢,包括通過 ZIP 壓縮獲得更小的文件大小、更好的資料恢復能力,並提升了跨平台的相容性。
IronPDF 能夠立即將 Word 文件轉換為 PDF 文件,並提供郵件合併功能,以便為單個收件人生成個性化的文件批量。 從 DOCX 轉換為 PDF 可確保通用相容性、保留格式並增加一層安全性。 當您需要分發在不同裝置和操作系統上保持完全外觀一致的文件時,此功能特別有用,類似於 從 HTML 建立 PDF 或 將圖像轉換為 PDF。
快速入門:使用 IronPDF 轉換 DOCX 為 PDF
using IronPDF 輕鬆在 C# 中將 DOCX 文件轉換為 PDF。 此快速指南演示了如何使用 DocxToPdfRenderer 類和 RenderDocxAsPdf 方法在一行程式碼中實現無縫轉換。 非常適合希望精簡文件處理的開發人員,確保生成的 PDF 保留所有原始格式和相容性。
最小工作流程 (5步)
- 下載用於將 DOCX 轉換為 PDF 的 C# 程式庫
- 準備您要轉換的 DOCX 文件
- 實例化 DocxToPdfRenderer 類以從 DOCX 文件生成 PDF
- 使用
clear方法並提供 DOCX 文件路徑 - 使用郵件合併功能生成一批文件
如何將 DOCX 文件轉換為 PDF?
IronPDF 允許開發人員以程式化的方式將 Word 文件轉換為 PDF,以增加效率並允許其整合到現有的 .NET 應用程式或任何他們可能擁有的跨平台 .NET Framework應用中。 程式庫支持多種安裝方法,包括 NuGet 套件,並且可以部署在多平台上,包括 Windows、Linux 和 macOS。
將 Microsoft Word 文件轉換為 PDF 格式的轉換過程非常簡單。 我們首先實例化 DocxToPdfRenderer 類。 利用 RenderDocxAsPdf 方法提供 DOCX 文件路徑的 DocxToPdfRenderer 物件返回 PdfDocument 物件,允許您進一步自訂 PDF,包括新增 頁首和頁尾、應用 水印,或設置 安全選項。 您可以下載現代時間順序簡歷 DOCX 範例文件。
原始文件看起來如何?
如何編寫 C# 程式碼?
此外,RenderDocxAsPdf 方法還接受作為字節和流的 DOCX 資料。 此靈活性允許您處理來自多來源的文件,無論它們是儲存在磁碟中、記憶體中,或從資料庫檢索。 該方法在內部處理所有複雜的轉換邏輯,確保字體、圖像、表格和格式準確地保留。
:path=/static-assets/pdf/content-code-examples/how-to/docx-to-pdf-from-file.cs
using IronPdf;
// Instantiate Renderer
DocxToPdfRenderer renderer = new DocxToPdfRenderer();
// Render from DOCX file
PdfDocument pdf = renderer.RenderDocxAsPdf("Modern-chronological-resume.docx");
// Save the PDF
pdf.SaveAs("pdfFromDocx.pdf");
Imports IronPdf
' Instantiate Renderer
Private renderer As New DocxToPdfRenderer()
' Render from DOCX file
Private pdf As PdfDocument = renderer.RenderDocxAsPdf("Modern-chronological-resume.docx")
' Save the PDF
pdf.SaveAs("pdfFromDocx.pdf")
對於更高級的情景,您也可以從字節陣列或流進行轉換:
:path=/static-assets/pdf/content-code-examples/how-to/docx-to-pdf-3.cs
// Convert from byte array
byte[] docxBytes = File.ReadAllBytes("document.docx");
PdfDocument pdfFromBytes = renderer.RenderDocxAsPdf(docxBytes);
// Convert from stream
using (FileStream stream = new FileStream("document.docx", FileMode.Open))
{
PdfDocument pdfFromStream = renderer.RenderDocxAsPdf(stream);
}
Imports System.IO
' Convert from byte array
Dim docxBytes As Byte() = File.ReadAllBytes("document.docx")
Dim pdfFromBytes As PdfDocument = renderer.RenderDocxAsPdf(docxBytes)
' Convert from stream
Using stream As New FileStream("document.docx", FileMode.Open)
Dim pdfFromStream As PdfDocument = renderer.RenderDocxAsPdf(stream)
End Using
轉換後的 PDF 會看起來怎樣?
生成的 PDF 保留所有原始格式,包括字體、顏色、佈局和嵌入圖像。 這使得 IronPDF 成為生成需在全世界共享或封存的專業文件的理想選擇。
如何使用郵件合併進行批量 PDF 生成?
位於 Microsoft Word 的"郵件"選項卡上的郵件合併允許您建立一批具有個性化資訊的文件,供每位收件人或資料輸入。 它通常用於生成個性化信件、信封、標籤或電子郵件資訊,如邀請函、通訊或代發信件,其中大多數內容相同,但某些細節因每位收件人不同而不同。 結合 IronPDF 的合併多個 PDF功能或與自訂元資料生成文件功能時,此功能特別強大。
我應該建立什麼資料模型?
首先,讓我們建立一個模型以儲存將郵件合併進入其相應佔位符的資訊。 您的資料模型中的屬性名稱必須與 Word 模板中的合併字段名稱完美匹配(大小寫敏感)。
:path=/static-assets/pdf/content-code-examples/how-to/docx-to-pdf-mail-merge-model.cs
internal class RecipientsDataModel
{
public string Date { get; set; }
public string Location{ get; set; }
public string Recipients_Name { get; set; }
public string Contact_Us { get; set; }
}
internal class RecipientsDataModel
{
public string Date { get; set; }
public string Location{ get; set; }
public string Recipients_Name { get; set; }
public string Contact_Us { get; set; }
}
internal class RecipientsDataModel
{
public string Date { get; set; }
public string Location{ get; set; }
public string Recipients_Name { get; set; }
public string Contact_Us { get; set; }
}
Friend Class RecipientsDataModel
Public Property [Date] As String
Public Property Location As String
Public Property Recipients_Name As String
Public Property Contact_Us As String
End Class
Friend Class RecipientsDataModel
Public Property [Date] As String
Public Property Location As String
Public Property Recipients_Name As String
Public Property Contact_Us As String
End Class
我已修改由 Microsoft Word 提供的範本以適合我們的用途。 請下載派對邀請 DOTX 範例文件。 對於我們的用例,讓我們將 MailMergePrintAllInOnePdfDocument 屬性設置為 true,這將 PDF 合併到一個單一的 PdfDocument 物件中。 我們將使用的合併字段包括 Recipient's Name 和 Contact Us。
郵件合併範本看起來如何?
如何實現郵件合併程式碼?
IronPDF 中的郵件合併功能支持通過 DocxPdfRenderOptions 類配置的各種渲染選項。 這使您能夠控制如頁面方向、邊距等方面,以及是否將所有合併的文件合併為單個 PDF 或生成單獨文件。
:path=/static-assets/pdf/content-code-examples/how-to/docx-to-pdf-mail-merge.cs
using IronPdf;
using System.Collections.Generic;
using System.Linq;
var recipients = new List<RecipientsDataModel>()
{
new RecipientsDataModel()
{
Date ="Saturday, October 15th, 2023",
Location="Iron Software Cafe, Chiang Mai",
Recipients_Name="Olivia Smith",
Contact_Us = "support@ironsoftware.com"
},
new RecipientsDataModel()
{
Date ="Saturday, October 15th, 2023",
Location="Iron Software Cafe, Chiang Mai",
Recipients_Name="Ethan Davis",
Contact_Us = "support@ironsoftware.com"
},
};
DocxToPdfRenderer docxToPdfRenderer = new DocxToPdfRenderer();
// Apply render options
DocxPdfRenderOptions options = new DocxPdfRenderOptions();
// Configure the output PDF to be combined into a single PDF document
options.MailMergePrintAllInOnePdfDocument = true;
// Convert DOTX to PDF
var pdfs = docxToPdfRenderer.RenderDocxMailMergeAsPdf<RecipientsDataModel>(
recipients,
"Party-invitation.dotx",
options);
pdfs.First().SaveAs("mailMerge.pdf");
Imports IronPdf
Imports System.Collections.Generic
Imports System.Linq
Private recipients = New List(Of RecipientsDataModel)() From {
New RecipientsDataModel() With {
.Date ="Saturday, October 15th, 2023",
.Location="Iron Software Cafe, Chiang Mai",
.Recipients_Name="Olivia Smith",
.Contact_Us = "support@ironsoftware.com"
},
New RecipientsDataModel() With {
.Date ="Saturday, October 15th, 2023",
.Location="Iron Software Cafe, Chiang Mai",
.Recipients_Name="Ethan Davis",
.Contact_Us = "support@ironsoftware.com"
}
}
Private docxToPdfRenderer As New DocxToPdfRenderer()
' Apply render options
Private options As New DocxPdfRenderOptions()
' Configure the output PDF to be combined into a single PDF document
options.MailMergePrintAllInOnePdfDocument = True
' Convert DOTX to PDF
Dim pdfs = docxToPdfRenderer.RenderDocxMailMergeAsPdf(Of RecipientsDataModel)(recipients, "Party-invitation.dotx", options)
pdfs.First().SaveAs("mailMerge.pdf")
最終合併的 PDF 看起來如何?
一旦建立 PDF 文件後,您便有靈活性進行額外更改。 這包括導出為符合封存和無障礙合規的 PDF/A 或 PDF/UA,以及新增用於文件驗證的數位證書。 您還可以通過合併或拆分 PDF、旋轉頁面來操作各個頁面,並可以應用註解和書籤以改善文件導航。
除了這些功能之外,IronPDF 還支持轉換其他文件格式。 例如,您可以將 Markdown 轉換為 PDF,將 RTF 轉換為 PDF,甚至將 PDF 重新匯出回 HTML。 有關 IronPDF 所提供的其他功能的更多資訊,請參考綜合HTML 到 PDF 教程。
常見問題
如何在C#中將DOCX文件轉換為PDF?
使用IronPDF,您只需用DocxToPdfRenderer類在一行程式碼中將DOCX轉換為PDF。只需實例化DocxToPdfRenderer,使用您的DOCX文件路徑調用RenderDocxAsPdf方法,然後使用SaveAs方法保存輸出。
什麼是DocxToPdfRenderer類?
DocxToPdfRenderer是IronPDF專門用於將Microsoft Word文件轉換為PDF格式的類別。它提供了一個簡單的API,使開發者能夠轉換DOCX文件,同時保留所有原始格式、佈局和文件屬性。
Word到PDF的轉換是否保留格式?
是的,IronPDF的DocxToPdfRenderer保留了原始Word文件中的所有格式,包括字體、樣式、圖像、表格和佈局,確保PDF輸出與原始DOCX文件完全匹配。
我可以在將DOCX轉換為PDF時進行郵件合併嗎?
是的,IronPDF支持郵件合併功能,允許您從單個DOCX模板生成個性化的PDF文件批次。這對於為個別收件人建立自定義文件同時保持一致格式特別有用。
將DOCX轉換為PDF的主要步驟是什麼?
過程涉及5個簡單步驟與IronPDF:1)下載C#程式庫,2)準備您的DOCX文件,3)實例化DocxToPdfRenderer類,4)使用您的文件路徑調用RenderDocxAsPdf方法,5)可選地利用郵件合併進行批處理。
為什麼我應該將Word文件轉換為PDF格式?
使用IronPDF轉換為PDF可確保在所有裝置和平台上的通用相容性,保留精確格式和佈局,增加文件安全功能,並防止不必要的編輯。無論查看軟體或操作系統是什麼,PDF都能維持其外觀。
DOCX到PDF的轉換是否相容不同平台?
是的,IronPDF支持跨平台部署,並可在Windows, Linux和macOS上使用。該程式庫與各種.NET框架應用程式相容,并提供多種安裝方法,包括NuGet包。
可以轉換哪些型別的Word文件?
IronPDF可以轉換在Microsoft Word 2007或更高版本中建立的DOCX文件,使用Office Open XML (OOXML) 標準。這包括具有複雜格式、圖像、表格和其他高級Word功能的文件。

