চিত্রগুলির সাথে কাজ করার জন্য, পাইথন লাইব্রেরি পিলো বা পিআইএল প্যাকেজ সরবরাহ করে যা অ্যাপ্লিকেশনগুলিকে ছবি আমদানি করতে এবং সেগুলিতে বিভিন্ন ক্রিয়াকলাপ সম্পাদন করতে সক্ষম করে৷
ধরুন আমরা একটি ইমেজকে তার উইন্ডোতে গতিশীলভাবে রিসাইজ করতে চাই। এই ধরনের ক্ষেত্রে, আমাদের এই পদক্ষেপগুলি অনুসরণ করতে হবে -
-
Tkinter অ্যাপ্লিকেশনে চিত্রটি খুলুন।
-
একটি ক্যানভাস উইজেট তৈরি করুন এবং create_image(**বিকল্প) ব্যবহার করুন লোড করা ছবি ক্যানভাসে রাখতে।
-
লোড করা চিত্রের আকার পরিবর্তন করতে একটি ফাংশন সংজ্ঞায়িত করুন।
-
প্যারেন্ট উইন্ডো কনফিগারেশনের সাথে ফাংশনটি আবদ্ধ করুন।
উদাহরণ
# Import the required libraries from tkinter import * from PIL import ImageTk, Image # Create an instance of Tkinter Frame win = Tk() # Set the geometry of Tkinter Frame win.geometry("700x450") # Open the Image File bg = ImageTk.PhotoImage(file="tutorialspoint.png") # Create a Canvas canvas = Canvas(win, width=700, height=3500) canvas.pack(fill=BOTH, expand=True) # Add Image inside the Canvas canvas.create_image(0, 0, image=bg, anchor='nw') # Function to resize the window def resize_image(e): global image, resized, image2 # open image to resize it image = Image.open("tutorialspoint.png") # resize the image with width and height of root resized = image.resize((e.width, e.height), Image.ANTIALIAS) image2 = ImageTk.PhotoImage(resized) canvas.create_image(0, 0, image=image2, anchor='nw') # Bind the function to configure the parent window win.bind("<Configure>", resize_image) win.mainloop()কনফিগার করতে ফাংশনটি বাঁধুন
আউটপুট
উপরের কোডটি চালানোর ফলে একটি চিত্র সম্বলিত একটি উইন্ডো প্রদর্শিত হবে যা গতিশীলভাবে পুনরায় আকার দেওয়া যেতে পারে৷