mshd.net
当前位置:首页 >> C++中相机采集到的的一个BuFFEr如何转换成hBitmAp? >>

C++中相机采集到的的一个BuFFEr如何转换成hBitmAp?

这没有统一的方法,你得根据相机采集软件存储数据的格式和hbitmap对应的bitmap格式来转换

MFC 程序里用: HBITMAP hBmp = CreateDIBitmap( dc.m_hDC,// handle to device context &bmiHeader, // pointer to BITMAPINFOHEADER CBM_INIT, // initialization flag lpDIBBits, // pointer to initialization data &bmInfo, // pointer to ...

主要在于你获得的HDC是哪个。 首先你要获取你要截图窗口的HWND 通过GetWindowDC 或 GetDC 获取相应的 HDC 得到HBITMAP,其实你给出的程序已经完成了这步,只不过他用的HDC是屏幕的。 也就是说,你要在你的程序里想办法获得你要截图的窗口的HDC。 ...

一般是用于隐式类型转换的场景 比如有个函数 void render(HBITMAP hBmp) 可以直接传递这个类的一个对象,会自动调用前面定义的 HBITMAP 操作符 当然显式转换也是可以的 另外,虚机团上产品团购,超级便宜

有一个比较强大的开源处理库,做图像处理的基本都用它了:opencv 然后它的例程里面就有图像缩放函数 cvResize()的使用

HBITMAP BufferToHBITMAP(char* pBuffer) { HBITMAP hShowBMP; LPSTR hDIB,lpBuffer = pBuffer; LPVOID lpDIBBits; BITMAPFILEHEADER bmfHeader; DWORD bmfHeaderLen; bmfHeaderLen = sizeof(bmfHeader); strncpy((LPSTR)&bmfHeader,(LPSTR)lpBu...

#include int PaintBitmap (HWND hwnd ,HBITMAP hBitmap) { RECT rect ; BITMAP bitmap ; HDC hdcSrc = GetDC (hwnd) ; HDC hdcBmp = CreateCompatibleDC (hdcSrc) ; SelectObiect (hdcBmp ,hBitmap) ; GetClientRect (hwnd ,&rect) ; GetObject...

HBITMAP CopyScreenToBitmap() { HDC hScrDC, hMemDC;// 声明2个设备上下文句柄 HBITMAP hBitmap, hOldBitmap;// 声明2个位图句柄 int nWidth, nHeight;// 声明2个变量,用于后面存储平面的宽度和高度 hScrDC = CreateDC("DISPLAY", NULL, NULL,...

MFC-_-古董......

上面已经取到了 桌面, 在 memDC中, 这里保存到文件 CImage mImage; mImage.Attach(hBitMap); mImage.Save(pthis->PicPath);

网站首页 | 网站地图
All rights reserved Powered by www.mshd.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com