求救!用ijl读取jpg文件后,生成BYTE指针,但是用CreateBitmap时出现有关问题
求救!!用ijl读取jpg文件后,生成BYTE指针,但是用CreateBitmap时出现问题!
g_hbm = CreateBitmap (image.JPGWidth, image.JPGHeight, 1, image.DIBChannels * 8, imageData);
UINT aa = GetLastError();
image是JPEG_CORE_PROPERTIES类型的变量,imageData是ijl读出来的BYTE指针,就是image.DIBBytes。
上面代码运行后,aa值为0。g_hbm是非0的一个值,但是用watch查看,显示unused CXX0030: Error: expression cannot be evaluated。请问是什么原因?
------解决方案--------------------
CreateBitmap只能使用BMP格式的数据吧.
你看看返回值,如果是ERROR_INVALID_BITMAP,就表示失败了.
------解决方案--------------------
faint,ijl原函数读出的是DIB的数据(还没做字节对齐),如果要用到DDB里,得做一下2字节对齐,可能还要做上下倒置。
------解决方案--------------------
最后那个参数imageData 应该是颜色数组,不是文件数组吧
[文件头
[。。。
[颜色数组 <--imageData 应该指在这?
------解决方案--------------------
关注!!我也有类似的问题
g_hbm = CreateBitmap (image.JPGWidth, image.JPGHeight, 1, image.DIBChannels * 8, imageData);
UINT aa = GetLastError();
image是JPEG_CORE_PROPERTIES类型的变量,imageData是ijl读出来的BYTE指针,就是image.DIBBytes。
上面代码运行后,aa值为0。g_hbm是非0的一个值,但是用watch查看,显示unused CXX0030: Error: expression cannot be evaluated。请问是什么原因?
------解决方案--------------------
CreateBitmap只能使用BMP格式的数据吧.
你看看返回值,如果是ERROR_INVALID_BITMAP,就表示失败了.
------解决方案--------------------
faint,ijl原函数读出的是DIB的数据(还没做字节对齐),如果要用到DDB里,得做一下2字节对齐,可能还要做上下倒置。
------解决方案--------------------
最后那个参数imageData 应该是颜色数组,不是文件数组吧
[文件头
[。。。
[颜色数组 <--imageData 应该指在这?
------解决方案--------------------
关注!!我也有类似的问题