10

我需要一些关于将 DocBook 文件转换为 Microsoft Word 文件的帮助。

我需要一个 XSL 文件来进行转换吗?

4

3 回答 3

6

是的,您确实需要一个 XSL 文件。您可以从免费的 DocBook XML 分发中获取 DocBook 的 XSL 文件。然后,您运行一个免费的 XSLT 转换器,例如 Saxon。如果您从命令行运行 Saxon,您将给它您的 DocBook 文件的名称,以及其中一个样式表的名称,它会根据样式表中的规则转换您的文件。

要转换为 Word,您需要做的是选择正确的样式表。

来自 DocBook XSL:完整指南,这里有三种可能性

  • 转换为 XSL-FO,然后使用 XMLmind 导出到 Word。有关更多信息,请参阅XMLmind 网站
  • 使用一组有限的标签,然后使用 DocBook XML 包含的样式表之一输出到 WordML。
  • 尝试使用 Jfor 输出到 RTF,尽管 Jfor 似乎不再维护。

我有我自己的一个:

  • 如上所述,使用 DocBook XML 包含的样式表之一发布到 XSL-FO,然后运行 ​​Apache FOP 将 XSL-FO 转换为 RTF。您将丢失结构信息,但您将保留一定数量的格式。
于 2011-06-20T16:06:47.337 回答
1

我最近为我们的用户实现了相同的功能。他们使用允许通过 XSL 轻松转换的 Oxygen XML 编辑器。我打算做 OOXML,但最终选择了 WordML。作为起点,我使用了往返XSL,但由于存在错误或缺少功能,我不得不重写大量模板。此外,我还进行了其他自定义以服务于某个目的或仅用于我们的 XML 文件。

我不介意回馈这个项目,但我真的不知道如何去做。

于 2011-11-23T00:03:26.547 回答
0

我正在使用 XQuery 使用 XQuery 类型切换库将 DocBook 转换为各种格式。XQuery 使用索引,因此我可以非常快速地转换许多文档。

于 2012-05-03T17:03:30.867 回答