im используя этот код для изменения размера изображения.UIImage Resize с соотношением сторон -> SAVE JPG -> LOAD -> изображение загружено в два раза больше
- (UIImage*)resizeToSize:(CGSize)size {
float height = self.size.height;
float width = self.size.width;
if (width > size.width) {
width = size.width;
height = size.width/(self.size.width/self.size.height);
}
if (height > size.height) {
height = size.height;
width = size.height/(self.size.height/self.size.width);
}
NSLog(@"Resize to size %@",NSStringFromCGSize(size));
if (height == self.size.height && width == self.size.width) {
return self;
}
CGSize newSize = CGSizeMake(width, height);
UIGraphicsBeginImageContextWithOptions(newSize, YES, 0.0);
[self drawInRect:CGRectMake(0, 0, newSize.width, newSize.height)];
UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
NSLog(@"Resized %@",NSStringFromCGSize(newImage.size));
return newImage;
}
Изображение изменяется и в следующем шаге я сохранить его с помощью [UIImageJPEGRepresentation (изображение, 1,0) WriteToFile: pngPath атомарно: ДА] ;.
После этого я загружаю файл, а размер изображения в два раза больше, любой подсказку почему?
Спасибо!
если я установил @ 2x в имени файла, будет ли он работать для отображения не сетчатки? Thx – Pion
Нет. Перед изменением имени файла вам необходимо проверить масштаб изображения. –