Попробуйте
print(type(self.img), type(self.thumbNail_img))
и вы видите
<class 'PIL.JpegImagePlugin.JpegImageFile'> <class 'NoneType'>
Это означает, что self.img
равно Image
, но self.thumbNail_img
равно None
thumbnail()
не создает новое изображение. Он изменяет исходное изображение в self.img
и возвращает None
.
Работает "in-place"
. Документ: Изображение. Эскиз
Таким образом, вы должны использовать self.img
, чтобы отобразить его
self.img = Image.open(self.filename)
self.img.thumbnail((512, 512))
self.photo = ImageTk.PhotoImage(self.img)
Если вам нужно оригинальное изображение, тогда вы можете .copy()
it
self.img = Image.open(self.filename)
self.thumbNail_img = self.img.copy()
self.thumbNail_img.thumbnail((512, 512))
self.photo = ImageTk.PhotoImage(self.thumbNail_img)