изменение размера фотографии в iPhone перед отправкой на сервер

#iphone #resize #photo #crop #autoresize

#iPhone #изменение размера #фотография #обрезка #авторазмеризация

Вопрос:

Создание приложения, в котором мы хотим отправить фотографию на сервер вместе с некоторыми данными формы. Изображение огромное, загрузка занимает целую вечность, и нам действительно не нужна информация о пикселях на веб-сайте. Есть ли какой-либо способ изменить размер изображения (с камеры или из вашей галереи), чтобы мы отправляли в киберпространство только изображение гораздо меньшего размера? Это легко сделать в Android, но мы изо всех сил пытаемся найти простое решение для iPhone.

Ответ №1:

См. раздел Изменение размера пользовательского изображения правильным способом для изменения размера кода и обсуждения. Чтобы выбрать изображение, вы можете сделать

 // select image
UIImagePickerController *picker = [UIImagePickerController new];
picker.delegate = self;
picker.allowsEditing = YES;
[yourViewController presentModalViewController:picker];

// delegate method
- (void) imagePickerController:(UIImagePickerController *)picker 
 didFinishPickingMediaWithInfo:(NSDictionary *)info {
    UIImage *image = [info objectForKey:UIImagePickerControllerEditedImage];
}
  

Комментарии:

1. 1 для «Правильного изменения размера пользовательского изображения». Это единственное настоящее руководство по изменению размера изображения, дополненное (отличным) кодом, который можно взять и использовать.

Ответ №2:

Большинство вопросов, которые вы задаете, рассматриваются в сессии WWDC 2010 N104. Есть просмотр прокрутки, но методы, которые описаны там, можно использовать в вашей задаче.

Ответ №3:

В UIImage:

    (UIImage *)imageWithCGImage:(CGImageRef)imageRef scale:(CGFloat)scale orientation:(UIImageOrientation)orientation
  

Просто набрасываю идею…

 UIImage smallerImage = [[ UIImage imageWithCGImage: biggerImage.CGImage scale: 0.1 orientation:  orient