C# で Microsoft Word を PDF に変換する方法
DOCXファイルは、MicrosoftのワードプロセッシングプログラムであるMicrosoft Wordで作成された文書です。 それはOffice Open XML (OOXML)標準を使用しており、さまざまなソフトウェアと互換性があり、効率的です。 これは、Word 2007以降のWord文書のデフォルト形式であり、以前のDOC形式に取って代わりました。
IronPDFを使用すると、DOCXドキュメントをPDFに変換でき、個別の受信者向けにパーソナライズされたバッチ文書を生成するためのメールマージ機能も提供されます。 DOCXからPDFへの変換は、普遍的な互換性を確保し、フォーマットを保持し、セキュリティの層を追加します。
IronPDFを始めましょう
今日から無料トライアルでIronPDFをあなたのプロジェクトで使い始めましょう。
How to Convert DOCX to PDF in C#
- DOCXをPDFに変換するためのC#ライブラリをダウンロード
- 変換したいDOCXファイルを準備してください
- DOCXファイルからPDFをレンダリングするためにDocxToPdfRendererクラスをインスタンス化します
RenderDocxAsPdf
メソッドを使用し、DOCX ファイルパスを提供してください- メールマージ機能を利用して一連のドキュメントを生成する
DOCXファイルをPDFに変換する例
Microsoft WordファイルをPDFに変換するには、DocxToPdfRendererクラスをインスタンス化します。 DOCXファイルのファイルパスを指定して、DocxToPdfRendererオブジェクトのRenderDocxAsPdf
メソッドを利用します。このメソッドはPdfDocumentオブジェクトを返し、PDFをさらにカスタマイズすることができます。 私はMicrosoft Wordの「Modern Chronological Resume」テンプレートを例として使用しました。 Modern Chronological Resume DOCXのサンプルファイルをダウンロードできます。
マイクロソフトワードプレビュー

コードサンプル
さらに、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")
PDFを出力
メールマージの例
Microsoft 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; }
}
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によって提供されたテンプレートを当社の目的に合わせて変更しました。 Party Invitation DOTX サンプルファイルをダウンロードしてください。 私たちのユースケースでは、MailMergePrintAllInOnePdfDocument プロパティを true に設定し、PDF を 1 つの PdfDocument オブジェクトに結合します。 使用する差し込みフィールドは、日付、場所、受取人の名前、お問い合わせです。
マイクロソフトワードプレビュー

コードサンプル
: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をマージまたは分割して個々のページを操作したり、回転させたりすることもでき、注釈やブックマークを適用するオプションもあります。