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. 
} 
War es hilfreich?

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);

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top