首页 > 解决方案 > 如何使用 PIL 模块调整 Tkinter 中的图像大小

问题描述

我得到了这个代码,我得到了这个错误:AttributeError:'PhotoImage'对象没有属性'resize'我也试过了rgrapg = Image.open("risinggrap.jpg"),我得到了这个错误:_tkinter.TclError:图像“”不存在

   rgraph = ImageTk.PhotoImage(Image.open("risinggrap.jpg"))
   rgraph = rgraph.resize((200,250),Image.ANTIALIAS)
   photoLabe = Label(x, image=rgraph)```


标签: pythonuser-interfacetkinterpython-imaging-library

解决方案


您需要先加载图像,调整大小,然后将其转换为ImageTk.PhotoImage. 这是一个工作示例,如下所示:

import tkinter as tk
from PIL import Image, ImageTk

x = tk.Tk()

# 1. load image
image = Image.open("risinggrap.jpg")

# 2. resize it
image = image.resize((200, 250), Image.ANTIALIAS)

# 3. cast it into ImageTk.PhotoImage
rgraph = ImageTk.PhotoImage(image)

photoLabel = tk.Label(x, image = rgraph)
photoLabel.pack(side = "bottom", fill = "both", expand = "yes")
x.mainloop()

推荐阅读