How to Make Tkinter Canvas Transparent
Question: In my program, I am trying to overlay different canvas geometries on top of an
image. However, my problem is that the canvas itself has a color that blocks
most of the image. How can I make this canvas transparent, so that only the
geometries that I draw are visible? Here is my code in case my explanation did
not suffice.

    
    
    #!/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](http://i.stack.imgur.com/W5VPu.png)](http://i.stack.imgur.com/W5VPu.png)


Answer: As I know you can make canvas transparent.

But you can draw image directly on canvas:
[canvas.create_images()](http://effbot.org/tkinterbook/canvas.htm#Tkinter.Canvas.create_image-
method)

