如何使用IronWord在 C# 中将 DOCX 转换为 PDF
IronWord 通过其 ToPdf 方法实现无缝的 DOCX 到 PDF 转换,支持需要标准化 PDF 输出格式的自动化文档工作流、报告分发和归档流程。
快速入门:使用 C# 将 DOCX 转换为 PDF
使用 IronWord,通过单次方法调用即可加载 DOCX 文件并将其转换为 PDF。
最小工作流程(5 个步骤)
- 安装 IronWord C# 库
- 使用
new WordDocument()加载现有的 DOCX 文件 - 调用 Call
ToPdf()方法将文档转换为 PDF - 使用
SaveAs()保存 PDF 或获取字节数组 - 分发或归档生成的 PDF 文件
如何将 DOCX 文件转换为 PDF?
ToPdf 方法在保留文档格式、图片、表格和文本样式的同时,处理了所有 PDF 生成的复杂性。 加载包含 new WordDocument("file.docx") 的 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")
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
以上示例演示了使用控制台日志记录进行进度跟踪的实用批处理方法。 这种模式适用于归档迁移项目、自动化工作流管道或计划报告生成,在这些项目中,需要转换数百个 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()`保存或以字节数组的形式获取,为文档的存储或分发提供了灵活性。
如何确保批量转换过程中有效地处理错误?
要在批量转换过程中有效地处理错误,请使用try-catch块,确保损坏的文件不会中断整个批次操作。
使用IronWord进行批处理时,应考虑哪些系统因素?
在使用IronWord进行批处理时,考虑并行处理以提高性能,但要监控系统资源以防止在并发操作期间出现内存耗尽问题。
哪些类型的工作流因IronWord的DOCX到PDF转换而受益?
自动化报告分发、发票生成以及任何需要标准化PDF输出的工作流都因IronWord的DOCX到PDF转换而受益。
我可以在哪里下载IronWord库用于C#?
可以从NuGet包管理器下载用于C#的IronWord库,网址为https://nuget.org/packages/IronWord/。

