使用 --headless --convert-to 标志使用 libreoffice 将 .doc(x) 转换为 PDF/A-1a 格式
Posted
技术标签:
【中文标题】使用 --headless --convert-to 标志使用 libreoffice 将 .doc(x) 转换为 PDF/A-1a 格式【英文标题】:Convert .doc(x) to PDF/A-1a format with libreoffice using --headless --convert-to flags 【发布时间】:2013-12-18 15:53:23 【问题描述】:我目前正在开发一个 php Web 应用程序,它可以自动将 Microsoft doc(x) 文件转换为 PDF 格式。
为此,我们在网络服务器 (CentOS 6.5 x64) 上使用 libreoffice 无头转换器。
我使用以下命令来转换文件;
libreoffice --headless --convert-to pdf /path/to/sourceFile.doc -outdir /path/to/dest
一切正常,但有一个问题。
PDF 输出应为 PDF/A-1a 格式,目前为默认格式。
我在网上搜索了几个小时,但找不到解决方案。
如何更改输出格式?
【问题讨论】:
【参考方案1】:我的建议是使用“Cloudooo”在 linux 上转换媒体或办公文件, 优点是 cloudooo 支持 ooffice 和 libreoffice 并在崩溃的情况下重新启动所需的程序。
github上的官方repo是:https://github.com/nexedi/cloudooo
我用于导出 pdf/a 而不是 pdf 的分叉版本:https://github.com/florianajir/cloudooo
【讨论】:
【参考方案2】:您将需要在 ghostscript 上做一些后续工作。
ghostscript -dPDFA -dNOOUTERSAVE -dBATCH -dNOPAUSE -dQUIET -sProcessColorModel=DeviceRGB -dUseCIEColor -sDEVICE=pdfwrite -o "out.pdf" -dPDFACompatibilityPolicy=1 PDFA_def.ps "in.pdf"
【讨论】:
以上是关于使用 --headless --convert-to 标志使用 libreoffice 将 .doc(x) 转换为 PDF/A-1a 格式的主要内容,如果未能解决你的问题,请参考以下文章
使用 `google-chrome --headless` 时如何设置浏览器窗口大小?
硒 Python 推特。 HeadLess = True 时的问题
无法使用 chrome-headless 在 docker 中运行 angular-cli 业力测试