我正在使用unoconv将不同的文件格式转换为pdf。在我的本地计算机上,所有格式都可以正常运行。但是在我的ubuntu 12.04服务器上,unoconv对于某些格式(例如xls,ppt,pptx等)失败。但是对于doc文件,它工作正常。它显示了ppt转换的以下错误。

$unoconv -f pdf Googling.ppt
unoconv: UnoException during conversion in <class '__main__.com.sun.star.lang.IllegalArgumentException'>: Unsupported URL <file:///home/pythonuser/almamapper/media/library/files/c1cb92e62ce54b29a017a6e8eaa23c/Googling.ppt>: ""
Traceback (most recent call last):
File "/usr/bin/unoconv", line 790, in <module>
main()
File "/usr/bin/unoconv", line 769, in main
convertor.convert(inputfn)
File "/usr/bin/unoconv", line 679, in convert
error("ERROR: The provided document cannot be converted to the desired format. (code: %s)" % e.ErrCode)
File "/usr/lib/python2.7/dist-packages/uno.py", line 337, in _uno_struct__getattr__
return __builtin__.getattr(self.__dict__["value"],name)
AttributeError: ErrCode

我知道我必须在服务器上安装openoffice-headless版本。但是从这个link中我了解到,Ubuntu不久前就改用libreoffice而不是openoffice。因此,我通过以下命令安装了libreoffice。
apt-get install libreoffice-core libreoffice-writer libreoffice-calc
但是仍然出现相同的错误。我是否缺少要安装的东西?有人对此事有想法吗?

最佳答案

我通过安装最新版本的unoconv解决了上述问题。我尝试更新libreoffice并安装完整版本,但均无济于事。

我正在使用unoconv 0.3,最新的可用版本是0.6。因此,我安装了最新版本,它解决了问题。

这是我遵循的步骤:

  • apt-get remove --purge unoconv(先删除旧的unoconv)
  • git clone https://github.com/dagwieers/unoconv(从github下载unoconv的最新版本。)
  • 现在cd到unoconv目录并执行sudo make install

  • 注意:请执行git clone,不要下载tar文件。就我而言,下载tar时安装失败。

    关于shell - unoconv在ubuntu 12.04服务器上不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13064600/

    10-10 15:07