tkinter canvas als bild speichern

Fragen zu Tkinter.
Antworten
Lasse
User
Beiträge: 112
Registriert: Donnerstag 3. Februar 2011, 18:25

Ich möchte auf dem Bildschirm zeichnen und danach das ganze als Bild speichern. Verwenden tue ich Python 3. Nur wollte ich eigendlich tkinter nehmen, doch habe ich gesehen, dass man dort keine Bilder wirklich speichern kann. Ist das hier eine Lösung: http://www.daniweb.com/software-develop ... ode/216929
Ansonsten, welches Toolkit könnte man noch nehmen?
EyDu
User
Beiträge: 4881
Registriert: Donnerstag 20. Juli 2006, 23:06
Wohnort: Berlin

Warum probierst du es nicht einfach mal aus? Den Code zu kopieren und ihn kurz durch den Interpreter zu schicken ist ja nun nicht unbedingt viel Arbeit.
Das Leben ist wie ein Tennisball.
Lasse
User
Beiträge: 112
Registriert: Donnerstag 3. Februar 2011, 18:25

Den Code habe ich schon getestet, er funktioniert, doch wenn man Zeile 71-76 anschaut sieht man, das mit PIL die beiden Linien ein 2. Mal gezeichnet werden und nicht übernommen werden. Ich werde einige Punkte und Linien mehr haben und die alle extra ein 2. Mal zu zeichnen, halte ich für schlecht. Eigendlich möchte ich nur die Pixel vom tkinter canvas als bild speichern.
Lasse
User
Beiträge: 112
Registriert: Donnerstag 3. Februar 2011, 18:25

Habe nochmal im Internet geschaut und das hier entdeckt:

Code: Alles auswählen

img = Image.open("draw.ps")
img.save("draw.jpg", "JPEG")
Habe es in den Beispielcode oben eingebaut es kam aber der Fehler:

Code: Alles auswählen

Traceback (most recent call last):
  File "C:\Documents and Settings\MrX\My Documents\müll.py", line 82, in <module>
    img2.save("xxx.jpg", "JPEG")
  File "C:\Program Files\Python\lib\site-packages\PIL\Image.py", line 1406, in save
    self.load()
  File "C:\Program Files\Python\lib\site-packages\PIL\EpsImagePlugin.py", line 283, in load
    self.im = Ghostscript(self.tile, self.size, self.fp)
  File "C:\Program Files\Python\lib\site-packages\PIL\EpsImagePlugin.py", line 72, in Ghostscript
    gs.write(s)
IOError: [Errno 0] Error
Also jetzt die neue Frage: Wie konvertiere ich "EPS" richtig in "JPEG" oder "GIF" mit PIL?

Danke für eure Hilfe.

Edit: Es gibt noch gar keine Python Imaging Libary PIL für Python3. Ich hatte ersteinmal mit Python2 getestet da das Beispiel in 2 ist, jetzt aber entdeckt das es noch kein PIL für Python 3 gibt. Was nehme ich dann um ein tkinter canvas als Bild (JPEG o.ä.) zu speichern?
Antworten