У меня есть простое приложение, где я могу сделать снимок или выбрать и существующую фотографию на рулоне камеры, а затем отобразить изображение в UIImageView. Я хочу иметь кнопку, которую вы можете нажать и инвертировать выбранное изображение, а затем отобразить это в кадре камеры. Мой вопрос: как инвертировать цвета UIImage, а затем использовать новую инвертированную для отображения в ImageView? Я видел другие сообщения, связанные с этим, но никто не объясняет, как реализовать код. Я довольно новичок в xcode и буду благодарен всем отзывам.iOS - инвертировать UIImage с помощью кнопки
Вот мой .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
http://stackoverflow.com/questions/6672517/is-programmatically-inverting-the-colors-of-an-image-possible – thelaws
Как реализовать этот код в моей ситуации? – Milo
Его нужно поместить в другой файл, а затем использовать: 'self.imageView.image = [self.imageView.image negativeImage];' Идите читать о [категориях в объективе-c] (http://developer.apple. com/library/mac/# documentation/Cocoa/Conceptual/ProgrammingWithObjectiveC/CustomizingExistingClasses/CustomizingExistingClasses.html) – thelaws