将Word(.docx)转换为DocBook

9 投票
3 回答
5430 浏览
提问于 2025-04-16 19:28

我现在的任务是找到一种方法,把大量的 .docx 文件转换成 docbook 5 格式。目前,我们是用 OpenOffice 打开文件,然后另存为 docbook,这个过程非常耗时。不过我相信一定有更好的方法。这些文件之后还会根据我们的自定义 relax NG 模式进行进一步处理,所以这个转换不需要完美无缺。我已经查了一些资料,并会继续寻找线索,但到目前为止还没有找到什么有用的东西。

在查看了 将 doc/docx 转换为语义 HTML 的内容后,他们推荐了 upCast,但这似乎不太符合我的需求。

我希望找到一些可以在命令行中使用的免费工具。最终,我想批量处理我们的文件。我已经加了 linux、python 和 java 的标签,因为这些是我最熟悉的环境,但如果有合适的解决方案,我也愿意尝试其他的。我想在开始之前先做一些研究,而不是重新发明轮子。

3 个回答

3

你可以把OpenOffice设置成服务器模式,这样就可以直接把文档传给它,而不用一个一个手动打开。

一种方法是查看这个链接:http://code.google.com/p/bungeni-editor/wiki/RunningTheJODConverterServer

8

虽然这样做可能会让人觉得像考古学家一样,但答案里应该提到一下 Pandoc。这个工具不需要依赖开放办公软件。

pandoc -f docx -t docbook -o newdocbook.dbk --standalone original.docx

7

有几种方法可以编写脚本来实现这个功能,既可以使用外部脚本,也可以在OpenOffice内部编写脚本。下面是一些示例链接:

上面的一些链接虽然没有使用Java或Python,但其中的原理仍然适用,而且这些脚本通常都比较短,容易移植(第一个示例是用Ruby写的,我个人很喜欢这个,因为它简单易懂)。

撰写回答