0

UIImage / CGContextRefの色相を調整することは可能ですか?コンテキストを色と色相のブレンドモードでブレンドしようとしましたが、結果が間違っていました。

RGBをHSBに変換し、HSBを調整して、元に戻す必要がありますか?

4

2 に答える 2

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];

最速のソリューションではありませんが、シンプルです

于 2011-12-13T18:04:50.830 に答える
1

iOS 5の場合、コアイメージフィルター名CIHueAdjustを使用できます。

CIHueAdjustフィルター

于 2011-12-13T21:22:01.857 に答える