2017-09-22 2 views
2

Ich möchte Png-Bild zu GIF-Bild mit Python3.6 ändern, wie kann ich das tun? Ich mache ein GUI-Programm mit tkinter und i haver png zu GIF-Bild zu ändern, damit ich auf meinem Programm anzeigen kann bittewie kann ich png bild zu gif bild machen?

tk = Tk() 
tk.configure(bg = 'white') 

tk.title("SearchKeyWord V2.0") 

canvas = Canvas(tk,width = 880, height = 550,bd = 0,highlightthickness = 0) 

canvas.pack() 
txt = Entry(tk) 
txt.place(relx = .9,rely = .3,anchor = "c") 
LOGO = PhotoImage(file = 'SKW-LOGO.gif') 
button_1 = PhotoImage(file = 'button.gif') 
button_2 = PhotoImage(file = 'button_news_1d.gif') 
button_3 = PhotoImage(file = 'button_news_1w.gif') 




button = tkinter.Button(tk,image = button_1,command = search) 
button_news_1d = tkinter.Button(tk,image = button_2) 
button_news_1w = tkinter.Button(tk,image = button_3) 

canvas.create_image(0,0,anchor = NW, image = LOGO) 
button.place(relx=.8, rely=.5, anchor="c") 
button_news_1d.place(relx =.8,rely = .7, anchor = "c") 
button_news_1w.place(relx =.8,rely = .9, anchor = "c") 


tk.update() 
tk.mainloop() 
+0

Try PIL oder Kissen https://python-pillow.org – jtlz2

Antwort

2

Sie hilft Kissen können ImageTk das Bild direkt als png zu laden.

import tkinter as tk 
from PIL import Image, ImageTk 
image_o = Image.open("photo.png") 
image = ImageTk.PhotoImage(image_o) 

# Use image as to how you would in tkinter 

root = tk.Tk() 
button = tk.Button(root, image = image) 
button.pack() 
root.mainloop() 

Im Gegensatz zu tkinter des Photobild dar, die nur eine bestimmte Art von Bildern, einschließlich der weit verbreiteten gif-Datei, ImageTk des Photobild erkennbar Bildtyp jeden PIL, indem kann nehmen verwenden begrenzt Kissen es zuerst zu laden.

http://pillow.readthedocs.io/en/4.1.x/reference/ImageTk.html

Wenn Sie noch kein Kissen haben, tun pip install pillow


Added: (Dank an Mike - wertvolle Kommentar SMT)

In neueren Versionen von tk/tkl 8.6+ unterstützt tk nativ das PNG-Bildformat.

Warnung: Diese Version von tk wird in einigen Python-Interpretern nicht unterstützt.

https://www.tcl.tk/software/tcltk/8.6.html

+0

hmm. kann ich dann das geladene Bild als gif speichern? –

+0

Sie können ... aber Sie würden nicht benötigen, wenn die eigentlich wollte, dass es gif sein, mit Kissen wird Ihnen helfen, zu GIF zu konvertieren vermeiden und können Sie direkt in png verwenden – abccd

+0

oh ich habe es Danke :) –