[英]I Cant get an image to be resized and displayed using tkinter
因此,我试图制作一个将显示图像的应用程序,并且我拥有的图像为1000 * 1000,但这太大了,我需要一种调整图像大小的方法。 我已经尝试使用PIL和ImageTK,但是没有用,到目前为止,这是我的代码:
from tkinter import *
app = Tk()
app.title('embeded image')
fname = Canvas(bg = 'black', height=100, width=100)
fname.pack(side=TOP)
image = PhotoImage('Sun.png')
image = image.resize((25, 25), Image.ANTIALIAS)
icon = fname.create_image(image=image)
fname.pack()
app.mainloop()
我不知道为什么这行不通,对Tkinter来说还比较陌生,所以很抱歉。
你混合两种不同的充类PhotoImage
在tkinter
不具备resize
和PIL.Image
具有resize
import tkinter as tk
from PIL import Image, ImageTk
app = tk.Tk()
fname = tk.Canvas(height=200, width=200)
fname.pack()
pil_image = Image.open('Sun.png')
pil_image = pil_image.resize((25, 25), Image.ANTIALIAS)
image = ImageTk.PhotoImage(pil_image)
icon = fname.create_image((0,0), image=image, anchor='nw')
app.mainloop()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.