0
CIFilter를 사용하여 이미지에 다양한 효과 (밝기, 대비, 채도 등)를 적용하려고합니다.iOS : 이미지 필터 CIFilter 상태가 유지되지 않습니다.
이미지 필터가 성공적으로 적용되었습니다. 그러나 편집 된 이미지의 마지막 상태가 유지되지 않습니다. 예 : 이미지의 밝기를 높이고 편집 한 이미지에 대비를 적용하면 밝기 증가 이미지에 적용되는 대신 원래 이미지에 대비가 적용됩니다.
내가 잘못 가고- (IBAction)contrastSliderValueChanged:(id)sender {
filter=NULL;
result=NULL;
cgimg=NULL;
newimg=NULL;
if (adjustMenuTag==1) {
filter=[CIFilter filterWithName:@"CIColorControls"];
[filter setDefaults];
[filter setValue:beginImage forKey:@"inputImage"];
[filter setValue:[NSNumber numberWithFloat:contrastSlider.value] forKey:@"inputBrightness"] ;
result=[filter valueForKey:kCIOutputImageKey];
cgimg=[context createCGImage:result fromRect:[result extent]];
newimg=[UIImage imageWithCGImage:cgimg];
imageViewDisplay.image=newimg;
beginImage = result;
CFRelease(cgimg);
// beginImage = [[CIImage alloc] initWithImage:imageViewDisplay.image];
} else if(adjustMenuTag ==2) {
filter=[CIFilter filterWithName:@"CIColorControls"];
[filter setDefaults];
[filter setValue:beginImage forKey:@"inputImage"];
[filter setValue:[NSNumber numberWithFloat:contrastSlider.value+0.5] forKey:@"inputContrast"] ;
result=[filter valueForKey:kCIOutputImageKey];
cgimg=[context createCGImage:result fromRect:[result extent]];
newimg=[UIImage imageWithCGImage:cgimg];
imageViewDisplay.image=newimg;
beginImage = result;
CFRelease(cgimg);
// beginImage = newimg.CIImage; //this also doesn't work.
}
}
:
다음은 코드? 어떻게 해결할 수 있습니까? 편집 한 이미지의 상태를 어떻게 유지합니까?