我需要按宽度等比例地调整UIImage
的大小,可能有人有有效的代码吗?
例如:
输入:宽度为:900 高度为:675。将其缩小到宽度为:400。
结果:宽度为:400 高度为:300
请帮忙。。
UIImage *image = [UIImage imageNamed:@"SomeImage-900x675"]; // SomeImage-900x675.png
CGFloat targetWidth = 400.0f;
CGFloat scaleFactor = targetWidth / image.size.width;
CGFloat targetHeight = image.size.height * scaleFactor;
CGSize targetSize = CGSizeMake(targetWidth, targetHeight);
UIImage *scaledImage = [image resizedImage:targetSize interpolationQuality:kCGInterpolationHigh];
你可以设置内容模式为.ScaleAspectFill,这样你就可以将UIImageView的大小设置为任意大小,并保留其纵横比。
https://developer.apple.com/reference/uikit/uiviewcontentmode/1622518-scaleaspectfill