是否可以调整UIImage / CGContextRef的Hue? 我试图将Context与Color和Hue混合模式混合,但结果是错误的。
我应该将RGB转换为HSB,调整HSB并转换回来吗?
答案 0 :(得分:1)
我找到了解决方案。我只是将每个像素的颜色转换为HSB,调整色调并转换回RBG:
//convert to HSB
CGFloat h, s, l, a;
UIColor *color = [UIColor colorWithRed:r green:g blue:b alpha:1.0f];
[color getHue:&h saturation:&s brightness:&l alpha:&a];
//adjust hue
h *= amount;
//convert back to RGB
color = [UIColor colorWithHue:h saturation:s brightness:l alpha:1.0f];
[color getRed:&r green:&g blue:&b alpha:&a];
这不是最快的解决方案,但很简单
答案 1 :(得分:1)
对于iOS 5,您可以使用核心图像过滤器名称CIHueAdjust。