直接将单个 XML 文件转换为 DOCX

Directly convert a single XML file to DOCX

我试图将单个 XML 文件转换为 DOCX 文件,我是通过使用 XSLT 将我的 XML 转换为 XHTML 来实现的,然后在 MS Word 上打开 XHTML 并保存它作为 DOCX。

但我的任务是将任何 XML 结构(DITA、TEI、DocBook 等)直接转换为 DOCX...还有其他方法吗做吗?

我就是找不到这方面的任何来源。 XML 始终是 DOCX,而不是相反。

是的,您可以使用 XSLT 将任何 XML 格式转换为 OOXML。 XSLT 非常适合 XML 到 XML 的转换。

就是说,您提到的每种输入 XML 格式都相当复杂,而 OOXML 非常复杂。还有,DOCX其实是很多组件的集合体,包括一个document.xml的OOXML文件,通过Open Packaging Conventions.

打包

首先,我建议您首先在 MS Word 中手动创建一个简单的文档。将文件从 .docx 扩展名重命名为 .zip 扩展名,然后解压缩组件并恢复 word/document.xml 文件。制作一个简单的 XSLT 程序来输出 OOXML 在原始 word/document.xml 文件中出现的字面意思。然后,慢慢添加一些定制。完成后,将生成的 word/document.xml 文件重新插入解压后的程序集中,重新压缩,将扩展名重命名为 .docx,您将按要求直接将 XML 转换为 DOCX。

有关详细信息,请参阅 Using XSLT and Open XML to Create a Word 2007 Document