📌  相关文章
📜  如何在 python tkinter 中调整图像大小 - Python (1)

📅  最后修改于: 2023-12-03 14:52:29.820000             🧑  作者: Mango

如何在 Python Tkinter 中调整图像大小

当在 Python Tkinter 中显示图像时,很可能需要调整图像的大小以适应窗口或框架的大小。本文将介绍如何在 Python Tkinter 中调整图像大小。

方法一:使用 PIL 库

使用 Python Imaging Library (PIL) 可以很容易地调整图像的大小。以下是一个简单的例子:

from PIL import Image, ImageTk
import tkinter as tk

root = tk.Tk()
root.geometry('300x300')

img = Image.open('example.png')
resized_img = img.resize((100, 100))
photo = ImageTk.PhotoImage(resized_img)

label = tk.Label(root, image=photo)
label.pack()

root.mainloop()

在这个例子中,我们首先导入 PIL 库,并使用 Image.open() 方法打开一个名为 example.png 的图像文件。然后,我们调用 resize() 方法将图像大小调整为100x100。接下来,我们使用 ImageTk.PhotoImage() 方法将调整后的图像转换为 PhotoImage 对象。最后,我们创建一个标签,并使用 image 参数设置标签的图像为 PhotoImage 对象。最终,我们将标签添加到窗口中,并使用 pack() 方法显示它。

方法二:使用 Tkinter 库

如果您不想使用 PIL 库,也可以使用 Tkinter 库的 subsample() 方法调整图像大小。以下是一个例子:

import tkinter as tk
from tkinter import PhotoImage

root = tk.Tk()
root.geometry('300x300')

photo = PhotoImage(file='example.png')
resized_photo = photo.subsample(3)

label = tk.Label(root, image=resized_photo)
label.pack()

root.mainloop()

在这个例子中,我们使用 tkinter.PhotoImage() 方法将名为 example.png 的图像文件转换为 PhotoImage 对象。然后,我们调用 subsample() 方法将图像大小缩小为原来的1/3。最后,我们创建一个标签,并使用 image 参数设置标签的图像为调整大小后的 PhotoImage 对象。最终,我们将标签添加到窗口中,并使用 pack() 方法显示它。

无论您使用哪种方法,都可以轻松地调整图像大小以适应窗口或框架的大小。

结论

本文介绍了在 Python Tkinter 中调整图像大小的两种方法:使用 PIL 库和使用 Tkinter 库。这两种方法都非常简单,并且可以轻松地将图像大小调整为所需的大小。