J'ai également vu cette façon de faire (que j'utilise sur UIButtons
pour les états Normal et Sélectionné, car les boutons ne sont pas resize
pour s'adapter). Le crédit revient à l'auteur original, quel qu'il soit.
Créez d'abord un fichier .h et .m vide appelé UIImageResizing.h
y UIImageResizing.m
// Put this in UIImageResizing.h
@interface UIImage (Resize)
- (UIImage*)scaleToSize:(CGSize)size;
@end
// Put this in UIImageResizing.m
@implementation UIImage (Resize)
- (UIImage*)scaleToSize:(CGSize)size {
UIGraphicsBeginImageContext(size);
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextTranslateCTM(context, 0.0, size.height);
CGContextScaleCTM(context, 1.0, -1.0);
CGContextDrawImage(context, CGRectMake(0.0f, 0.0f, size.width, size.height), self.CGImage);
UIImage* scaledImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return scaledImage;
}
@end
Incluez ce fichier .h dans le fichier .m dans lequel vous allez utiliser la fonction, puis appelez-la comme ceci :
UIImage* image = [UIImage imageNamed:@"largeImage.png"];
UIImage* smallImage = [image scaleToSize:CGSizeMake(100.0f,100.0f)];
0 votes
La façon de le faire en 2019, nshipster.com/image-resizing