PIL加载jpg

时间:2012-11-06 14:56:34

标签: python tkinter python-imaging-library

我正在使用PIL加载jpg文件并将其显示在标签小部件中。起初,我从python中得到了“解码错误”并在堆栈溢出时发现了这篇文章 - How can I install PIL on mac os x 10.7.2 Lion - 它解决了解码错误。但是,标签不显示任何图像,只显示白色区域。这是加载图像的代码 -

    script, file = argv 
    self.orgimg = Image.open(file)

    #Original Image
    img = ImageTk.PhotoImage(self.orgimg)
    Label(self.root, image=img).grid(row=0,column=0,padx=5,pady=5)

2 个答案:

答案 0 :(得分:1)

我感觉图像已经被垃圾收集了。看看这个:http://effbot.org/pyfaq/why-do-my-tkinter-images-not-appear.htm

如果将图像存储在局部变量中,则在函数返回时将对其进行垃圾收集。

答案 1 :(得分:0)

也许你应该打电话:

self.orgimg.load()

实际加载位图信息。

根据这个site,还有一个警告,它类似于你的问题。