GDI+ 获取图像内存像素指针
来源:互联网 发布:mdf如何导入数据库 编辑:程序博客网 时间:2024/06/08 00:11
方法1:static Bitmap* FromHBITMAP(HBITMAP hbm, HPALETTE hpal);
方法2:static Bitmap* FromBITMAPINFO( const BITMAPINFO* gdiBitmapInfo, VOID* gdiBitmapData );
方法1 关联的时候好像是copy了一份图像像素数据; Bitmap::LockBits,获取BitmapData,必须是有ImageLockModeUserInputBuf,否则获取的数据有错误;
方法2 关联的时候好像直接关联操作了关联的像素数据;可以直接操作关联时候的像素指针了;
方法3 一般Bitmap bitmap(L"LockBitsTest1.bmp") 关联位图,可直接Bitmap::LockBits,无需ImageLockModeUserInputBuf。
//
GDI+ 获取的像素指针: BYTE* pixels = (BYTE*)bitmapData->Scan0; 排列顺序是 从左到右,从上到下;
(bitmapData->Stride小于0,否则反之;如果ImageLockModeUserInputBuf时,程序员自己设置bitmapData->Stride值(包括bitmapData->Scan0指向的内存空间),不可小于0);
一般读文件方式得到的像素指针 , 排列顺序是 从左到右,从下到上;
//
// ImageLockModeUserInputBuf实例:
BitmapData bitmapData; bitmapData.Stride = 1920 ; bitmapData.Scan0 = new BYTE[w*h*3];
Rect rect(0,0, w, h);
ptempBitmap->LockBits(
&rect, ImageLockModeRead|ImageLockModeWrite |ImageLockModeUserInputBuf,
PixelFormat24bppRGB, &bitmapData);
memcpy(pBuffer, (BYTE*)bitmapData.Scan0, BufferLen);
ptempBitmap->UnlockBits( &bitmapData);
delete bitmapData.Scan0;
- GDI+ 获取图像内存像素指针
- GDI+ 获取图像内存像素指针
- 用指针修改图像像素
- 获取图像的像素信息
- 获取图像像素方法汇总
- 获取图像像素方法汇总
- opencv内存总结和访问图像中像素方法案例(指针方法)
- 图像中获取图像的像素值
- opencv2-用指针来访问图像像素
- OpenCV中获取图像某一像素值
- OpenCV中获取图像某一像素值
- OpenCV中获取图像某一像素值
- OpenCV中获取图像某一像素值
- OpenCV中获取图像某一像素值
- opencv获取图像的像素值
- 获取图像像素点的概率分布图
- opencv获取图像的指针
- 如何用指针遍历图像中的每一个像素
- 开心的我
- Android HttpClient网络通信
- 在服务器端弹出"确定""取消"提示框
- 给准备用C++做项目的朋友(转~~~)
- 用递归和非递归的方法把一个十进制数转换为二进制序列
- GDI+ 获取图像内存像素指针
- 用TIdHTTP多线程下载
- 阿基米德证明圆面积和周长关系的方法
- Using the Adobe AIR 2 NativeProcess API to create a screen recorder
- The hell ascii 160
- 配置MAXIMO二次开发环境
- ASP.NET 后台编码js前台解码
- yum不能正常使用的解决方法
- spring mvc配置