我搜索了又搜索,但就是找不到问题的正确答案,所以我希望在这里找到一些帮助。
我试图在PIL的帮助下在Tkinter中集成一个图像但是它不能正确地调整图像的大小。
from tkinter import *
import PIL.ImageTk
from PIL import Image
window = Tk()
window.title('Title')
window.config(padx=100, pady=100, bg=GREEN)
canvas = Canvas(width=300, height=200, bg=GREEN, highlightthickness=0)
size = (50, 150)
image = Image.open('lock.png')
image = image.resize(size)
pic = PIL.ImageTk.PhotoImage(image)
canvas.create_image(180, 250, image=pic)
canvas.grid(column=1, row=1)
window.mainloop()
它看起来像
我想把照片放在中间,比实际尺寸小一些。但它被剪切而没有调整大小。
请帮忙提前感谢!
画布大小为300x200,但您将图像的中心设置为(180250(。因此,只显示了图像顶部的一部分,这就是图像被裁剪的原因。
如果希望图像位于画布的中心,则需要将其放置在(150100(处。
canvas.create_image(150, 100, image=pic)
请注意,图像实际上已调整大小。