Wie fügt man Bilder in Python ein?
Guten Tag.
Ich habe versucht, mit Tkinter in Python Bilder einzufügen. Ich habe schon mal etwas ausprobiert, bekomme aber immer den Fehler: "Too early to create image".
Hier mein Versuch:
from tkinter import *
HMH = PhotoImage(file = "C:\Python\Bilder\1.JPG")
Haupt = Tk()
Haupt.geometry("1000x900")
Img1 = Label(Haupt, image = HMH)
Img1.place(x = 0,y = 0)
Haupt.mainloop()
1 Antwort
Von gutefrage auf Grund seines Wissens auf einem Fachgebiet ausgezeichneter Nutzer
programmieren, Python 3
Tk muss erst initialisiert werden. Danach kannst du das Bild erstellen. Verschiebe also
Haupt = Tk()
in Zeile 2.
Folgend solltest du beachten, dass PhotoImage nur bestimmte Bildformate unterstützt (GIF, PNG, PGM, evt. noch Weitere), JPG gehört nicht dazu.
Für diesen Fall solltest du PIL verwenden:
from PIL import ImageTk, Image
image = ImageTk.PhotoImage(Image.open("yourImage.jpg"))
regex9
31.03.2020, 02:26
@Brockdish
Sofern du die Tk-Komponente Canvas meinst, ja.
Beispiel:
from tkinter import *
root = Tk()
canvas = Canvas(root, width=200, height=200)
canvas.pack()
yourImage = PhotoImage(file="path/to/some/image.jpg")
canvas.create_image(0, 0, image=yourImage)
mainloop()
Unterstützte Python-Bildtypen sind BitmapImage, PhotoImage und auch der PhotoImage aus PIL.
Wie kann man Bilder in ein Canvas einfügen? Geht es auch ohne Pygame?