通过流wxImage到Zip文件。可能?

时间:2009-11-27 10:28:32

标签: c++ zip wxwidgets

我正在尝试使用wxZipOutputStream写出一个zip文件。代码来自此论坛并使用xml文件(当我使用wxTextOutputStream时)。现在,我正在尝试包含一个图像文件,但是wxImage类中的SaveFile函数需要一个类wxOutputStream,但是wxTextOutputStream / wxDataOutputStream没有基类,所以我无法编译它。我只想写一个wxImage和一个xml文件到zip。我该怎么办呢?

//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. 
} 

2 个答案:

答案 0 :(得分:1)

looks就像您必须在档案中指定图像类型一样,请尝试:

value->SaveFile(zip, wxBITMAP_TYPE_PNG)

key中的文件扩展名当然应为.png)

答案 1 :(得分:0)

类型转换是否有效:

值 - &GT; SAVEFILE((wxOutputStream&安培)拉链);