zoukankan      html  css  js  c++  java
  • 图片压缩

    //==========================

    // 图像压缩

    //==========================

    - (UIImage *)scaleFromImage:(UIImage *)image

    {

        if (!image)

        {

            return nil;

        }

        NSData  *data       = UIImagePNGRepresentation(image);

        CGFloat dataSize    = data.length/1024;

        CGFloat width       = image.size.width;

        CGFloat height      = image.size.height;

        CGSize  size;

        

        if (dataSize<=50) //小于50k

        {

            return image;

        }

        else if (dataSize <= 100) //小于100k

        {

            size = CGSizeMake(width/1.f, height/1.f);

        }

        else if (dataSize <= 200) //小于200k

        {

            size = CGSizeMake(width/2.f, height/2.f);

        }

        else if (dataSize <= 500) //小于500k

        {

            size = CGSizeMake(width/2.f, height/2.f);

        }

        else if (dataSize <= 1000)//小于1M

        {

            size = CGSizeMake(width/4.f, height/4.f);

        }

        else if (dataSize <= 2000) //小于2M

        {

            size = CGSizeMake(width/4.f, height/4.f);

        }

        else//大于2M

        {

            size = CGSizeMake(width/4.f, height/4.f);

        }

        UIGraphicsBeginImageContext(size);

        [image drawInRect:CGRectMake(0,0, size.width, size.height)];

        UIImage     *newImage   =UIGraphicsGetImageFromCurrentImageContext();

        UIGraphicsEndImageContext();

        if (!newImage)

        {

            return  image;

        }

        return      newImage;

    }

    //新图片的大小 = 原图/ (x.f * x.f )

  • 相关阅读:
    docker部署Nginx
    docker的常用命令
    centos上安装docker
    springcloud负载均衡及Ribbon
    maven下载私服jar
    spring security异常处理的三种方式
    spring security权限控制
    北京理工大学复试上机--2001A
    北京理工大学复试上机--2000
    PAT1067 试密码 (20分)——测试点4分析 一个易错点
  • 原文地址:https://www.cnblogs.com/shifu/p/6274957.html
Copyright © 2011-2022 走看看