Sign in to follow this  
pCebrian

Loading Bitmaps from file

Recommended Posts

Hello everyone,

 

I'm trying to load a bitmap following the msdn examples but seems that I'm doing something wrong when call the CreateDecoderFromFileName method.

 

ID2D1Bitmap *myBitmap = NULL;
hr = LoadBitmapFromFile(pRT, pWICFactory, L".\\biglokeseal_paint.png", 0, 0, &myBitmap);


HRESULT LoadBitmapFromFile(ID2D1RenderTarget *pRenderTarget, IWICImagingFactory *pIWICFactory, PCWSTR uri, UINT destinationWidth, UINT destinationHeight, ID2D1Bitmap **ppBitmap)
{
    IWICBitmapDecoder *pDecoder = NULL;
    IWICBitmapFrameDecode *pSource = NULL;
    IWICStream *pStream = NULL;
    IWICFormatConverter *pConverter = NULL;
    IWICBitmapScaler *pScaler = NULL;

    HRSRC imageResHandle = NULL;
    HGLOBAL imageResDataHandle = NULL;
    void *pImageFile = NULL;
    DWORD imageFileSize = 0;


    HRESULT hr = pIWICFactory->CreateDecoderFromFilename(uri, NULL, GENERIC_READ, WICDecodeMetadataCacheOnLoad, &pDecoder);

//...
}

 

Maybe the uri parameter it's wrong? I put the image file on resource files tree, I have to copy that somewhere else (on the project directory)?

 

*I'm using VisualStudio

 

I attached you the full project code here: http://pastebin.com/FiwRMNXr

 

Sorry for my english (i'm from spain) and Thanks!

Edited by pCebrian

Share this post


Link to post
Share on other sites

Okay, I saw that the pointer to WIC Factory that I pass to the function is null.

 

Doesn't should that initialize the pointer?

 

        IWICImagingFactory *pWICFactory = NULL;
	if(SUCCEEDED(hr))
	{
		hr = CoCreateInstance(CLSID_WICImagingFactory, NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARGS(&pWICFactory));
	}

 

What else I have to do?

 

Thanks!

Edited by pCebrian

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this