首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Tkinter/ImageTk 'AttributeError‘在显示png图像时

Tkinter/ImageTk 'AttributeError‘在显示png图像时
EN

Stack Overflow用户
提问于 2013-12-04 20:13:37
回答 1查看 596关注 0票数 0

我正在尝试使用PNG图像在Tkinter小部件中,借助来自PIL库的ImageTk模块。

代码语言:javascript
复制
image = Image.open(os.path.join('icons','bulb.png')) # using PIL for png images
        self.correctGuessImage = ImageTk.PhotoImage(image)

虽然在Windows7x64下工作很好,但它在Linux x64上却无法工作。在运行相同的文件时,我会得到这个错误。

代码语言:javascript
复制
  File "/home/user/Documents/temp.py", line 222, in drawButtons
    self.correctGuessImage = ImageTk.PhotoImage(image)
  File "/usr/lib/python2.7/dist-packages/PIL/ImageTk.py", line 121, in __init__
    self.paste(image)
  File "/usr/lib/python2.7/dist-packages/PIL/ImageTk.py", line 171, in paste
    im.load()
  File "/usr/lib/python2.7/dist-packages/PIL/ImageFile.py", line 192, in load
    d = Image._getdecoder(self.mode, d, a, self.decoderconfig)
AttributeError: 'module' object has no attribute '_getdecoder'

我安装了所有我能找到的'python','png‘和'tk’从代表,但没有效果。有什么想法吗?为什么会发生这种情况,以及如何解决?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-12-07 14:17:36

我设法解决了这个奇怪的问题。如果您正在使用Linux,您将安装来自代表的枕头,不要!首先,确保您有tk8.5-devtcl8.5-dev软件包,并通过PIP安装枕头。

代码语言:javascript
复制
$ sudo pip install pillow

PIP应在您的机器上安装有tk和tcl开发包的枕头,这将解决上述问题。确保您没有实际的PIL库python-imaging-compat,因为Pillow和PIL是不兼容的。我觉得这很令人沮丧,因为惠普打印机的用户不会很高兴不能使用hplip (依赖python成像-compat)。

我在此页上找到了这个建议。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20384969

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档