我在Tkinter中放入了部分透明的PNG图像,我得到的就是这个
alt text http://i26.tinypic.com/aelh82.jpg
如何使右侧的黑色三角形清晰? (就像它应该的那样)
这是Windows 7上的python 2.6,顺便说一句。
答案 0 :(得分:17)
这是一个例子(PNG文件example.png在不同的地方有很多透明度):
from Tkinter import Tk, Frame, Canvas import ImageTk t = Tk() t.title("Transparency") frame = Frame(t) frame.pack() canvas = Canvas(frame, bg="black", width=500, height=500) canvas.pack() photoimage = ImageTk.PhotoImage(file="example.png") canvas.create_image(150, 150, image=photoimage) t.mainloop()
您需要确保图像已存储为带有Alpha通道的RGBA - RGB。您可以使用您选择的图形程序或使用PIL(Python Imaging Library)来检查:
import Image im = Image.open("button.png") print im.mode
这应该打印“RGBA”。如果没有,您必须确保Alpha通道与图像一起保存。您必须查阅图形程序手册以了解如何操作。