使用 Tkinter 显示 PNG 下的文本 Python

Text under PNG display using Tkinter Python

我正在研究 tkinter,我想做的是在文本上显示一个取消符号 (PNG),它将在 PNG 背景中显示价格。

到目前为止,我能够使用 tkinter.label() 的 "compound" 选项在图像上正确显示文本。 但是我已经尝试了不同的方法来将 PNG 放在文本之上,但到目前为止我还没有成功。

我想做的事情完全可行吗?如果是,请指导,如果不是,请建议我解决方法。我可以使用可用功能做的最接近的是什么。 我什至尝试使用 canvas.draw() 制作取消标志,但这也隐藏了文本。

请帮帮我

此致

在 tkinter 中的文本顶部显示部分透明的 PNG 的最佳解决方案可能是将 Canvascreate_text()create_image() 方法一起使用。

示例代码(Python2.x):

import Tkinter as tk
from PIL import ImageTk
from io import BytesIO
from urllib import urlopen

root = tk.Tk()
canvas = tk.Canvas(root, width=300, height=300)
canvas.pack()

canvas.create_text(150, 150, text="word word word word word word word word")
url = "https://www.dropbox.com/s/etqan5h62d14mv8/Pikachu-PNG-Photos.png?dl=1"
img = ImageTk.PhotoImage(file=BytesIO(urlopen(url).read()))
canvas.create_image(150, 150, image=img)

root.mainloop()

对于 Python 3.x,在导入语句中使用以下内容:

import tkinter as tk
from urllib.request import urlopen

你应该得到这个: