unoconv 将 .xlsx 文件导出为 png 等图像

Posted

技术标签:

【中文标题】unoconv 将 .xlsx 文件导出为 png 等图像【英文标题】:unoconv export .xlsx file into image like png 【发布时间】:2014-05-11 09:28:19 【问题描述】:

我已经在我的 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 )

我该怎么办?

【问题讨论】:

【参考方案1】:

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

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

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

【讨论】:

【参考方案2】:

我在使用 Ubunutu 12.x 服务器时有点不幸。它有内置的 libreoffice。我尝试通过 open office 站点的 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 到图像的工作正常。

【讨论】:

【参考方案3】:

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

【讨论】:

以上是关于unoconv 将 .xlsx 文件导出为 png 等图像的主要内容,如果未能解决你的问题,请参考以下文章

这个简单、易于实现的库可以将HTML表导出为xlsx、xls、csv和txt文件。

Pandas:将多个 DataFrame 导出到多个 xlsx 文件

R:如何将绘图/图形导出为 png 或 pdf 文件

将 SQL Server 表导出到 Microsoft Excel xlsx 文件

如何在较新版本的 libreoffice 中使用 unoconv

Python 批量将xls文件转换为xlsx