#import "ViewController.h"
@interface ViewController ()
@property (weak, nonatomic) IBOutlet UIImageView *imageView1;
@property (weak, nonatomic) IBOutlet UIImageView *imageView2;
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
// 1. 將UIImage轉換成CIImage
CIImage *ciImage = [[CIImage alloc] initWithImage:self.imageView2.image];
// 2. 創建濾鏡
MirrorXFilter *filter = [[MirrorXFilter alloc] init];
// 設置相關參數
[filter setValue:ciImage forKey:@"inputImage"];
// 3. 渲染並輸出CIImage
CIImage *outputImage = [filter outputImage];
// 4. 獲取繪製上下文
CIContext *context = [CIContext contextWithOptions:nil];
// 5. 創建輸出CGImage
CGImageRef cgImage = [context createCGImage:outputImage fromRect:[outputImage extent]];
UIImage *image = [UIImage imageWithCGImage:cgImage];
// 6. 釋放CGImage
CGImageRelease(cgImage);
self.imageView2.image = image;
}
@end
Core Image自定義 Filter (翻轉圖片)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.