Iphone iOS-使用按钮反转UIImage

Iphone iOS-使用按钮反转UIImage,iphone,ios,xcode,uiimageview,uiimage,Iphone,Ios,Xcode,Uiimageview,Uiimage,我有一个简单的应用程序,我可以拍一张照片,或者选择相机上的现有照片,然后在UIImageView中显示图像。我想有一个按钮,你可以按下并反转拾取的图像,然后显示在相机辊。我的问题是,如何反转UIImage的颜色,然后使用新的反转图像在ImageView中显示?我看过其他与此相关的文章,但没有一篇解释如何实现代码。我是xcode的新手,非常感谢所有的反馈 以下是视图控制器的my.m文件: #import "ViewController.h" @interface ViewController (

我有一个简单的应用程序,我可以拍一张照片,或者选择相机上的现有照片,然后在UIImageView中显示图像。我想有一个按钮,你可以按下并反转拾取的图像,然后显示在相机辊。我的问题是,如何反转UIImage的颜色,然后使用新的反转图像在ImageView中显示?我看过其他与此相关的文章,但没有一篇解释如何实现代码。我是xcode的新手,非常感谢所有的反馈

以下是视图控制器的my.m文件:

#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController

@synthesize imageView;
- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
}

- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

-(IBAction)takePhoto {
    picker1 = [[UIImagePickerController alloc] init];
    picker1.delegate = self;
    [picker1 setSourceType:UIImagePickerControllerSourceTypeCamera];
    [self presentViewController:picker1 animated:YES completion:nil];

}

-(IBAction)ChooseExisting {

    picker2 = [[UIImagePickerController alloc] init];
    picker2.delegate = self;
    [picker2 setSourceType:UIImagePickerControllerSourceTypePhotoLibrary];
    [self presentViewController:picker2 animated:YES completion:nil];

}

-(IBAction)invertImage {

}

-(void) imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
    imageFinal = [info objectForKey:UIImagePickerControllerOriginalImage];
    [imageView setImage:imageFinal];
    [self dismissViewControllerAnimated:YES completion:nil];

}

-(void)imagePickerControllerDidCancel:(UIImagePickerController *)picker {

    [self dismissViewControllerAnimated:YES completion:nil];
}

@end

我看到NegativeImage方法有很多代码。这里有一个使用核心图像过滤器的简单示例

将核心映像框架包括到项目中 导入核心图像标题

#import <CoreImage/CoreImage.h>

输出图像将被反转

我看到NegativeImage方法有很多代码。这里有一个使用核心图像过滤器的简单示例

将核心映像框架包括到项目中 导入核心图像标题

#import <CoreImage/CoreImage.h>

输出图像将被反转

为了给您一个简单的答案,您可以反转包含您的
ui图像的
ui图像视图

要反转它,只需使用

[yourImageView setTransform:CGAffineTransformMakeScale(-1, 1)]; // flip horizontally
[yourImageView setTransform:CGAffineTransformMakeScale(1, -1)]; // flip vertically
[yourImageView setTransform:CGAffineTransformMakeScale(-1, -1)]; // flip horizontally and vertically
要使其恢复正常,请使用

[yourImageView setTransform:CGAffineTransformIdentity]; // bring the view back to normal.

希望这对您有所帮助,并祝您在应用程序中一切顺利:)

要给您一个简单的答案,您可以反转包含您的
UIImage的
UIImageView

要反转它,只需使用

[yourImageView setTransform:CGAffineTransformMakeScale(-1, 1)]; // flip horizontally
[yourImageView setTransform:CGAffineTransformMakeScale(1, -1)]; // flip vertically
[yourImageView setTransform:CGAffineTransformMakeScale(-1, -1)]; // flip horizontally and vertically
要使其恢复正常,请使用

[yourImageView setTransform:CGAffineTransformIdentity]; // bring the view back to normal.

希望这对您有所帮助,并祝您在应用程序中一切顺利:)

在我的情况下如何实现该代码?它需要放在不同的文件中,然后使用:
self.imageView.image=[self.imageView.image negativeImage]去读一下谢谢。我将回顾你给我的链接。非常感谢你的法律!你真的救了我。现在我相信我对xcode有了更多的了解!代表你!在我的情况下如何实现该代码?它需要放在不同的文件中,然后使用:
self.imageView.image=[self.imageView.image negativeImage]去读一下谢谢。我将回顾你给我的链接。非常感谢你的法律!你真的救了我。现在我相信我对xcode有了更多的了解!代表你!提示:如果
inputImage.CIImage
不适合您,则使用
[[CIImage alloc]initWithCGImage:inputImage.CGImage]
创建CIImage。;很棒,这是我在互联网上找到的最好答案!谢谢提示:如果
inputImage.CIImage
不适合您,则使用
[[CIImage alloc]initWithCGImage:inputImage.CGImage]
创建CIImage。;很棒,这是我在互联网上找到的最好答案!谢谢