1

我正在努力从图像中获取 ARGB 等位图数据。

一种)。我为图像创建了一个位图上下文:

context = CGBitmapContextCreate(void * data, size_t width, size_t height, size_t bitsPerComponent, size_t bytesPerRow, CGColorSpaceRef colorspace, CGBitmapInfo bitmapInfo)

乙)。我将图像绘制到上下文中:

CGContextDrawImage(context, rect, imageRef);

C)。然后我从位图上下文中获取数据:

void * data = CGBitmapContextGetData(context);

d)。无效...不可读?

我发现它只返回一个指向图像上下文数据的 void 指针,这意味着无法获取上下文的数据(只写)。还有其他方法可以从上下文数据中返回值吗?

PS:如果我创建一个无符号字符指针 * 数据,它将为 RGB 返回 240,为 alpha 返回 255,这不是正确的颜色分量。

4

1 回答 1

0

即使它的类型是 void,指针仍然可以指向图像数据。我在 iPhone 上发布了另一个相关主题: 如何从 BitmapContext 中提取 ARGB 组件?

而且问题已经解决了。

于 2010-01-15T08:20:12.107 回答