IronWordを使って C# で DOCX を PDF に変換する方法
IronWord はそのToPdfメソッドを通じてシームレスなDOCXからPDFへの変換を可能にし、標準化されたPDF出力形式を必要とする自動化された文書ワークフロー、レポート配布、アーカイブプロセスをサポートします。
クイックスタート: C# で DOCX を PDF に変換する
IronWord を使用して、単一のメソッド呼び出しでDOCXファイルを読み込み、PDFに変換します。
最小限のワークフロー(5ステップ)
- IronWord C#ライブラリをインストールする
- `new WordDocument()`を使用して既存のDOCXファイルを読み込みます
- ドキュメントを変換するには`ToPdf()`を呼び出します
- PDFを`SaveAs()`を使って保存するか、バイト配列を取得します
- 生成されたPDFファイルを配布またはアーカイブします
DOCXファイルをPDFに変換するには?
ToPdfメソッドは、ドキュメントのフォーマット、画像、表、テキストスタイルを保持しながらすべてのPDF生成の複雑さを処理します。 DOCXファイルを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")
このアプローチは、自動レポート配布、請求書生成、または標準化された PDF 出力を必要とするあらゆるワークフローに適しています。 変換された PDF は、すべてのプラットフォームとデバイスで同じようにレンダリングされるため、一貫した外観が重要な公式文書、法的なアーカイブ、クライアント向けの成果物に最適です。
複数の DOCX ファイルを PDF に変換するにはどうすればよいですか?
大量のドキュメントを処理する場合、バッチ変換によりディレクトリ全体を自動的に処理します。 すべてのDOCXファイルを取得するにはDirectory.GetFiles()を使用し、その後、同じ変換メソッドを適用して各ファイルを反復処理します。 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
上記の例は、進行状況を追跡するためのコンソール ログを使用した実用的なバッチ処理を示しています。 このパターンは、アーカイブ移行プロジェクト、自動化されたワークフロー パイプライン、または何百もの DOCX ファイルを手動介入なしで変換する必要があるスケジュールされたレポート生成に効果的に機能します。
大規模なバッチを処理する場合は、変換前にソース ファイルが存在することを確認し、一貫した出力命名規則を維持します。 パフォーマンス向上のために並列処理を検討しますが、同時操作中にメモリが枯渇しないようにシステム リソースを監視します。

