使用PIL在Tkinter中加载图像需要遵循以下步骤:
- 导入必要的模块
from PIL import Image, ImageTk
import tkinter as tk
- 创建Tkinter的窗口
root = tk.Tk()
- 加载图片并创建Image对象
image = Image.open("image.jpg")
- 创建ImageTk对象
img = ImageTk.PhotoImage(image)
- 在Tkinter窗口中显示图像
label = tk.Label(root, image=img)
label.pack()
- 显示Tkinter窗口
root.mainloop()
下面是两个示例说明:
示例一:从URL加载图像
from PIL import Image, ImageTk
import tkinter as tk
import urllib.request
root = tk.Tk()
url = "https://picsum.photos/200/300"
with urllib.request.urlopen(url) as u:
raw_data = u.read()
image = Image.open(io.BytesIO(raw_data))
img = ImageTk.PhotoImage(image)
label = tk.Label(root, image=img)
label.pack()
root.mainloop()
示例二:从BytesIO对象加载图像
from PIL import Image, ImageTk
import tkinter as tk
import io
root = tk.Tk()
with open("image.jpg", 'rb') as f:
raw_data = f.read()
image = Image.open(io.BytesIO(raw_data))
img = ImageTk.PhotoImage(image)
label = tk.Label(root, image=img)
label.pack()
root.mainloop()
以上就是使用PIL在Tkinter中加载图像的完整攻略,并包含了两个示例说明。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:详解使用PIL在Tkinter中加载图像 - Python技术站