python emf转gif_将EMF/WMF文件转换为PNG/JPG-程序员宅基地

技术标签: python emf转gif  

我收到一份带有Word docx文档的表格上传。我成功地完成了所有的解析。然后我必须在网上显示那个Word文档。

我现在遇到的问题是,我已经嵌入了EMF文件(PIL库将其识别为WMF格式),我不知道如何将它们转换为可以在web上显示的文件(任意选择的PNG)。

代码有点简单:im = PIL.Image.open(StringIO.StringIO(data))

fmt = im.format

if (fmt == 'WMF'):

fmt = 'PNG'

output = StringIO.StringIO()

im.save(output, format=fmt)

data = output.getvalue()

output.close()

return ''''''.format(fmt, base64.encodestring(data))

我得到的错误是:IOError: cannot find loader for this WMF file

这些Word文档来自普通用户,他们可能只是从web上剪切粘贴图像或从文件中插入图像。

在linux系统上有我的解决方案吗?

谢谢。

编辑:

为我辩护,我试着把那个文件上传到google drive,图片也不显示。也许没有简单的解决办法?

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_39999536/article/details/110703654

智能推荐

软件工程学习总结-程序员宅基地

文章浏览阅读501次。软件工程学习总结罗书仁 原创作品转载请注明出处 《软件工程(C编码实践篇)》MOOC课程: http://mooc.study.163.com/course/USTC-1000002006 实验报告链接 实验一实验报告 实验二实验报告 实验三实验报告 实验四实验报告 实验五实验报告 实验七实验报告 对软件工程的理解 这里只对软件工程做一个概括

项目外包 - 需求结算_外包软件项目尾款怎么算-程序员宅基地

文章浏览阅读863次。目录一、概述二、项目损失三、PM心声四、个人赠语一、概述新功能/项目甲方不停要求加需求,做变更。于是PM和需求人员不停做调研、评估、设计,代码不停的被改、改、改。想必每个PM都有过类似经历。可是,认真想想,这么做,绝对是弊大于利。于是乎,我就认真简单的算啦一笔账。以我所在的某国企为例,每次结算是以季度为单位进行的。错过本次结算,就要等到下季度,眨眼就是最少三个月的..._外包软件项目尾款怎么算

ECHARTS全解注释_为什么echarts注释掉还能运行啊-程序员宅基地

文章浏览阅读295次。ECHARTS全解注释https://www.cnblogs.com/zhenguo-chen/p/10424818.html_为什么echarts注释掉还能运行啊

蜜罐网络(开源汇总)MHN-程序员宅基地

文章浏览阅读1.3w次,点赞4次,收藏40次。蜜罐是存在漏洞的,暴露在外网或者内网的一个虚假的机器,具有以下这些特征:1.其中重要的一点机器是虚假的,攻击者需要花费时间攻破。在这段时间内,系统管理员能够锁定攻击者同时保护真正的机器。2.能够学习攻击者针对该服务的攻击技巧和利用代码。3.一些蜜罐能够捕获恶意软件,利用代码等等,能够捕获攻击者的0day,同时可以帮助逆向工程师通过分析捕获的恶意软件来提高自身系统的安全性4.在内网中部署的蜜罐可以帮助你发现内网中其他机器可能存在的漏洞。_mhn

Chinese word embedding 论文_component enhanced chinese character-程序员宅基地

文章浏览阅读468次。1.Component-Enhanced Chinese Character Embeddingshttp://yanran.li/files/emnlp2015comp.pdf点击打开链接_component enhanced chinese character

在CentOS6和CentOS7安装epel仓库-最简单的方法_cenos7 eol-程序员宅基地

文章浏览阅读2.9k次。1 安装epel仓库:在CentOS6和CentOS7都可以执行下面的命令安装epel仓库yum -y install epel-release这条命令的好处是可以自动安装不同版本的epel,比如在CentOS6上面安装的就是epel6,在CentOS7上面安装的就是epel7。2 移除epel仓库:在CentOS6和CentOS7都可以执行下面的命令移除epel仓库yum -y re..._cenos7 eol

随便推点

STM32学习之:定时器中断_stm32 break中断-程序员宅基地

文章浏览阅读2.9k次。定时器中断  STM32 的定时器功能十分强大,有 TIME1 和 TIME8 等高级定时器,也有 TIME2~TIME5 等通用定时器,还有 TIME6 和TIME7 等基本定时器。在本章中,我们将利用 TIM3 的定时器中断来控制 DS1 的翻转,在主函数用 DS0 的翻转来提示程序正在运行。选择难度适中的通用定时器来介绍。1、 STM32 通用定时器简介 _stm32 break中断

日常技巧(命令删除)_在命令行操作中,删除规格应使用哪个组件?-程序员宅基地

文章浏览阅读176次。打开要删除的目录 cmd 然后输入下面命令RD /S XXX需要删除的文件或文件夹名_在命令行操作中,删除规格应使用哪个组件?

es6数组初始化_es6常用数组操作及技巧汇总-程序员宅基地

文章浏览阅读291次。定义数组const array = [1, 2, 3];// 或者const array = new Array();array[0] = '1';检测数组Array.isArray([]); // trueArray.isArray(undefined); // false;或者array instanceof Array; // true 检测对象的原型链是否指向构造函数的prototype..._es6 初始化数组 of

pytorch torch-sparse安装教程_torchparse-程序员宅基地

文章浏览阅读3k次,点赞2次,收藏8次。今天记录一下困扰了好几天得问题,怎么样都安装不了torch-sparse,尝试了多种问题,没有对应得dev之类得问题,多亏一位老哥的解决方法。解决方法:pytorch 各个库和库之间相互依赖!版本要对应起来!比如我的pytorch版本为1.6.0pip install torch==1.6.0pip install torch_geometric==1.6.1pip install torch_sparse==0.6.7pip install torch_scatter==2.0.._torchparse

CentOS6安装devtoolset(使用高版本gcc)GCC 4.8 GCC 4.9 GCC 5.2_yum install devtoolset-2-gcc devtoolset-2-binutils-程序员宅基地

文章浏览阅读490次。CentOS6安装devtoolset(使用高版本gcc)GCC 4.8 GCC 4.9 GCC 5.2GCC 4.8wget http://people.centos.org/tru/devtools-2/devtools-2.repo -O /etc/yum.repos.d/devtools-2.repoyum install devtoolset-2-gcc devtoolset-2-binutils devtoolset-2-gcc-c++ -y临时编译前使用expor.._yum install devtoolset-2-gcc devtoolset-2-binutils

Jenkins自动发布php项目 -- jenkins宿主机为windows系统_jenkins 同步php windows-程序员宅基地

文章浏览阅读252次。写在前面:php项目用gitlab管理。jenkins所在的服务器系统是windows(和在linux下其实配置相同,只不过所用的命令相应使用dos或者shell),需要部署项目的服务器是linux(即php项目运行的服务器),模拟定时检查gitlab上的代码是否有变动,如果有,则构建项目。(但因为我们真实的项目代码是不常变动的,所以手动【Build Now】即可。此文章仅做模拟。)因为jenkins版本不同,所以下载下来之后,可能文章中用到的选项配置(插件),本地没有,所以如果出现任何_jenkins 同步php windows

推荐文章

热门文章

相关标签