Core Image自定義 Filter (翻轉圖片)

#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

在這裏插入圖片描述
Demo Core Image自定義 Filter (翻轉圖片)

發佈了119 篇原創文章 · 獲贊 4 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章