iOS – 调整UIImage的色调

可以调整UIImage / CGContextRef的Hue吗? 我试图将上下文与Color和Hue混合模式混合,但结果是错误的。

我应该将RGB转换成HSB,调整HSB并转换回来?

对于iOS 5,可以使用核心图像filter名称CIHueAdjust。

CIHueAdjustfilter

我find了解决办法。 我只是将每个像素的颜色转换成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]; 

这不是最快的解决scheme,但它很简单

Interesting Posts