2016-07-30 13 views
0

Ich habe dies für ein wenig versucht, und habe keine Lösung gefunden, die für mich arbeitetSaving WxPython scrolledcanvas Inhalt Bild

Ich habe eine wx.scrolledcanvas, dass ich versuche zu einem Bild zu speichern, aber wenn Ich benutze die Antworten, die ich gefunden habe, sie speichern nur den sichtbaren Teil der Leinwand und nicht die gesamte Leinwand. Gibt es eine Möglichkeit, die gesamte Bildlauffläche in einer Datei zu speichern?

Dank

Antwort

1

Code Umgestalten so dass das, was Sie in Ihrem EVT_PAINT Handler zeichnen sie die wx.DC aufgerufen werden kann vorbei gezogen werden, auf, und rufen Sie dann, dass aus dem Lack-Handler mit dem wx.PaintDC oder was auch immer Sie sich gerade befinden verwenden. Wenn Sie es in einem Bild speichern möchten, rufen Sie den gleichen Code auf und übergeben Sie eine wx.MemoryDC mit einer ausgewählten wx.Bitmap. Wenn es fertig ist, wird die Bitmap den gleichen Inhalt wie das Fenster haben, und Sie können es dann in eine Datei oder was auch immer Sie damit tun müssen, speichern.

+0

Eigentlich kam gerade zurück zu antworten, dass ich das Problem genau so gelöst hatte. Vielen Dank –