Как я уменьшаю качество/размер Изображения в цели-c iPhone?

У меня есть приложение, которое позволяет пользователю сделать снимок с его iPhone и использовать его в качестве фонового изображения для приложения. Я использую UIImagePickerController позволять пользователю сделать снимок и установить фон UIImageView отобразите к возвращенному UIImage объект.

IBOutlet UIImageView *backgroundView;

-(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingImage:(UIImage *)image editingInfo:(NSDictionary *)editingInfo {
 backgroundView.image = image;
 [self dismissModalViewControllerAnimated:YES];
}

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

Заранее спасибо.

12
задан Sam Spencer 23 November 2012 в 20:28
поделиться

1 ответ

Вы можете создать графический контекст, нарисуйте изображение в это в нужной масштабе и используйте возвращенное изображение. Например:

UIGraphicsBeginImageContext(CGSizeMake(480,320));

CGContextRef            context = UIGraphicsGetCurrentContext();

[image drawInRect: CGRectMake(0, 0, 480, 320)];

UIImage        *smallImage = UIGraphicsGetImageFromCurrentImageContext();

UIGraphicsEndImageContext();    
16
ответ дан 2 December 2019 в 04:25
поделиться
Другие вопросы по тегам:

Похожие вопросы: