DocBook到Word转换?

时间:2011-06-09 14:31:54

标签: ms-word docbook

我需要帮助将DocBook文件转换为Microsoft Word文件。

我是否需要一个XSL文件进行转换?

3 个答案:

答案 0 :(得分:6)

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

转换为Word所需要做的就是选择合适的样式表。

从DocBook XSL:完整指南,这里是three possibilities

  • 转换为XSL-FO,然后使用XMLmind导出到Word。有关详细信息,请参阅XMLmind website
  • 使用一组有限的标签,然后使用DocBook XML包含的样式表之一输出到WordML。有关文档,请参阅Steve Ball的网站http://www.explain.com.au/oss/docbook/
  • 尝试使用Jfor输出到RTF,尽管似乎不再维护Jfor。

我有自己的一个:

  • 如上所述,使用DocBook XML包含的样式表之一发布到XSL-FO,然后运行Apache FOP以从XSL-FO转换为RTF。您将丢失结构信息,但您将保留一定数量的格式。

答案 1 :(得分:1)

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

我不介意回馈这个项目,但实际上并不知道怎么做。

答案 2 :(得分:0)

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