unoconv将.xlsx文件导出为像png一样的图像

时间:2014-05-11 09:28:20

标签: python image excel libreoffice

我已经在我的ubuntu 14.04 64位中成功安装了unoconv

我想将.xlsx文件的第一张图片导出为png或jpg等图片。

我试过

unoconv -l & 9998 ## this is to start the python listener
unoconv -f png abc.xlsx

我得到以下内容:

unoconv: UnoException during export phase:
Unable to store document to file:///var/virtual/abc.png (ErrCode 3088)

Properties: ((com.sun.star.beans.PropertyValue){ Name = (string)"FilterName", Handle = (long)0x0, Value = (any){ (string)"draw_png_Export" }, State = (com.sun.star.beans.PropertyState)DIRECT_VALUE }, (com.sun.star.beans.PropertyValue){ Name = (string)"Overwrite", Handle = (long)0x0, Value = (any){ (boolean)true }, State = (com.sun.star.beans.PropertyState)DIRECT_VALUE }, (com.sun.star.beans.PropertyValue){ Name = (string)"OutputStream", Handle = (long)0x0, Value = (any){ (com.sun.star.uno.XInterface)0x2695ef8{, supportedInterfaces={com.sun.star.io.XOutputStream,com.sun.star.lang.XTypeProvider}} }, State = (com.sun.star.beans.PropertyState)DIRECT_VALUE })

我该怎么办?

3 个答案:

答案 0 :(得分:2)

这似乎是Unoconv中一个不幸的错误。与此同时,我似乎找到了一个解决方法:

unoconv Test_Data.xlsx # converts to PDF by default
unoconv -f png Test_Data.pdf # *then* converts to PNG

从快速Google搜索中我可以看出,这似乎是LibreOffice或Python版本的问题。如果我的解决方法对您来说不可行,那么尝试使用版本是值得的。

答案 1 :(得分:0)

使用Ubunutu 12.x服务器时,我有点不幸。它内置了libreoffice。我试图通过开放式办公网站的debian安装程序安装openoffice。但它无法转换任何类型的文件。

所以我通过执行以下命令删除了所有内容。

sudo apt-get remove --purge libreoffice* libexttextcat-data* && sudo apt-get autoremove
sudo apt-get purge openoffice*.* && sudo apt-get autoremove
sudo apt-get remove --purge unoconv

然后添加libreoffice存储库

sudo add-apt-repository ppa:libreoffice/libreoffice-4-2
sudo apt-get update
sudo apt-get dist-upgrade

然后安装libreoffice和unoconv(apt-get版本没有执行,所以我使用了git clone)

sudo apt-get install libreoffice
git clone https://github.com/dagwieers/unoconv
cd unoconv && sudo make install

这些步骤解决了我的问题,但我仍然无法将docx或xlsx转换为图像:(。从xlsx到pdf到图像的位置正在工作。

答案 2 :(得分:0)

是。将xlsx转换为html会触发此错误。但是xlsx到pdf没有