ライブラリから選択した画像を表示している画像ビューがあります。高品質の画像を表示するために、以下の方法を使用して画像を再スケーリングしました。私が得ている画質は完璧ですが、新しく作成した画像のサイズに応じて imageView フレームを設定する必要があります。しかし、 newImage.size.width を使用すると、元の画像ビューの幅が得られます。表示された画像サイズに応じて画像ビューフレームを設定するのを手伝ってください。前もって感謝します
-(UIImage *)scaleImage:(UIImage *)img toRectSize:(CGRect)screenRect
{
UIGraphicsBeginImageContext(screenRect.size);
float hfactor = img.size.width / screenRect.size.width;
float vfactor = img.size.height / screenRect.size.height;
float factor = MAX(hfactor, vfactor);
float newWidth = img.size.width / factor;
float newHeight = img.size.height / factor;
float leftOffset = (screenRect.size.width - newWidth) / 2;
float topOffset = (screenRect.size.height - newHeight) / 2;
CGRect newRect = CGRectMake(leftOffset, topOffset, newWidth, newHeight);
[img drawInRect:newRect blendMode:kCGBlendModePlusDarker alpha:1];
UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return newImage;
}