2012-01-13 127 views
0

我有一個核心圖像過濾器的問題。代碼非常簡單。我創建了一個新的項目「單一視圖應用程序」; 添加CoreImage框架..(這裏是否需要添加任何頭文件?) 添加uiiamgeview ...並將圖像設置爲its.image。 但是,當我嘗試下面的代碼,它沒有顯示任何影響。 你能不能給我一個錯誤或錯誤的手? 順便說一句,我正在運行程序模擬器5.0與Xcode 4.2.1 在此先感謝。CoreImage框架不起作用?

CIImage *backgroundciImage = self.sourceImageView.image.CIImage; 
CIContext *context = [CIContext contextWithOptions:nil]; 

//set the filter 
CIFilter *filter = [CIFilter filterWithName:@"CIGammaAdjust"]; 
[filter setDefaults]; 
[filter setValue:backgroundciImage forKey:@"inputImage"]; 
[filter setValue:[NSNumber numberWithFloat:3.0f] forKey:@"inputPower"]; 

//get the output image 
CIImage *outputImage = [filter valueForKey:@"outputImage"]; 
self.sourceImageView.image = [UIImage imageWithCGImage:[context createCGImage:outputImage fromRect:outputImage.extent]]; 
+0

沒有一個???? ?發生什麼事? omg – 2012-01-15 06:39:47

回答

0

下面的代碼對我的作品,並

CIImage *image = [filterTemp valueForKey: @"outputImage"];  
CIContext *context = [CIContext contextWithOptions:nil]; 
CIFilter* filterBW = [CIFilter filterWithName:@"CIGammaAdjust"]; 
[filterBW setValue:image forKey:@"inputImage"]; 
[filterBW setValue: [NSNumber numberWithFloat:2.00f] forKey: @"inputPower"]; 
CIImage *resultImage = [filterBW valueForKey: @"outputImage"]; 
self.sourceImageView.image = [UIImage imageWithCGImage:[context createCGImage:resultImage fromRect:resultImage.extent]]; 

或在您的情況,您可以在相應的.h文件中聲明CIImage * backgroundciImage,

+0

@superstar_jy請嘗試我的上面的代碼! – Bala 2012-10-30 16:01:43