import tkinter as tk

from tkinter import filedialog, messagebox

from PIL import Image

import pillow_heif

import os

pillow_heif.register_heif_opener()

def convert_images():

files = filedialog.askopenfilenames(filetypes=[("HEIC Files", "*.heic")])

if not files:

return

output_dir = filedialog.askdirectory()

if not output_dir:

return

count = 0

for file in files:

try:

img = Image.open(file)

name = os.path.splitext(os.path.basename(file))[0] + ".jpg"

save_path = os.path.join(output_dir, name)

img.convert("RGB").save(save_path, "JPEG", quality=95)

count += 1

except:

pass

messagebox.showinfo("Done", f"{count} عکس تبدیل شد")

# GUI

root = tk.Tk()

root.title("HEIC to JPG Converter")

root.geometry("300x150")

btn = tk.Button(root, text="انتخاب و تبدیل عکس‌ها", command=convert_images)

btn.pack(expand=True)

root.mainloop()