25

Sphinx 支持几种输出格式:

  • 多个 HTML 文件(带htmldirhtml
  • 乳胶可用于创建.pdf.ps
  • 文本

我怎样才能获得 Microsoft Word 文件中的输出?

使用另一个文档生成器,我设法生成了一个 html 输出文件,然后使用 Word 应用程序将其转换为 Microsoft Word 格式。

不幸的是,我不知道生成 Word 或 HTML 单页格式的方法。

4

8 回答 8

14

我使用的解决方案是像评论中提到的andho这样的singlehtml builder,然后使用pandoc将html转换为docx。以下示例假定生成的 html 将位于 _build/singlehtml/index.html

make singlehtml
cd _build/singlehtml/
pandoc -o index.docx index.html
于 2017-12-06T12:00:18.313 回答
8

有一个用于生成格式的Sphinx 扩展docx(我没有测试过)和一个更新的(我也没有测试过,但看起来它更积极地维护)

于 2013-03-13T14:47:59.677 回答
4

要将重组文本中的文件转换为 MSdoc,我使用rst2odt和 next unoconv. 看下一个脚本:

#!/bin/sh
rst2odt $1 $1.odt
unoconv -f doc $1.odt
rm $1.odt

您可以使用rst2odt自己的样式表:unoconvOpenOffice 附带,还允许在转换期间应用 Open Office 样式(模板)。只需编辑转换后的文档、更改样式、添加页眉和页脚、将其保存为 ODF 文本文档模板 (OTT) 并将其用作转换的一部分,例如:

unoconv -f doc -t template.ott $1.odt

以后使用该模板进行各种转换。

于 2011-01-11T22:13:21.707 回答
1

我意识到这是一个老问题,但我发现 LibreOffice 支持以下转换方式(假设 soffice.exe 在您的路径中):

soffice.exe --invisible --convert-to doc myInputFile.odt

我读过的一些东西说使用--headless 选项而不是--invisible。两者似乎都适用于 Windows。

您可以从 rst2odt.py 脚本开始,然后执行上述操作以转换为 MS Word 文档。

这是 LibreOffice 其他启动选项的链接:http: //help.libreoffice.org/Common/Starting_the_Software_With_Parameters

这是 OpenOffice 支持的文件类型的链接,我相信 LibreOffice 也应该支持: http ://wiki.services.openoffice.org/wiki/Framework/Article/Filter/FilterList_OOo_3_0

于 2012-04-26T17:47:19.867 回答
0

最好的选择可能是 rst -> odt -> doc

于 2009-08-25T13:34:12.497 回答
0

This is a workaround using Calibre (https://calibre-ebook.com), which includes a powerful converter. This worked well and most of the formatting are preserved:

  • Generate epub output in Sphinx make epub
  • Import epub output into Calibre and then convert epub to docx using inbuilt ebook converter.

Answer is too late for the original question, but people looking at the same problem may find this useful.

于 2017-10-27T08:01:09.870 回答
0

这个答案不是命令行解决方案,它显然不是最好的,但它对我有用并节省了我的时间。生成 html 文件1后,您可以使用浏览器打开生成的 html 并复制整个页面(Crtl + a 和 Ctrl+ c)然后运行 ​​Microsoft Office(或者如果您没有 Microsoft Windows,则使用 live 版本,如我)并粘贴 (Ctrl+v) 到它。

于 2016-07-14T03:58:44.240 回答
-5

我现在不知道 Sphinx 是什么,但你可以创建一个 rtf 文件或 html 文件或类似的东西。

有关更多信息/方法,请参阅以下博文:办公自动化

并从那里:如何使用 ASP 生成富文本格式 (RTF) 文档以流式传输到 Microsoft Word

本文介绍如何使用 ASP 脚本生成富文本格式 (RTF) 文件,然后将这些文件流式传输到 Microsoft Word。该技术为运行时文档生成提供了 Microsoft Word 服务器端自动化的替代方法。

您不使用 ASP 脚本(谁使用 :-)),而是为了这个想法。

于 2009-05-13T15:28:50.677 回答