在Tkinter中调整图像大小(Python 3.10)



我搜索了又搜索,但就是找不到问题的正确答案,所以我希望在这里找到一些帮助。

我试图在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)

请注意,图像实际上已调整大小。

相关内容

  • 没有找到相关文章

最新更新