Я знаю, что при уменьшении изображения вы должны ожидать некоторую потерю качества, но когда я назначаю изображение UIButton с размером (75,75), он имеет отличное качество.Изображение теряет качество при масштабировании
Когда я масштабирую изображение до размера (75,75) для копирования/вставки с использованием UIPboardboard, у него действительно плохое качество.
фона: Мое приложение является расширение клавиатуры, поэтому у меня есть кнопки с присвоенными изображениями и когда они щелкают, я получаю изображение с помощью кнопки, масштабировать его, чтобы быть правильный размер, скопируйте его в UIPasteboard, то вставить.
Код:
Вот мой код для обнаружения нажатия кнопок и копирование изображения:
- (IBAction) clickedImage:(id)sender {
UIButton *btn = sender;
UIImage *scaledImage = btn.imageView.image;
UIImage *newImage = [scaledImage imageWithImage:scaledImage andSize:CGSizeMake(75, 75)];
NSData *imgData = UIImagePNGRepresentation(newImage);
UIPasteboard *pasteboard = [UIPasteboard generalPasteboard];
[pasteboard setData:imgData forPasteboardType:[UIPasteboardTypeListImage objectAtIndex:0]];
}
И у меня есть категория UIImage с помощью метода imageWithImage:andSize:
для масштабирования изображения. Это метод масштабирования:
- (UIImage*)imageWithImage:(UIImage*)image andSize:(CGSize)newSize {
// Create a bitmap context.
UIGraphicsBeginImageContextWithOptions(newSize, NO, image.scale);
[image drawInRect:CGRectMake(0,0,newSize.width,newSize.height)];
UIImage* newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return newImage;
}
Что не имеет смысла в том, что, когда я положил изображение в UIButton он масштабируется до точного такого же размера, как когда я масштабироваться с помощью кода, но качество пути лучше для UIButton, чем когда я возвращаю масштабированное изображение. Что-то не так с моим кодом масштабирования? Кто-нибудь знает, почему происходит такое снижение качества между двумя изображениями?
Вы извлекаете изображение с помощью кнопки. То же самое, если вы создаете новый 'UIImage' из ресурса? – Losiowaty
@ Losiowaty да, я пробовал создать новый UIImage, и это то же самое –
Являются ли эти изображения лучше представлены в виде векторной графики, а затем выводятся при любом масштабировании? –