在Python中把.PNG转换成.GIF
Python 支持将一种文件格式转换为另一种的子系统。这篇文章讨论了这个话题,并描述了如何将一个png文件转换为其gif格式,反之亦然。为了将一种文件格式转换为另一种文件格式,采用了PIL。
所给的例子使用了一个GUI界面的代码,所以我们将需要Tkinter。它是一个与Tk GUI工具包的Python绑定。它是Tk GUI工具包的标准Python接口,为GUI应用程序提供接口。
步骤
- Import modules
- 创建一个正常的窗口
- 添加按钮以选择是否将png转换为gif或反之亦然
- Open file
- 检查所提供的文件的格式是否正确
- 转换为其各自的等价物
- Save image
- Execute code
代码:
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 gif_to_png():
global im
import_filename = fd.askopenfilename()
if import_filename.endswith(".gif"):
im = Image.open(import_filename)
export_filename = fd.asksaveasfilename(defaultextension=".png")
im.save(export_filename)
messagebox.showinfo("Success", "File converted to .png")
else:
messagebox.showerror("Fail!!", "Error Interrupted!!!! Check Again")
def png_to_gif():
import_filename = fd.askopenfilename()
if import_filename.endswith(".png"):
im = Image.open(import_filename)
export_filename = fd.asksaveasfilename(defaultextension=".gif")
im.save(export_filename)
messagebox.showinfo("Success", "File converted to .gif")
else:
messagebox.showerror("Fail!!", "Error Interrupted!!!! Check Again")
button1 = Button(root, text="GIF_to_PNG", width=20, height=2, bg="green",
fg="white", font=("helvetica", 12, "bold"), command=gif_to_png)
button1.place(x=120, y=120)
button2 = Button(root, text="PNG_to_GIF", width=20, height=2, bg="green",
fg="white", font=("helvetica", 12, "bold"), command=png_to_gif)
button2.place(x=120, y=220)
root.geometry("500x500+400+200")
root.mainloop()
输出: