我正在尝试将文档从 html、txt 转换为 pdf、odt,反之亦然。但似乎只有 odt 到 pdf 才有效。不转换其他文件格式

这是我的命令

libreoffice --headless --convert-to pdf test.html [Not working]
libreoffice --headless --convert-to odt test.html [Not working]
libreoffice --headless --convert-to pdf test.docx [Not working]
libreoffice --headless --convert-to pdf test.odt  [Working]
有帮助吗?

解决方案

这是 一个已知问题 在 LibreOffice 中,该问题已在 5.3.0 版本中修复。在此修复之前,当 LibreOffice 实例运行时 --convert-to 或任何其他命令将静默终止而不执行任何操作。

如果您的版本比该版本旧,您可以考虑 Frank Yin建议的解决方案 这里。即在运行转换之前关闭所有打开的 LibreOffice 文档。

如果您无法关闭所有打开的 LibreOffice 文档来运行转换,或者您觉得不方便,您可以尝试 解决方案 在原始错误的评论中建议。

如果您有 LibreOffice 版本 4.5之前 跑步

soffice -env:UserInstallation=file:///$HOME/.libreoffice-headless/ \
--headless --convert-to pdf test.docx

如果您运行的是 LibreOffice 版本 4.5 至 5.3 之间 跑步

soffice -env:UserInstallation=file:///$HOME/.libreoffice-headless/ \
--convert-to pdf test.docx

这里 $HOME/.libreoffice-headless 是一个与主要 LibreOffice 配置文件不同的新配置文件目录。

其他提示

在执行命令之前尝试关闭libreoffice的所有运行实例。这是我痛苦的根本原因。

真正的问题是LibreOffice / Soffice命令行没有提供任何错误消息或调试信息,因此它都是猜测。如果您所达到它,请尝试暗示暗示。

在我的情况下(Linux),我没有安装正确的软件包 - 例如,要转换电子表格,所需的libreoffice-calc(duh),也是libreoffice-houtsless(double-duh)。但命令行不会告诉你 - 它只是挂起,或运行,不做任何事情。

以下作品

libreoffice  --invisible -convert-to pdf myFile.html

libreoffice --invisible -convert-to docx myFile.odt

选项 --invisible 不会启动 GUI,但会在命令行上提供一些正在发生的情况的线索。

在 Linux Mint 13 上测试。

这对我有助于libreoffice 4.2 / linux:

soffice --headless --convert-to txt:Text /path_to/document_to_convert.odt
.

credit: http://ask.libreoffice.org/en/question/14130/how-do-i-install-filters-for-the-soffice-command/

给我。我所遇到的问题是 - 非常不起作用,只要本地libreoffice进程已经打开了本地libreoffice进程,就在15毫秒的返回)。

确保您只在LibreOffice中尚未打开的文档中执行无头操作。

对我来说,以下两个包是将无头文件DOCX到PDF转换的最低限度,在CentOS 7上工作:

yum install libreoffice-headless  libreoffice-writer
.

在 Windows 上我遇到了以下问题:我尝试使用以下命令将所有 DOC 文件转换为 PDF:

soffice --invisible --convert-to pdf *.doc

它失败了,没有任何错误消息。但是当我输入其中一个文件的文件名而不是 *.doc. 。显然这是解决通配符的问题 *.doc. 。我所做的是执行与上面完全相同的命令,但是从 Git Bash 而不是普通的命令提示符 (cmd.exe)。有效。更: 在 Git Bash 中,它显示进度信息和信息性消息!

所以我的建议是:如果您在 Windows 上运行 soffice.exe 并且没有得到任何输出,请从 Git Bash 运行命令(您可以通过安装来获取 Git Bash) 适用于 Windows 的 Git)

我遇到的libreoffice遇到的问题是空空间的问题。在我打破名称(“test-document.docx”而不是测试“documnet.docx”之后,它完美地工作。 从版本4.2.8.2 - 5.3。

我必须安装xvfb包(yum install xorg-x11-server-Xvfb),它是xserver adumy。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top