Я пытаюсь создать классные эффекты для моего приложения для работы с изображениями.Я использую этот проект , чтобы помочь моему процессу в изменении кривых, яркости, контрастности и т. Д.
Вот код, который я использую:
- (UIImage*)coolifyTheImage {
UIImage *image = self;
NSArray *redPoints = [NSArray arrayWithObjects:
[NSValue valueWithCGPoint:CGPointMake(0, 43)],
[NSValue valueWithCGPoint:CGPointMake(52, 136)],
[NSValue valueWithCGPoint:CGPointMake(107, 201)],
[NSValue valueWithCGPoint:CGPointMake(255, 255)],
nil];
NSArray *greenPoints = [NSArray arrayWithObjects:
[NSValue valueWithCGPoint:CGPointMake(0, 27)],
[NSValue valueWithCGPoint:CGPointMake(54, 86)],
[NSValue valueWithCGPoint:CGPointMake(214, 219)],
[NSValue valueWithCGPoint:CGPointMake(214, 255)],
nil];
NSArray *bluePoints = [NSArray arrayWithObjects:
[NSValue valueWithCGPoint:CGPointMake(0, 86)],
[NSValue valueWithCGPoint:CGPointMake(49, 86)],
[NSValue valueWithCGPoint:CGPointMake(122, 100)],
[NSValue valueWithCGPoint:CGPointMake(201, 167)],
[NSValue valueWithCGPoint:CGPointMake(255, 167)],
nil];
image = [[[image applyCurve:redPoints toChannel:CurveChannelRed]
applyCurve:greenPoints toChannel:CurveChannelGreen]
applyCurve:bluePoints toChannel:CurveChannelBlue];
return image;
}
Это работаеткрасиво на нижней половине изображения, но не на верхней.Вот как это должно выглядеть (скриншот взят из фотошопа):
Вот настройки в фотошопе:
И вот как это получается после того, как я запустил код на нем:
На рисунке показан массивный участок синего цвета ипосле изменения кривых синего цвета это то, что подходит.Это проблема с основной функцией добавления кривых или мне нужно изменить точки?
Пожалуйста, помогите!