Я работаю над приложением, которое позволяет пользователям выбирать фотографию из галереи. Проблема, с которой я сталкиваюсь, очень странная, поскольку размер фотографии (с точки зрения хранения) изменяется, когда его подбирают с помощью UIImagePickerController.UIImagePickerController возвращает больше Изображение, отличное от оригинала
В моем случае я получил изображение через воздушную каплю. Размер изображения - 8,7 МБ. но когда я выбираю то же изображение через UIImagePickerController, он возвращает мне изображение ~ 13 МБ.
Примечание: разрешение изображения остается неизменным ([3024, 4032]).
Я создал очень простое приложение для проверки вещи. Вот пример кода:
ViewController.h
#import <UIKit/UIKit.h>
@interface ViewController : UIViewController <UIImagePickerControllerDelegate, UINavigationControllerDelegate>
@end
ViewController.m
#import "ViewController.h"
@implementation ViewController
bool flag = true;
- (void)viewDidAppear:(BOOL)animated {
if (flag) {
flag = false;
UIImagePickerController *picker = [[UIImagePickerController alloc] init];
picker.delegate = self;
[self presentViewController:picker
animated:YES
completion:NULL];
}
}
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
UIImage *chosenImage = info[UIImagePickerControllerOriginalImage];
NSData *temp = UIImageJPEGRepresentation(chosenImage, 1);
NSLog(@"image: %lu", (unsigned long)temp.length);
NSLog(@"image: [%lu, %lu]", (unsigned long)chosenImage.size.width, (unsigned long)chosenImage.size.height);
[picker dismissViewControllerAnimated:YES completion:NULL];
}
- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker {
[picker dismissViewControllerAnimated:YES
completion:NULL];
}
@end
this is the link to the app, в случае, если вы хотите, чтобы проверить это для себя.
Почтовый файл также содержит образцы фотографий.
Любая помощь приветствуется.
Пожалуйста, добавьте вычисление, которое гласит что вы ожидаете быть равным чему. – danh
этот ответ решает проблему. http://stackoverflow.com/a/38475923/1120688 – harshitgupta