python tk 在图片上添加文字
时间: 2023-08-05 19:09:55 浏览: 131
要在Tkinter窗口中的图片上添加文字,可以使用Python的Pillow库和Tkinter库。以下是一个示例代码:
```python
from PIL import Image, ImageDraw, ImageFont
import tkinter as tk
from tkinter import filedialog
def add_text(image, text):
# 创建一个Draw对象
draw = ImageDraw.Draw(image)
# 设置字体
font = ImageFont.truetype("arial.ttf", 36)
# 添加文字
draw.text((50, 50), text, font=font, fill=(255, 255, 255))
def open_image():
# 打开文件选择框
filename = filedialog.askopenfilename()
# 打开图片
image = Image.open(filename)
# 在图片上添加文字
add_text(image, "Hello, World!")
# 显示图片
tkimage = ImageTk.PhotoImage(image)
label.config(image=tkimage)
label.image = tkimage
# 创建主窗口
root = tk.Tk()
# 创建标签用来显示图片
label = tk.Label(root)
label.pack()
# 创建按钮用来打开图片
button = tk.Button(root, text="Open Image", command=open_image)
button.pack()
# 进入主循环
root.mainloop()
```
这个示例代码使用了Tkinter的filedialog模块来打开文件选择框,让用户选择要处理的图片。处理图片的代码与之前的示例相同,只是在添加文字后,将图片显示在Tkinter窗口中。需要注意的是,在Tkinter窗口中显示图片需要使用ImageTk库中的PhotoImage类。最后,通过创建一个按钮来触发打开图片的操作。
阅读全文