2012-12-07 74 views
0

我想在Windows CE6下使用CImage加載JPG圖像。我已經在網上搜索,但大部分都使用如下所述的函數(但函數本身被禁用CE用戶):在Windows CE6下使用CImage加載JPG,BMP,GIF和PNG?

CImage myImage; 

myImage.Load(_T("C:\Image.jpg"));// Not available in windows CE 

由於atlimage.h

#ifndef _WIN32_WCE 

inline HRESULT CImage::Load(IStream* pStream) throw() 
{ 
    if(!InitGDIPlus()) 
    { 
     return(E_FAIL); 
    } 

    Gdiplus::Bitmap bmSrc(pStream); 
    if(bmSrc.GetLastStatus() != Gdiplus::Ok) 
    { 
     return(E_FAIL); 
    } 

    return(CreateFromGdiplusBitmap(bmSrc)); 
} 

inline HRESULT CImage::Load(LPCTSTR pszFileName) throw() 
{ 
    if(!InitGDIPlus()) 
    { 
     return(E_FAIL); 
    } 

    Gdiplus::Bitmap bmSrc((CT2W)pszFileName); 
    if(bmSrc.GetLastStatus() != Gdiplus::Ok) 
    { 
     return(E_FAIL); 
    } 

    return(CreateFromGdiplusBitmap(bmSrc)); 
} 

有使用CImage或其他任何其他加載jpg/bmp/gif/png文件的其他替代方法?

回答

-1

CImage::Loaddefinitely supported在Windows CE下的MFC下。

你能說清楚你的意思是「禁用CE用戶」嗎?

沒有「C」驅動器在Windows CE,所以你的示例代碼將無法正常工作,但有這樣的事情沒有理由不應該:

CImage myImage; 
myImage.Load(_T("\\My Device\\Image.jpg")); 
+1

當我宣佈一個新的CImage變量,並尋找下它的成員函數,它不顯示我的「加載」功能。它只是向我展示LoadFromResource函數。 – Neophile

+0

我已編輯我的問題以顯示此內容..請看看..這可能是我嘗試訪問它的方式錯誤。 – Neophile