位图相关求教
别人给我一个用CreateBitmap创建的内存位图句柄,
我怎么把这个位图存成bmp文件?
[解决办法]
HBITMAP CreateBitmap(
int nWidth, // bitmap width, in pixels
int nHeight, // bitmap height, in pixels
UINT cPlanes, // number of color planes
UINT cBitsPerPel, // number of bits to identify color
CONST VOID *lpvBits // color data array
);
LONG SetBitmapBits(
HBITMAP hbmp, // handle to bitmap
DWORD cBytes, // number of bytes in bitmap array
CONST VOID *lpBits // array with bitmap bits
);
试试看吧
[解决办法]
标准的方法是调用GetObject获取bitmap的相关信息,然后根据信息填充BITMAPFILEHEADER、BITMAPINFO结构,写到文件,然后调用GetDIBits把bitmap数据写到文件。
不过你既然使用CB,不需要这么繁琐,使用VCL的高级特性可以写得非常简单。