将 Word/PowerPoint XML 转换为 docx/pptx

Posted

技术标签:

【中文标题】将 Word/PowerPoint XML 转换为 docx/pptx【英文标题】:Convert Word/PowerPoint XML to docx/pptx 【发布时间】:2021-10-05 21:18:31 【问题描述】:

我想知道如何解决以下问题:我有一个要替换其文本的演示文稿(经典 ctrl+h 操作)。我目前看到有两种方法可以做到这一点:

    使用Open XML:这似乎是显而易见的选择 - 但是将来我可能必须对 Word 执行相同的操作。因此,为什么要打扰 Open XML 而直接使用 XML? 使用 XML:我可以将 pptx 保存为 Presnentation XML 文档,然后替换 XML 中的文本。

现在我有一个问题:在我替换 .xml 文件中的文本后 - 如何将其恢复为 pptx/docx?

【问题讨论】:

【参考方案1】:

.docx、.xlsx、.pptx 等实际上都是 zip 文件。如果您复制文件并使用 .zip 扩展名重命名它,则可以使用您喜欢的 zip 应用程序解压缩文件。您会发现该文件由包含许多(通常非常多)xml 文件的文件夹结构组成。您可以通过任何您喜欢的方式直接编辑这些文件。

然后您需要做的就是保存 xml 文件,重新压缩完整的结构并重命名回原始格式。唯一需要注意的是,确保不要更改 xml 结构 - 这可能非常无情!

我已经使用这种技术编写了我自己的库,用于仅使用 .Net 附带的标准工具(没有第三方库)来读取和写入 xlsx 文件。

【讨论】:

XML 结构确实是无情的,即使在使用 OpenXML 时也是如此

以上是关于将 Word/PowerPoint XML 转换为 docx/pptx的主要内容,如果未能解决你的问题,请参考以下文章

C# printDocument 直接打印Word文档

技巧原汁原味批量提取Word图片

MacOS | 专业PDF编辑器--Wondershare PDFelement Pro 7.6

将 XML 转换为 X12 和 X12 转换为 XML 的最佳方法

震惊!当Python遇到Excel后,将开启你的认知虫洞

震惊!当Python遇到Excel后,将开启你的认知虫洞