课程咨询 :025-66610022

  • iOS设置图片最大尺寸的方法

    发布:达内南京IOS培训      来源:达内新闻      

  • 你如果要做上传头像、社交分享等操作,就需要裁剪图片,一般来说要限制一个最大值,来限制图片既要维持宽高比例,又要让宽高都小于这个最大值 。

    南京达内iOS培训专家教你一个方法,来让图片设置成最大尺寸,并保持等比例。

    压缩图片的原理,是利用Core Graphics来重绘图片

    代码如下:

    /*
     *
     *  压缩图片至目标尺寸
     *
     *  @param sourceImage 源图片
     *  @param maxValue 图片长宽最大值
     *
     *  @return 返回按照源图片的宽、高比例压缩至目标宽、高的UIImage图片
     */
    - (UIImage *)resizeImage:(UIImage *)sourceImage toMaxWidthAndHeight:(CGFloat)maxValue {
        CGSize imageSize = sourceImage.size;

        CGFloat width = imageSize.width;
        CGFloat height = imageSize.height;

        if (width > height && width > maxValue) {
            height = height * (maxValue / width);
            width = maxValue;
        }else if (height > width && height > maxValue) {
            width = width * (maxValue / height);
            height = maxValue;
        }else {
            return sourceImage;
        }

        UIGraphicsBeginImageContext(CGSizeMake(width, height));
        [sourceImage drawInRect:CGRectMake(0, 0, width, height)];

        UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
        UIGraphicsEndImageContext();

        return newImage;
    }

上一篇:苹果发布 iOS 9.3第六个测试版

下一篇:iOS键盘出现/消失通知

最新开班日期  |  更多

3G-IOS软件工程师就业班

3G-IOS软件工程师就业班

开班日期:04-28

3G-IOS软件工程师就业班

3G-IOS软件工程师就业班

开班日期:04-28

3G-IOS软件工程师周末班

3G-IOS软件工程师周末班

开班日期:04-28

3G-IOS软件工程师周末班

3G-IOS软件工程师周末班

开班日期:04-28

  • 地址:南京市玄武区洪武北路121号苏苑大厦5楼
  • 课程培训电话:025-66610022     全国服务监督电话:400-111-8989
  • 服务邮箱 tousu@tedu.cn
  • 2001-2016 达内时代科技集团有限公司 版权所有 京ICP证8000853号-56