求bmp转png的代码,该怎么处理

求bmp转png的代码
下了CxImage,但没找到哪个地方是转换的
大家谁有这方面的资料分享下吧,感谢啊

------解决方案--------------------
咦,就是读出,然后存储。。。。
------解决方案--------------------
http://blog.csdn.net/fengbingchun/article/details/6426836

Load 、Save、CXIMAGE_FORMAT_PNG即可
------解决方案--------------------
探讨

http://blog.csdn.net/fengbingchun/article/details/6426836

Load 、Save、CXIMAGE_FORMAT_PNG即可

------解决方案--------------------
C/C++ code

IStream* CDXGraph::StretchPic(const WCHAR *path, const WCHAR *format, int width, int heigh)
{
    Bitmap orgpic(path) ;  
    Image *Despic = orgpic.GetThumbnailImage(width,heigh) ;  
    
    IStream* pstm = NULL;   
    
    CLSID encoderClsid ;  
    GetEncoderClsid(format,&encoderClsid) ;  
    CString name;
    
        name = "Debug\\1.bmp";
    
    Status sta =Despic->Save(name.AllocSysString(),&encoderClsid,0) ; //Despic->Save(pstm, &encoderClsid,0);  
    if (sta == Ok)  
    {  
        return pstm ;  
    }  
    return NULL ;  
}

int CDXGraph::GetEncoderClsid(const WCHAR *format, CLSID *pClsid)
{
    UINT num = 0; // number of image encoders  
    UINT size = 0; // size of the image encoder array in bytes  
    ImageCodecInfo* pImageCodecInfo = NULL;  
    GetImageEncodersSize(&num, &size);  
    if(size == 0)  
        return -1; // Failure  
    pImageCodecInfo = (ImageCodecInfo*)(malloc(size));  
    if(pImageCodecInfo == NULL)  
        return -1; // Failure  
    GetImageEncoders(num, size, pImageCodecInfo);  
    for(UINT j = 0; j < num; ++j)  
    {  
        if( wcscmp(pImageCodecInfo[j].MimeType, format) == 0 )  
        {  
            *pClsid = pImageCodecInfo[j].Clsid;  
            free(pImageCodecInfo);  
            return j; // Success  
        }  
    }  
    free(pImageCodecInfo);  
    return -1;   
}

------解决方案--------------------
如果用mfc的类的话
#include "atlimage.h"
。。。。。。
CImage image;
image.Load(_T("D:\\desktop\\test1\\photo\\test\\test\\1.bmp"));
image.Save(_T("D:\\desktop\\test1\\photo\\test\\test\\1.png"));