Open In App

Convert files from jpg to png and vice versa using Python

Last Updated : 07 Sep, 2022
Improve
Improve
Like Article
Like
Save
Share
Report

Prerequisite: Pillow Library 

Sometime it is required to attach the Image where we required an image file with the specified extension. And we have the image with a different extension which needs to be converted with a specified extension like in this we will convert the image having an Extension of PNG to JPG and Vice-Versa.

And Also we will be creating the GUI interface to the Code so we will require the Library tkinter  Tkinter is a Python binding to the Tk GUI toolkit. It is the standard Python interface to the Tk GUI toolkit, and is Python’s de facto standard GUI. 

Convert files from jpg to png using Python

Python3




from PIL import Image
# Adding the GUI interface
from tkinter import *
 
# To convert the image From JPG to PNG : {Syntax}
img = Image.open("Image.jpg")
img.save("Image.png")
 
# To convert the Image From PNG to JPG
img = Image.open("Image.png")
img.save("Image.jpg")


Gui Implementation to convert file from jpg to png using Python

Approach:

  • In Function jpg_to_png we first Check whether The Selecting the image is in the same Format (.jpg) which to convert to .png if not then return Error.
  • Else Convert the image the to .png
  • To open the Image we use the Function in tkinter called the FileDialog which helps to open the image from the folder
    from tkinter import filedialog as fd
  • Same Approach for the PNG to JPG

Python3




# import all prerequisite
from tkinter import *
from tkinter import filedialog as fd
import os
from PIL import Image
from tkinter import messagebox
 
root = Tk()
 
# naming the GUI interface to image_conversion_APP
root.title("Image_Conversion_App")
 
# creating the Function which converts the jpg_to_png
def jpg_to_png():
    global im1
 
    # import the image from the folder
    import_filename = fd.askopenfilename()
    if import_filename.endswith(".jpg"):
 
        im1 = Image.open(import_filename)
 
        # after converting the image save to desired
        # location with the Extersion .png
        export_filename = fd.asksaveasfilename(defaultextension=".png")
        im1.save(export_filename)
 
        # displaying the Messaging box with the Success
        messagebox.showinfo("success ", "your Image converted to Png")
    else:
 
        # if Image select is not with the Format of .jpg
        # then display the Error
        Label_2 = Label(root, text="Error!", width=20,
                        fg="red", font=("bold", 15))
        Label_2.place(x=80, y=280)
        messagebox.showerror("Fail!!", "Something Went Wrong...")
 
 
def png_to_jpg():
    global im1
    import_filename = fd.askopenfilename()
 
    if import_filename.endswith(".png"):
        im1 = Image.open(import_filename)
        export_filename = fd.asksaveasfilename(defaultextension=".jpg")
        im1.save(export_filename)
 
        messagebox.showinfo("success ", "your Image converted to jpg ")
    else:
        Label_2 = Label(root, text="Error!", width=20,
                        fg="red", font=("bold", 15))
        Label_2.place(x=80, y=280)
 
        messagebox.showerror("Fail!!", "Something Went Wrong...")
 
 
button1 = Button(root, text="JPG_to_PNG", width=20, height=2, bg="green",
                 fg="white", font=("helvetica", 12, "bold"), command=jpg_to_png)
 
button1.place(x=120, y=120)
 
button2 = Button(root, text="PNG_to_JPEG", width=20, height=2, bg="green",
                 fg="white", font=("helvetica", 12, "bold"), command=png_to_jpg)
 
button2.place(x=120, y=220)
root.geometry("500x500+400+200")
root.mainloop()


Output:

Convert files from jpg to png

Convert files from jpg to png



Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads