iOS等比例缩放图片

//等比例缩小

-(UIImage *)ScalingImage:(UIImage *)image

{

    CGRect rect = CGRectMake(0, 0, image.size.width/1.8, image.size.height/1.8);

    UIGraphicsBeginImageContext(rect.size);

    [image drawInRect:rect];

    UIImage *scalingImage = UIGraphicsGetImageFromCurrentImageContext();

    UIGraphicsEndImageContext();

    

    return scalingImage;

}


//缩放图片大小

- (UIImage*)scaleWithSize:(CGSize)size {

    CGFloat imageWidth = self.size.width;

    CGFloat imageHeight = self.size.height;

    

    CGFloat wScale = imageWidth / size.width;

    CGFloat hScale = imageHeight / size.height;

    NSLog(@"w = %f, h = %f", wScale, hScale);

    

    CGSize newSize = self.size;

    BOOL needRedraw;

    if (wScale > hScale && wScale > 1) {

        newSize.width = size.width;

        newSize.height = imageHeight / wScale;

        needRedraw = YES;

    }

    else if (hScale > wScale && hScale > 1) {

        newSize.width = imageWidth / hScale;

        newSize.height = size.height;

        needRedraw = YES;

    }

    

    NSLog(@"w = %f, h = %f", newSize.width, newSize.height);

    

    if (needRedraw) {

        UIGraphicsBeginImageContext(newSize);

        [self drawInRect:CGRectMake(0, 0, newSize.width, newSize.height)];

        self = UIGraphicsGetImageFromCurrentImageContext();

        UIGraphicsEndImageContext();

    }

    

    return self;

}




你可能感兴趣的:(ios,iOS等比例缩放图片,iOS缩放图片)