我想根据RGB获得图像的最大颜色,请为我建议解决方案。 我搜索过它,但是他们使用像素颜色提供解决方案而且我没有得到它。
答案 0 :(得分:1)
由于您没有原始图像数据,因此无法直接找到它。您只需要依赖像素。这就是推断图像颜色的方式。
CFDataRef pixelData = CGDataProviderCopyData(CGImageGetDataProvider(image.CGImage));
const UInt8* data = CFDataGetBytePtr(pixelData);
int pixelInfo = ((image.size.width * y) + x ) * 4; // PNG
UInt8 red = data[pixelInfo];
UInt8 green = data[(pixelInfo + 1)];
UInt8 blue = data[pixelInfo + 2];
UInt8 alpha = data[pixelInfo + 3];
CFRelease(pixelData);
PS:没有什么叫做最大颜色:)