压缩图片 减少app内存消耗

本文提供了一种使用Objective-C压缩图片的方法,通过等比例缩放并指定JPEG压缩质量来减少图片占用的内存空间。

//压缩图片  解决图片过多  内存过大

+ (UIImage *)newImageWithImage:(UIImage *)image{

    //实现等比例缩放

    float hfactor = image.size.width/KWidth;

    float vfactor = image.size.height/KHeight;

    float factor = fmaxf(hfactor, vfactor);

    

    //画布大小

    CGFloat newWidth = image.size.width/factor;

    CGFloat newHeight = image.size.height/factor;

    CGSize newSize = CGSizeMake(newWidth, newHeight);

    

    UIGraphicsBeginImageContext(newSize);

    [image drawInRect:SetFrame(0, 0, newWidth, newHeight)];

    UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();

    UIGraphicsEndImageContext();

    

    //图像压缩

    NSData *newImageData = UIImageJPEGRepresentation(newImage, 0.5);

    

    return [UIImage imageWithData:newImageData];

}

转载于:https://my.oschina.net/u/2488236/blog/732660

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值