python-3.x - 调整图像大小时出现 Tkinter 错误
问题描述
我制作了这段代码,在调整大小后显示图像
import tkinter as tk
from PIL import Image, ImageTk
def resize(picname, ratio):
image = Image.open(picname)
image = image.resize((int(image.size[0]*ratio), int(image.size[1]*ratio)), Image.ANTIALIAS)
image = ImageTk.PhotoImage(image)
return image
swidth, sheight = 1366, 900
root = tk.Tk()
root.geometry(str(swidth)+'x'+str(sheight)+'+0+0')
cv = tk.Canvas(root, width = swidth, height = sheight)
cv.pack()
tempimage = resize('man.gif', 1.5)
imaj = cv.create_image(0, 0, image = tempimage, tag ='man')
while True:
cv.coords('man', 500, 500)
print(cv.coords(imaj))
cv.update()
tk.mainloop()
但是这段代码不显示图片即使我检查输出我得到 [500.0, 500.0]
此代码无需“调整大小”即可工作,知道为什么吗?
编辑:
我从这个链接中得到了调整大小的代码,来自 Joshkunz 的回答。当我有一个图像对象时,此代码有效。但由于某种原因,当我有多个时不是这样。有人可以解释一下吗!
解决方案
推荐阅读
- amazon-ecs - ECS TaskDefinition 创建失败并出现错误“Invalid containerPort”
- javascript - PostgreSQL + Sequelize + array_append 出错
- python - 运行时警告:执行逻辑回归时在日志中遇到除以零
- python - 带有opengl的Tkinter框架
- arrays - Google BigQuery:数组中元素的位置
- c# - 如何为单选按钮分配一个 id 并在 Xamarin Forms 后面的代码中访问它,以便不检查两个单选按钮
- google-cloud-platform - 如何在java中将文件从存储桶传输到远程服务器
- java - java中文件处理的误区
- python - 连接具有相同行数但不同列的数组
- python - Python ValueError:无法在位置 0 解析字符串“-1,000,000.00”