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 )

  • 相关阅读:
    责任链模式
    状态模式
    命令模式
    策略模式
    迭代器模式
    适配器模式
    装饰模式
    合成模式
    brew php 提示
    sarafi浏览器iframe跨域cookie无效的处理方案(笨方法,看官莫笑)
  • 原文地址:https://www.cnblogs.com/shifu/p/6274957.html
Copyright © 2011-2022 走看看