void GetPngPicture(const TDesC& filename,CFbsBitmap* iBitmap,CFbsBitmap* iBmpMask )
{
CImageDecoder* idecoder;
TRAPD(err,idecoder = CImageDecoder::FileNewL(CEikonEnv::Static()->FsSession(),
filename ,_L8("image/png"),
CImageDecoder::EOptionAlwaysThread));
if(err !=KErrNone)
{
return;
}
TFrameInfo iFrameInfo = idecoder->FrameInfo(0);
int nFrameCount = idecoder->FrameCount();
iBitmap->Create(iFrameInfo.iOverallSizeInPixels,iFrameInfo.iFrameDisplayMode );
iBmpMask->Create(iFrameInfo.iOverallSizeInPixels,EGray256 );
TRequestStatus aStatus = KRequestPending;
TRAPD(err1,idecoder->Convert( &aStatus, *iBitmap, *iBmpMask));
//TRAPD(err1,idecoder->Convert( &aStatus, *iBitmap, 0));
User::WaitForRequest( aStatus );
delete idecoder;
}