你好,游客 登录
背景:
阅读新闻

cximage 研究之 --- 读取像素内容 - Augusdi的专栏

[日期:2013-04-11] 来源:  作者: [字体: ]

基本上,只有2个函数可行:

GetPixel(x,y)

GetBits()

GetPixel 就算了,要频繁访问堆栈,对于获取完整图形像素来说,太愚蠢

GetBits 是首选了,下面是代码

CxImage mm;

BYTE * pDib;
int BytesPerLine ;
if (!mm.Load(".\\qrpix_tst_l.jpg",FORMAT_JPG))
{
AfxMessageBox("文件打开失败");
return ;
}
mm.GrayScale();
if (!mm.IsGrayScale())
mm.GrayScale();

w = mm.GetWidth();
h= mm.GetHeight();

pDib = mm.GetBits();
BytesPerLine = (w + 3) / 4 * 4; // 只对8位图像

获取的像素,可以直接调用 cximage 的 CreateFromArray 恢复成图片,不过注意,第5个参数,扫描长度,一定要换算成4的倍数,不然会失败





收藏 推荐 打印 | 录入:admin | 阅读:
相关新闻