LibreOffice OS X:从终端将 .odt 转换为 .pdf?

LibreOffice OS X:从终端将 .odt 转换为 .pdf?

使用 LibreOffice,我可以打开 ODT 文档并手动将其导出为 PDF。

是否也有一个从 shell 执行此操作的命令行?

答案1

/Applications/LibreOffice.app/Contents/MacOS/soffice --headless --convert-to pdf my_document.odt

它要求关闭 Libre Office 才能正常处理。这是一个众所周知的漏洞

编辑:错误似乎已在 LO 5.3 中修复

答案2

loffice是您正在寻找的命令。

以下是我运行后得到的输出片段loffice --help

--convert-to output_file_extension[:output_filter_name[:output_filter_options]] [--outdir output_dir] files
  Batch convert files (implies --headless).
  If --outdir is not specified then current working dir is used as output_dir.
  Eg. --convert-to pdf *.doc
      --convert-to pdf:writer_pdf_Export --outdir /home/user *.doc
      --convert-to "html:XHTML Writer File:UTF8" *.doc
      --convert-to "txt:Text (encoded):UTF8" *.doc

答案3

soffice您可以通过 /Applications/LibreOffice.app/Contents/MacOS/ 路径上的命令在终端上转换 .odt 文件。

如果您使用的系统需要lowriter,则可以为文件 /Applications/LibreOffice.app/Contents/MacOS/soffice 创建到 lowriter 的链接,例如:

#cd /Applications/LibreOffice.app/Contents/MacOS/ && ln -s soffice lowriter

之后,您可以将 /Applications/LibreOffice.app/Contents/MacOS/ 添加到系统路径,通过将上述路径添加到文件/etc/paths(以避免出现错误 No Info.plist file in application bundle or no NSPrincipalClass in the Info.plist file, exiting):

cd /etc && echo '/Applications/LibreOffice.app/Contents/MacOS/' >> paths

现在你可以调用:

soffice --headless --convert-to pdf --outdir /path_to/output_dir/ /path_to_file/file_name.odt

答案4

安装
brew install --cask libreoffice
转变
soffice --headless --convert-to pdf *.odt

相关内容