Python实现生成文字图片

Python实现生成文字图片

主要内容

通过Python对接接口生成图片并且展示出来

需要导入tkinter和Pillow模块

代码

import tkinter as tk
import requests
from PIL import ImageTk
import PIL.Image
import tkinter.messagebox

# 创建窗口
window = tk.Tk()
window.title("文字图片生成器")
window.geometry("400x400")

# 创建标签和编辑框
label = tk.Label(window, text="请输入要生成的文字:")
label.pack()
entry = tk.Entry(window)
entry.pack()

# 创建显示图片的标签
image_label = tk.Label(window)
image_label.pack()

# 定义生成图片的函数
def generate_image():
    title = entry.get()  # 获取编辑框中的文字
    url = "http://tool.z7h.cn/tp/tpapi.php?title=" + title  # 拼接接口地址
    response = requests.get(url)  # 发送请求
    result = response.json()  # 解析返回的JSON数据
    if result["status"] == "success":
        image_url = result["url"]  # 获取生成的图片地址
        image = PIL.Image.open(requests.get(image_url, stream=True).raw)  # 下载图片
        image = image.resize((400, 200))  # 调整图片大小
        photo = ImageTk.PhotoImage(image)  # 创建图片对象
        image_label.configure(image=photo)  # 显示图片
        image_label.image = photo  # 保存图片对象,避免被垃圾回收器回收
    else:
        tk.messagebox.showerror("错误", "生成图片失败!")
# 定义保存图片的函数
def save_image():
    title = entry.get()  # 获取编辑框中的文字
    url = "http://tool.z7h.cn/tp/tpapi.php?title=" + title  # 拼接接口地址
    response = requests.get(url)  # 发送请求
    result = response.json()  # 解析返回的JSON数据
    if result["status"] == "success":
        image_url = result["url"]  # 获取生成的图片地址
        image = PIL.Image.open(requests.get(image_url, stream=True).raw)  # 下载图片
        image = image.resize((400, 200))  # 调整图片大小
        filename = title + ".png"  # 生成文件名
        image.save(filename)  # 保存图片
        tk.messagebox.showinfo("提示", "图片保存成功在根目录!")
    else:
        tk.messagebox.showerror("错误", "请先生成图片!")

# 创建保存图片的按钮
save_button = tk.Button(window, text="保存图片", command=save_image)
save_button.pack()

# 创建按钮
button = tk.Button(window, text="生成图片", command=generate_image)
button.pack()

# 运行窗口
window.mainloop()

运行效果

图片

 

© 版权声明
THE END
喜欢就支持一下吧
点赞14赞赏 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容