Canvas विजेट Tkinter लाइब्रेरी में मल्टीलेटरल विजेट में से एक है जिसका उपयोग किसी भी एप्लिकेशन के लिए ग्राफिक्स प्रदान करने के लिए किया जाता है। इसका उपयोग आकृतियाँ बनाने, इमेज, एनिमेटिंग ऑब्जेक्ट्स या किसी भी जटिल विजुअल्स बनाने के लिए किया जा सकता है। आकृति का alpha गुण यह परिभाषित करता है कि यदि हम किसी आकृति को alpha मान देते हैं, तो इसका अपने पैरेंट विंडो के संबंध में कुछ पारदर्शिता व्यवहार होना चाहिए।
अल्फा गुण को परिभाषित करने के लिए, हमें यह मान लेना होगा कि प्रत्येक आकृति में कुछ रंग होते हैं और जब भी हम किसी आकृति को अल्फा मान प्रदान करते हैं, तो इसे एक इमेज में बदलना होगा। इमेज को Canvas विजेट का उपयोग करके प्रदर्शित किया जा सकता है।
उदाहरण
# आवश्यक लाइब्रेरी इम्पोर्ट करें
from tkinter import *
from PIL import Image, ImageTk
# Tkinter फ्रेम का इंस्टेंस बनाएं
win = Tk()
# Tkinter विंडो का आकार सेट करें
win.geometry("700x350")
# नई बनी इमेज स्टोर करें
images = []
# पारदर्शी आयत बनाने के लिए फंक्शन परिभाषित करें
def create_rectangle(x, y, a, b, **options):
if 'alpha' in options:
# प्रत्येक कलर (RGB) के लिए अल्फा पारदर्शिता की गणना करें
alpha = int(options.pop('alpha') * 255)
# आकृति को पारदर्शी कलर से भरने के लिए फिल वेरिएबल का उपयोग करें
fill = options.pop('fill')
fill = win.winfo_rgb(fill) + (alpha,)
image = Image.new('RGBA', (a - x, b - y), fill)
images.append(ImageTk.PhotoImage(image))
canvas.create_image(x, y, image=images[-1], anchor='nw')
canvas.create_rectangle(x, y, a, b, **options)
# Canvas विजेट जोड़ें
canvas = Canvas(win)
# Canvas में आयत बनाएं
create_rectangle(50, 110, 300, 280, fill="blue", alpha=.3)
create_rectangle(60, 90, 310, 250, fill="red", alpha=.3)
canvas.pack()
win.mainloop()