В iPhoto нет миниатюр для изображений, сохраненных с помощью UIImageWriteToSavedPhotosAlbum
Мое приложение загружает изображения JPEG из Интернета и сохраняет их на устройстве с помощью UIImageWriteToSavedPhotosAlbum. Все работает отлично, за исключением одной проблемы: когда я просматриваю библиотеку фотографий iPhone с помощью iPhoto, на некоторых изображениях нет миниатюр - вместо них отображается пустой пунктирный прямоугольник. Эти приложения для загрузки изображений в формате JPEG также генерируются моим приложением в результате обработки изображений, снятых камерой устройства или выбранных из библиотеки фотографий. Может быть, мне нужно сделать что-то особенное во время обработки изображения, чтобы сделать миниатюры видимыми?
1 ответ
Попробуйте что-то вроде
UIImage * original = [UIImage imageNamed:@"sample.jpg"]; /* make image from CGRef */
NSData * imdata = UIImagePNGRepresentation ( original ); /* get PNG representation */
UIImage * png = [UIImage imageWithData:imdata]; /* wrap UIImage around PNG representation */
UIImageWriteToSavedPhotosAlbum(png,
self,
@selector(image:didFinishSavingWithError:contextInfo:),
nil);
Это преобразует ваше изображение в формат PNG, а миниатюра отобразится в Photos.app.