2016-01-24 82 views
0

在我的程序中,我試圖在圖像上疊加不同的帆布幾何圖形。但是,我的問題是,畫布本身具有阻擋大部分圖像的顏色。我怎樣才能使這個畫布透明,以便只有我繪製的幾何圖形可見?這是我的代碼,以防我的解釋不夠。如何使Tkinter帆布透明

#!/usr/bin/python 
import tkinter 
from tkinter import * 
from PIL import Image, ImageTk 

root = Tk() 
root.title("Infrared Camera Interface") 
root.resizable(width=FALSE, height=FALSE) 



class MyApp: 
    def __init__(self, parent): 


    #Set the dimensions of the window 
    parent.minsize(width=600, height=600) 
    parent.maxsize(width=600, height=600) 


    #Prepare the image object being loaded into the stream camera 
    self.imgName = 'Dish.png' 
    self.img = Image.open(self.imgName) 
    self.img = self.img.resize((560, 450), Image.ANTIALIAS)  

    #Display the image onto the stream 
    self.displayimg = ImageTk.PhotoImage(self.img) 
    self.imglabel = Label(root, image=self.displayimg).place(x=0, y= 0) 


    self.C = tkinter.Canvas(root, bg="white", height=560, width=450) 

    coord = 10, 50, 240, 210 
    arc = self.C.create_arc(coord, start=0, extent=150, fill="red") 

    self.C.pack() 

myapp = MyApp(root) 
root.mainloop() 

enter image description here

+0

,因爲我知道你可以的畫布是透明的。但我不明白'帆布......阻擋了大部分圖像'。你想做什麼?你能指望什麼 ? – furas

+0

嗨,我上傳了當前程序的圖片。正如你所看到的,畫布的白色覆蓋了大部分圖像。我只想要上面顯示的紅色幾何圖形。 – user1939991

+0

現在我看到:您使用標籤來保持圖像和畫布添加對象。將圖像放在畫布上'canvas.create_image()' – furas

回答