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

标签 ios objective-c uiimageview uiimage

代码工作正常,但当我保存此图像时,它保存为原始大小。我怎样才能将其保存为缩放后的尺寸?

- (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 会将比例设置为设备的屏幕比例因子。

关于iOS 调整大小并保存为调整后的图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33033613/

相关文章:

ios - NSUserDefaults 不会一致地加载数据

iphone - 自定义 MKPinAnnotation 标注气泡类似于默认标注气泡

iphone - 使用 timeIntervalSince 1970 的数学题

ios - XCode 7 上不显示 UIImageView 网络图像

swift - ScrollView 中的图像不可滚动

ios - 以编程方式启动和关闭 UINavigationView

IOS iMessage扩展截图检测

swift - 如何修复 'Swift Protocols/Delegates setting UIImages - Fatal error: Unexpectedly found nil while implicitly unwrapping an Optional value'?

ios - 将数据传递到tableViewController时出错

iphone - 不使用 iPhone 时关闭加速计