wxImage zu Datei als Stream sehen lassen. Möglich?
Frage
Ich versuche, eine Zip-Datei zu schreiben, die wxZipOutputStream verwenden. Der Code ist aus diesem Forum und arbeitet mit der XML-Datei (wenn ich verwenden wxTextOutputStream). Nun, ich versuche, eine Bilddatei, aber die Savefile-Funktion in der wxImage Klasse gehören erwartet eine Klasse wxOutputStream aber wxTextOutputStream / wxDataOutputStream haben keine Basisklasse, damit ich es nicht zusammenstellen können. Ich möchte nur ein wxImage schreiben und eine XML-Datei in ein Zip. wie gehe ich davon?
//convert stream to zip file.
wxFFileOutputStream out(m_loaded_filename.GetFullPath());
wxZipOutputStream zip(out);
// wxTextOutputStream txt(zip);
wxDataOutputStream txt(zip);
zip.PutNextEntry("my.xml");
txt << xmltext;
...
...
...
//value is wxImage*
//key is wxString
zip.PutNextEntry(key); //filename
if(value->IsOk())
{
value->SaveFile(zip); //compiler throws error.
}
Lösung
Es sieht wie Sie die Art des Bildes angeben müssen in der Archiv, versuchen Sie:
value->SaveFile(zip, wxBITMAP_TYPE_PNG)
(Die Dateierweiterung in key
sollte natürlich sein .png)
Andere Tipps
Hat Typ Werke Gießen:
wert-> Savefile ((wxOutputStream &) zip);