Камера iPhone и опции редактирования фотографий - интеграция в пользовательское приложение - PullRequest
2 голосов
/ 27 января 2012

Сейчас я нахожусь на этапе сбора информации для нового приложения для iPhone.Для этого приложения я хотел бы использовать параметры редактирования камеры и фотоизображения.Apple предлагает API (контроллер), где я могу использовать эти встроенные функции ввода-вывода в своем приложении?я имею в виду, что в процессе, который начинается сначала с использованием камеры iPhone (функция IOS), затем с использованием параметров редактирования фотографий (функция IOS), сжимайте и помечайте их (личные функции) и, наконец, сохраняйте их в папке / библиотеке моего личного приложенияне в общей библиотеке фотографий)?

Я читал функцию класса UIImagePickerController, но я хотел бы проверить вас дважды, прежде чем двигаться вперед

https://developer.apple.com/library/ios/#documentation/UIKit/Reference/UIImagePickerController_Class/UIImagePickerController/UIImagePickerController.html

Любая идея для сжатия изображения или захвата его с меньшим разрешением?

большое спасибо заранее

Ответы [ 3 ]

1 голос
/ 27 января 2012

Вместо захвата изображения с меньшим разрешением вы можете изменить размер изображения в колбаке UIImagePickerController, который равен

    - (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info{
    UIImage *temp = (UIImage*)[info objectForKey:@"UIImagePickerControllerOriginalImage"];
    UIImage *uploadImage = [self resizeImageWithImage:temp];
}

Для функции изменения размера:

- (UIImage*)resizeImageWithImage:(UIImage*)image {
 CGSize newSize = CGSizeMake(newWidth, newHeight);
                UIGraphicsBeginImageContext( newSize );
                [image drawInRect:CGRectMake(0,0,newSize.width,newSize.height)];
                UIImage* newImage = UIGraphicsGetImageFromCurrentImageContext();
                UIGraphicsEndImageContext();
}

Возможно, вам понадобится:

#import <QuartzCore/QuartzCore.h>

и библиотека.

Также для проверки редактирования изображения для библиотеки CoreImage, информацию о которой вы можете получить здесь

http://developer.apple.com/library/mac/#documentation/graphicsimaging/Conceptual/CoreImaging/ci_intro/ci_intro.html

0 голосов
/ 27 января 2012

UIImagePickerController позволит пользователю либо выбрать существующую фотографию, либо сделать новую (это зависит от того, как вы настроили контроллер).Единственный способ редактирования, который позволяет этот подход, заключается в том, что пользователь может обрезать изображение.Кроме этого, вам придется предоставить свои собственные функции.

Что касается сжатия изображения, вы можете сохранить его в формате JPG, задав степень сжатия следующим образом:

NSData *dataForPNGFile = UIImageJPEGRepresentation(yourImage, 0.9f);
0 голосов
/ 27 января 2012

Для сжатия это может помочь

-(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
    UIImage *image = [info objectForKey:UIImagePickerControllerOriginalImage];
    NSData *imageData = UIImageJPEGRepresentation(image, 0.6);
    //0 means most compression
    //1 means least compression
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...