python - 如何使用 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)```
解决方案
您需要先加载图像,调整大小,然后将其转换为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()
推荐阅读
- sql-server - 大型数据库迁移 120GB,MS SQL 降级
- vb.net - VB.Net 中的 Imageresizer 和 PrettyGifs 插件
- python - 任意度数的 Numpy 矩阵旋转
- java - Clojure:是否可以继承使用 :gen-class 定义的类的状态?
- c# - 带有 C# 批量数据导入游标的 MySQL 与存储过程引发错误超时已过期。
- linux - Bash shell - 如何从“echo >”获取返回值
- java - AWS S3 listFiles - 我如何获取目录路径?
- azure-ad-b2c - MSAL acquireTokenSilent 后跟 acquireTokenPopup 在弹出窗口中导致错误请求
- tfs - Nuget 构建触发器
- javascript - DevExtreme datagrid 在按钮单击时返回单元格值