我们在生产服务器上使用:Ubuntu 10 服务器版。
我们需要创建一个文档,其中包含内容中的文本、图像和表格以及页眉和页脚中的图像。
现在我们使用 http://phpword.codeplex.com/ 来创建它,它在生成 docx 文件方面做得很好,但我们需要该文件的 pdf 版本。
我们如何将 docx 转换为 pdf ?或者任何其他库来生成允许页眉/页脚中的图像的pdf文件?
使用 Windows 组件不是解决方案。
可能使用 openOffice?它可以在 ubuntu 服务器版本上使用吗?
在 linux 服务器环境中还有其他用于 docx 到 pdf 的转换器吗?

最佳答案

如果您的文档包含图像,使用 OpenOffice 绝对是一个不错的解决方案。如果您想尝试一下,请查看 PyODConverter

如果是简单的文本,您可能需要考虑使用更简单的解决方案,如 PHPDocx、unoconv、AbiWord 或 LiveDocx。

我过去为此使用过 OOo(并且仍然用于将 Odt 文件转换为 Pdf)并且效果很好。 :)
我只遇到了一个问题,但已经解决了。你可以在这里查看:Docx to pdf using openoffice headless way too slow

编辑:

我创建了一个 bash 脚本“/etc/init.d/openoffice”来使用正确的选项启动 openoffice。文件内容如下:

#!/bin/bash
# openoffice.org headless server script
#
# chkconfig: 2345 80 30
# description: headless openoffice server script
# processname: openoffice

OOo_HOME=/usr/lib/openoffice
SOFFICE_PATH=$OOo_HOME/program/soffice

if [ "$1" == "start" ]; then
 echo "Starting OpenOffice headless server"
 $SOFFICE_PATH --headless --accept="pipe,name=beubi_OOffice;urp;StarOffice.ServiceManager" --invisible --norestore --nodefault --nolockcheck --nofirstwizard
 exit
fi

if [ "$1" == "stop" ]; then
 echo "Stopping OpenOffice headless server."
 killall -9 soffice.bin && killall -9 soffice
 exit
fi

echo "Usage: $0 {start|stop}"
exit 1

然后只需对其设置执行权限,您就可以开始使用了。

关于linux - 如何从 linux 服务器从 .docx 生成 PDF 文件?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4702511/

10-10 20:56
查看更多