美文网首页
压缩图片分辨率

压缩图片分辨率

作者: 番茄红豆汤 | 来源:发表于2019-04-23 11:25 被阅读0次
#pragma mark - 压缩图片分辨率
-(UIImage *)scaleImage: (UIImage *)image{
    
//    CGSize size = CGSizeMake(image.size.width * scaleFloat, image.size.height * scaleFloat);
//    
//    UIGraphicsBeginImageContext(size);
//    CGContextRef context = UIGraphicsGetCurrentContext();
//    CGAffineTransform transform = CGAffineTransformIdentity;
//    
//    transform = CGAffineTransformScale(transform, scaleFloat, scaleFloat);
//    CGContextConcatCTM(context, transform);
//    
//    // Draw the image into the transformed context and return the image
//    [image drawAtPoint:CGPointMake(0.0f, 0.0f)];
//    UIImage *newimg = UIGraphicsGetImageFromCurrentImageContext();
//    UIGraphicsEndImageContext();
//    
//    return newimg;
//    CGSize newSize = CGSizeMake(600, 600);
    
    CGFloat scaleSize = 600;
    
    CGFloat width = image.size.width;
    CGFloat height = image.size.height;

    if (width == 0 || height == 0){
        return image;
    }
    if(width < scaleSize && height < scaleSize){
        return image;
    }
    //压缩比例
    CGFloat scaleFactor;
    //图片长宽,数值大的压缩到600,剩下按长宽比压缩
    if (width > height) {
        scaleFactor = scaleSize / width;
    }else{
        scaleFactor = scaleSize / scaleSize;
    }
    
    CGFloat scaledWidth = width * scaleFactor;
    CGFloat scaledHeight = height * scaleFactor;
    CGSize targetSize = CGSizeMake(scaledWidth,scaledHeight);
    UIGraphicsBeginImageContext(targetSize);
    [image drawInRect:CGRectMake(0,0,scaledWidth,scaledHeight)];
    UIImage* newImage = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    
    return newImage;
}

相关文章

  • 每日一问(二十三)Android 如何加载加载大图长图

    1.展示高分辨率图片的时候,最好先将图片进行压缩2.比例大小压缩3.质量压缩4.使用图片压缩库进行压缩5.如果加载...

  • ios 图片处理-内存疯长的解决办法

    #pragma mark --- 高分辨率的图片禁止图片解压缩操作 [[SDImageCache sharedIm...

  • App瘦身、性能优化总结

    App瘦身 资源瘦身 使用tinypng压缩PNG图片。视频可以通过 Final cut等软件进行分辨率压缩。音频...

  • 来到简书,先提点意见

    1、对图片支持不好,对于小于1024*768分辨率的图片能不能不压缩,图片也不大,压缩后看不清了 2、无背景色,至...

  • IOS 中UIImage用代码压缩

    IOS中UIImage的数据量压缩有两种方式,一种是图片尺寸不变,降低图片分辨率,代码方法为: //1.0为压缩系...

  • 图片压缩

    为何要压缩 1、体积的原因如果你的图片是要准备上传的,那动辄几M的大小肯定不行的,况且图片分辨率大于设备分辨率的话...

  • Android加载大图长图方案简析

    本文只是简要分析安卓端自带压缩与加载方案 1,高效加载加载大图 展示高分辨率图片的时候,最好先将图片进行压缩。 B...

  • 压缩图片分辨率

  • 图片处理

    为了适应各种分辨率的显示和速度快,需要将图片进行压缩或者裁剪 前端图片处理 cropperjs可以实现图片的裁剪和...

  • Android图片的高效加载

    如果高效的加载图片? 减少图片占用过多的内存资源,防止内存溢出。在展示高分辨率图片的时候,最好先将图片进行压缩;使...

网友评论

      本文标题:压缩图片分辨率

      本文链接:https://www.haomeiwen.com/subject/wuzmgqtx.html