Изменение размера UIImage и сохранение - PullRequest
0 голосов
/ 22 июня 2011

Я пытаюсь выяснить, как я могу сжать и сохранить UIImage, прочитать его позже, а затем преобразовать обратно в исходный размер без потери качества. Мне удалось выполнить изменение размера и сохранение, но проблема в том, что если я сохраняю его меньше, когда я читаю его обратно и расширяю, качество очень плохое. Кто-нибудь знает, как это можно сделать без потери качества изображения?

Ответы [ 2 ]

4 голосов
/ 22 июня 2011

Вы не можете уменьшить изображение, а затем вернуть его обратно без потери качества. Вы не можете сделать что-то из ничего, потеряв данные, вы потеряете данные.

Вам необходимо сохранить две версии изображения, одну большую и одну маленькую. Это очень типичный сценарий при работе с миниатюрами.

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

http://vocaro.com/trevor/blog/2009/10/12/resize-a-uiimage-the-right-way/

0 голосов
/ 18 ноября 2016

Хотя вы не можете увеличить уменьшенное изображение, вы можете отобразить уменьшенное изображение, сохранив ссылку на исходное изображение (которое вы можете сохранить):

UIImage *image = [UIImage imageNamed:@"myImage"];
[image drawInRect: destinationRect];
UIImage *thumbnail = UIGraphicsGetImageFromCurrentImageContext();
UIImageWriteToSavedPhotosAlbum(image,nil,nil,nil);

Параметр destinationRect будет иметь размер в соответствии с размерамиуменьшенной версии.

...