Вот что я делаю, и это работает довольно хорошо ...
image = Image.open(Image_Location)
image = image.resize((250, 250), Image.ANTIALIAS) ## The (250, 250) is (height, width)
self.pw.pic = ImageTk.PhotoImage(image)
Вот и все:)
РЕДАКТИРОВАТЬ:
Вот мое утверждение импорта:
from Tkinter import *
import tkFont
from PIL import Image
А вот полный рабочий код, из которого я адаптировал этот пример:
im_temp = Image.open(Image_Location)
im_temp = im_temp.resize((250, 250), Image.ANTIALIAS)
im_temp.save("ArtWrk.ppm", "ppm") ## The only reason I included this was to convert
## The image into a format that Tkinter woulden't complain about
self.photo = PhotoImage(file="ArtWrk.ppm") ## Open the image as a tkinter.PhotoImage class()
self.Artwork.destroy() ## Erase the last drawn picture (in the program the picture I used was changing)
self.Artwork = Label(self.frame, image=self.photo) ## Sets the image too the label
self.Artwork.photo = self.photo ## Make the image actually display (If I don't include this it won't display an image)
self.Artwork.pack() ## Repack the image
А вот документы класса PhotoImage: http://www.pythonware.com/library/tkinter/introduction/photoimage.htm
Примечание ..После проверки документации по pythonware для класса PhotoTmage ImageTK (что очень мало), я обнаружил, что если ваш фрагмент работает, то это должно произойти так же, как и при импорте библиотеки PIL "Image" и библиотеки PIL "ImageTK" и того и другого PILи tkinter актуальны.С другой стороны, я даже не могу найти жизнь модуля «ImageTK» для моей жизни.Не могли бы вы опубликовать свой импорт?