将 Word 转换为 PDF 并保存编辑后的文档
简介
如果您需要在 convert Word to PDF 的同时将编辑后的文档保存为多种输出格式,您来对地方了。本指南将逐步带您完成所有步骤——从加载 WordProcessing 文件、以编程方式编辑其内容,到使用 GroupDocs.Editor for .NET 将结果导出为 PDF、DOCX、HTML 等格式。完成后,您将拥有一个可在任何 .NET 4.6.1+ 或更高版本项目中复用的模式。
快速答案
- Can GroupDocs.Editor convert DOCX to PDF? 是的——只需加载文档并调用
Save并指定所需格式。 - Do I need Microsoft Word installed? 不需要,API 在服务器端完成转换,无需 Office。
- Which .NET versions are supported? .NET Framework 4.6.1+、.NET Core 3.1+、.NET 5/6+。
- How many formats can I export to? 超过 20 种 WordProcessing 格式,包括 PDF、DOCX、HTML 和 TXT。
- Is a license required for production? 是的,需要商业许可证;提供免费试用。
什么是 “convert word to pdf”?
Convert word to pdf 意味着将 Microsoft Word (.docx) 文件转换为 PDF 文档,同时保留布局、字体和图像。
GroupDocs.Editor 完全在内存中执行此转换,消除对外部工具的需求。
为什么在此任务中使用 GroupDocs.Editor?
GroupDocs.Editor 支持 50+ input and output formats,并且能够处理高达 500 pages 的文档,而无需将整个文件加载到内存中,与传统基于 Office 的转换相比,可实现 up to 40 % lower CPU usage。
先决条件
- GroupDocs.Editor for .NET – 从 here 下载最新版本。
- Development Environment – Visual Studio 或任何兼容 .NET 的 IDE。
- .NET Framework – 版本 4.6.1 或更高(或 .NET Core 3.1+)。
- Sample Document – 一个 WordProcessing 文件(例如
sample.docx)。 - Basic C# Knowledge – 熟悉 C# 语法和项目设置。
导入命名空间
Editor 和相关类位于 GroupDocs.Editor 命名空间。请在 C# 文件顶部导入它们:
Editor 类是加载、编辑和保存文档的入口点。EditableDocument 类表示可以在内存中编辑的文档。
using System;
using GroupDocs.Editor.Metadata;
让我们将过程拆分为可管理的步骤。请仔细跟随,以确保您理解每个部分。
步骤 1:获取输入文件的路径
首先,您需要指定输入 WordProcessing 文件的路径。该文件将被加载并编辑。
string inputFilePath = "Your Sample Document";
步骤 2:为文档创建加载选项
接下来,为 WordProcessing 文档创建特定的加载选项。这些选项有助于自定义文档的加载方式。
WordProcessingLoadOptions 定义了加载 WordProcessing 文件时使用的参数,例如字体处理和内存限制。
WordProcessingLoadOptions loadOptions = new WordProcessingLoadOptions();
步骤 3:使用选项加载文档
现在,使用指定的加载选项将文档加载到 Editor 实例中。
using (Editor editor = new Editor(inputFilePath, delegate { return loadOptions; }))
步骤 4:创建编辑选项
为文档准备编辑选项。这些选项将决定文档的编辑方式。
WordProcessingEditOptions 指定 WordProcessing 文件的编辑行为,包括启用修订跟踪和保留原始格式。
WordProcessingEditOptions editOptions = new WordProcessingEditOptions();
步骤 5:打开文档进行编辑
通过创建 EditableDocument 实例来打开文档进行编辑。该实例允许您对文档进行更改。
using (EditableDocument beforeEdit = editor.Edit(editOptions))
步骤 6:编辑文档内容
现在是编辑文档内容的时候了。首先,将文档获取为单个 base64 编码的字符串。
GetEmbeddedHtml 将当前文档内容提取为 base64 编码的 HTML 字符串,便于操作。
string allEmbeddedInsideString = beforeEdit.GetEmbeddedHtml();
例如,让我们修改文档中的副标题。
string allEmbeddedInsideStringEdited = allEmbeddedInsideString.Replace("Subtitle", "Edited subtitle");
步骤 7:从编辑后的内容创建新的 EditableDocument
从编辑后的内容和资源创建一个新的 EditableDocument 实例。
using (EditableDocument afterEdit = EditableDocument.FromMarkup(allEmbeddedInsideStringEdited, null))
步骤 8:将文档保存为多种格式
最后,遍历所有支持的 WordProcessing 格式,并将编辑后的文档保存为每种格式。
Save 方法将编辑后的文档写入选定格式的文件,内部处理转换。
foreach (WordProcessingFormats oneFormat in WordProcessingFormats.All)
{
// Prepare save options
WordProcessingSaveOptions saveOptions = new WordProcessingSaveOptions(oneFormat);
// Prepare save path
string savePath = Path.Combine("OutputDirectory", "MultipleOutFormats." + saveOptions.OutputFormat.Extension);
// Save the document
editor.Save(afterEdit, savePath, saveOptions);
}
完成消息
最后,您可以打印一条消息,指示过程已成功完成。
Console.WriteLine("SavingEditedDocumentToAllFormats routine has successfully finished");
如何使用 GroupDocs.Editor 将 Word 转换为 PDF?
使用 Editor.Load(或 new Editor(inputPath, loadOptions))加载源 DOCX,然后调用 editableDocument.Save("output.pdf", SaveFormat.Pdf)。Editor.Load 使用指定的文件和可选的加载选项初始化 Editor 实例,为编辑做好准备。API 自动处理字体、表格和图像,提供忠实的 PDF 表现,无需 Microsoft Word。确保输出路径可写,并处理任何异常以保证转换成功。
常见用例
- Automated report generation – 创建 DOCX 模板,使用代码填充,然后导出为 PDF 进行分发。
- Batch conversion pipelines – 遍历文件夹中的 Word 文件,编辑元数据,并将每个文件转换为 PDF 或 HTML。
- Document archiving – 将编辑后的版本存储为中性、只读的 PDF 格式以满足合规要求。
故障排除与技巧
- Large files – 设置
LoadOptions.MemoryLimit以避免高内存消耗。 - Missing fonts – 在转换前将所需字体嵌入 DOCX,或通过
EditorSettings.FontsPath提供自定义字体文件夹。 - Encoding issues – 确保正确解码 base64 字符串;在 C# 中使用
Convert.FromBase64String。
常见问题
Q: What is GroupDocs.Editor for .NET?
A: GroupDocs.Editor for .NET 是一个强大的 API,允许您直接在 .NET 应用程序中编辑、转换和保存数十种格式的文档。
Q: Can I use GroupDocs.Editor for free?
A: 可以,您可以使用免费试用。请在 here 下载。
Q: What formats are supported by GroupDocs.Editor?
A: 该库支持 20 多种 WordProcessing 格式,包括 DOCX、PDF、HTML、TXT 和 ODT。
Q: How do I get a temporary license for GroupDocs.Editor?
A: 您可以在 here 获取临时许可证。
Q: Where can I find more documentation and support?
A: 详细文档可在 here 查看,社区支持请访问 here。
最后更新: 2026-06-01
测试环境: GroupDocs.Editor 2.10 for .NET
作者: GroupDocs