iOS调整大小并保存为调整大小的图像



代码工作正常,但当我保存此图像时,它保存为原始大小。如何保存为缩放后的大小?

- (UIImage*) scaleImage:(UIImage*)image toSize:(CGSize)newSize {
CGSize scaledSize = newSize;
float scaleFactor = 1.0;
if( image.size.width > image.size.height ) {
    scaleFactor = image.size.width / image.size.height;
    scaledSize.width = newSize.width;
    scaledSize.height = newSize.height / scaleFactor;
}
else {
    scaleFactor = image.size.height / image.size.width;
    scaledSize.height = newSize.height;
    scaledSize.width = newSize.width / scaleFactor;
}
UIGraphicsBeginImageContextWithOptions( scaledSize, NO, 0.0 );
CGRect scaledImageRect = CGRectMake( 0.0, 0.0, scaledSize.width, scaledSize.height );
[image drawInRect:scaledImageRect];
UIImage* scaledImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
   return scaledImage;
}

将UIGraphicsBeginImageContextWithOptions中的比例因子设置为1.0。将其设置为0.0将设置比例为设备的屏幕比例因子。

在UIImageView中有一个名为"mode"的属性。

最新更新