Можно ли настроить оттенок UIImage/CGContextRef? Я попытался смешать контекст с режимом наложения цвета и оттенка, но результат был неправильным.
Должен ли я преобразовать RGB в HSB, настроить HSB и преобразовать обратно?
Можно ли настроить оттенок UIImage/CGContextRef? Я попытался смешать контекст с режимом наложения цвета и оттенка, но результат был неправильным.
Должен ли я преобразовать RGB в HSB, настроить HSB и преобразовать обратно?
Для iOS 5 вы можете использовать имя основного фильтра изображения CIHueAdjust.
Я нашел решение. Я просто преобразовал цвет каждого пикселя в 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];
Это не самое быстрое решение, но простое