Сохранение / получение JPEG из пользовательской галереи без повторного сжатия

Я пытаюсь найти способ читать и записывать изображения в формате JPEG в пользовательскую галерею (фотоаппарат) без повторного сжатия iOS. UIImage кажется узким местом здесь. Единственный способ сохранения в пользовательской галерее I 'мы нашли UIImageWriteToSavedPhotosAlbum (). Это можно обойти?

На данный момент моя рутина выглядит так:

Спросите UIImagePickerController для фотографии. И когда он сделал FinishPickingMediaWithInfo, сделайте: -

NSData *imgdata = [NSData dataWithData:UIImageJPEGRepresentation([info objectForKey:@"UIImagePickerControllerOriginalImage"], 1)];
[imgdata writeToFile:filePath atomically:NO];

Обрабатывайте JPEG без потерь на диске.

Затем сохраните его обратно:

UIImageWriteToSavedPhotosAlbum([UIImage imageWithContentsOfFile:[self getImagePath]], self, @selector(image:didFinishSavingWithError:contextInfo:), nil);

Вот небольшая анимация того, как выглядит ухудшение качества после 3 проходов:

Очевидно, что с каждым разом становится все хуже, но я не могt автоматизировать сборку деталей, чтобы полностью проверить ее на 50/100/1000 циклов.

Ответы на вопрос(1)

Ваш ответ на вопрос