本文主要是介绍wince下的图片像素点获取(LED显示器,或者wince上位机图片的加载),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1、加载图片(不过说实话 IImage加载图片会造成图片加载时的缓冲慢的问题,后面贴上我感觉比较好的用法更多地链接)
IImage *pImage = NULL;
ImageInfo imageInfo;
CoInitializeEx(NULL, COINIT_MULTITHREADED);
if (SUCCEEDED(CoCreateInstance(CLSID_ImagingFactory,
NULL,
CLSCTX_INPROC_SERVER,
IID_IImagingFactory,
(void **) &pImgFactory)))
{
if (SUCCEEDED(pImgFactory->CreateImageFromFile(filename, &pImage)))
{
pImage->GetImageInfo(&imageInfo);
pImage->Draw(h_dc, &rcx, NULL);
pImage->Release();
pImgFactory->Release();
}
else
{
pImgFactory = NULL;
pImage = NULL;
CoUninitialize();
return FALSE;
}
}
else
{
pImgFactory = NULL;
pImage = NULL;
CoUninitialize();
return FALSE;
}
pImgFactory = NULL;
pImage = NULL;
CoUninitialize();
return TRUE;
http://blog.csdn.net/norains/article/details/1759912 //分割图片 缓冲区的调用等
2、获取图片的像素(rgb)
一开始 我看到 pImage->GetImageInfo(&imageInfo) 想我imageInfo里面应该有像素的信息 可是没看明白获取到的信息到底怎么获得 所以我就偷了个懒做了以下的步骤:
既然我已经可以将图片放大一个hdc中 为什么我不直接拿出来呢!
COLORREF xx[i] = GetPixel(m_hdc,x,y); // 遍历一下不就可以了!
老实说都怪上大学时候偷懒,现在英文文档看的吃力 想来想去 pImage->GetImageInfo(&imageInfo),imageInfo里面应该已经包含了像素信息了,可惜文档没看太明白。要是哪位高手知道怎么直接调用麻烦留言鄙视我 ,但请附上解释
这篇关于wince下的图片像素点获取(LED显示器,或者wince上位机图片的加载)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!