如题谢谢大家

解决方案 »

  1.   

    //读取图片
    Image* image = Image::FromFile(L"d:\\aa.jpg");
    //生成缩略图
    Image* thumbnailImage = image->GetThumbnailImage(10,10);
    //保存
    CLSID clsid;
    int clsidResult = GetImageCLSID(L"image/bmp",&clsid); if(clsidResult) 

    thumbnailImage->Save(L"d:\\thumbnailImage.bmp", &clsid, NULL);
    } //附:GetImageCLSID方法
    //得到格式为format的图像文件的编码值,访问该格式图像的COM组件的GUID值保存在pCLSID中 
    int GetImageCLSID(const WCHAR* format, CLSID* pCLSID)
    {
    UINT num = 0; 
    UINT size = 0; 
    ImageCodecInfo* pImageCodecInfo = NULL; 
    GetImageEncodersSize(&num, &size);  if(size == 0)
    {
    return FALSE; // 编码信息不可用 
    } //分配内存 
    pImageCodecInfo = (ImageCodecInfo*)(malloc(size));  if(pImageCodecInfo == NULL) 
    {
    return FALSE; // 分配失败
    } //获得系统中可用的编码方式的所有信息 
    GetImageEncoders(num, size, pImageCodecInfo);  //在可用编码信息中查找format格式是否被支持 
    for(UINT i = 0; i < num; ++i) 
    { //MimeType:编码方式的具体描述 
    if( wcscmp(pImageCodecInfo[i].MimeType, format) == 0 ) 

    *pCLSID = pImageCodecInfo[i].Clsid; 
    free(pImageCodecInfo); 
    return TRUE; 


    free(pImageCodecInfo); 
    return FALSE; 
    }
      

  2.   

    没弄明白
    郁闷
    用StretchBlt不行么?
      

  3.   

    朋友,你的问题不是说用GDI+嘛,怎么又跑出来StretchBlt了
      

  4.   

    GDI+  怎么把 一个CBitMap 保存为一个 bmp 文件
      

  5.   

    呵呵,GDI+和GDI不一样的喔。Tan18(阿强)都说得很清楚的拉。
      

  6.   

    我要弄成jpg的
    还有 这个运行出错
      

  7.   

    http://www.yesky.com/484/1831984.shtml
    http://www.yesky.com/282/1772782_1.shtml
    http://www.yesky.com/163/1769663_2.shtml
      

  8.   

    CBitmap* pBmp;
    HBITMAP hBmp(pBmp);
    Bitmap* pBmp = Bitmap::FromHBitmap(hBmp);然后调用上面的存储上方法
    CLSID clsid;
    int clsidResult = GetImageCLSID(L"image/jpeg",&clsid); if(clsidResult) 

    pBmp->Save(L"d:\\bmp.jpg", &clsid, NULL);
    }
      

  9.   

    朋友,你用过GDI+没有?如果没用过的话,麻烦你先了解一下GDI+怎么用。
      

  10.   

    首先要安装微软的sdk开发包,vc的默认安装里面没有gdi+(现在好象很难下到,他们网站上说要买光盘)
    然后,加入相应的头文件、gdiplus.lib、gdiplus.dll,然后在主程序类里面加上以下成员:
       GdiplusStartupInput m_gdiplusStartupInput;
       ULONG_PTR           m_gdiplusToken;
    在InitInstance()里面加上
    GdiplusStartup(&m_gdiplusToken, &m_gdiplusStartupInput, NULL);
    然后就可以使用gdi+了
      

  11.   

    up====CSDN 小助手 V2.5 2005年11月05日发布====
    CSDN小助手是一款脱离浏览器也可以访问Csdn论坛的软件
    界面:http://blog.csdn.net/Qqwwee_Com/archive/2005/11/05/523395.aspx
    下载:http://szlawbook.com/csdnv2