سؤال

وأنا أحاول كتابة ملف مضغوط باستخدام wxZipOutputStream. هو رمز من هذا المنتدى ويعمل مع ملف xml (عندما كنت wxTextOutputStream). الآن، أنا أحاول أن يتضمن ملف الصورة ولكن وظيفة SaveFile في فئة wxImage تتوقع wxOutputStream الفئة ولكن wxTextOutputStream / wxDataOutputStream ليس لديهم الفئة الأساسية لذلك أنا لا يمكن ترجمة ذلك. أريد فقط أن الكتابة خارج wxImage وملف XML لالرمز البريدي. كيف يمكنني التوجه نحو ذلك؟

//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. 
} 
هل كانت مفيدة؟

المحلول

يبدو مثل لديك لتحديد نوع الصورة في أرشيف، في محاولة:

value->SaveFile(zip, wxBITMAP_TYPE_PNG)

و(امتداد الملف في key ينبغي بالطبع بابوا نيو غينيا)

نصائح أخرى

هل اكتب الصب الأعمال:

وذات القيمة> SaveFile ((wxOutputStream و) الرمز البريدي)؛

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top