wxWidgets stellt keine API für die Daten von wxBitmap
bereit (weil plattformabhängig), sondern wxImage
verwendet ein gut definiertes (und sehr einfaches) Format, auf das Sie mit seinem GetData()
zugreifen können Methode wie oben erwähnt. Beachten Sie nur, dass Sie möglicherweise GetAlpha()
verwenden müssen auch wenn Ihre Bilder einen Alphakanal haben.
Allerdings würde ich es nicht so machen, weil die Daten riesig sein werden wenn du das so machst. Obwohl es möglich ist, es zu komprimieren, wie oben vorgeschlagen, warum sollten Sie es manuell tun, wenn wxImage
unterstützt bereits das Schreiben von Bildern in einem der Standardbildformate. Erstellen Sie einfach einen wxMemoryOutputStream
und übergeben Sie es an SaveFile()
. Greifen Sie dann einfach mit GetOutputStreamBuffer()->GetBufferStart()
direkt auf den Stream-Puffer zu und zugehörige Funktionen.