Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save mayankbaluni/152b14df8de8df94ce33b3727b23f77d to your computer and use it in GitHub Desktop.
Save mayankbaluni/152b14df8de8df94ce33b3727b23f77d to your computer and use it in GitHub Desktop.

Revisions

  1. @akshay1188 akshay1188 renamed this gist Feb 10, 2013. 1 changed file with 0 additions and 0 deletions.
    File renamed without changes.
  2. @akshay1188 akshay1188 renamed this gist Feb 10, 2013. 1 changed file with 4 additions and 2 deletions.
    6 changes: 4 additions & 2 deletions whatsapp-image-compression → gistfile1.m
    Original file line number Diff line number Diff line change
    @@ -5,15 +5,17 @@ - (UIImage *)compressImage:(UIImage *)image{
    float maxWidth = 800.0;
    float imgRatio = actualWidth/actualHeight;
    float maxRatio = maxWidth/maxHeight;
    float compressionQuality = 0.5;
    float compressionQuality = 0.5;//50 percent compression

    if (actualHeight > maxHeight || actualWidth > maxWidth) {
    if(imgRatio < maxRatio){
    //adjust width according to maxHeight
    imgRatio = maxHeight / actualHeight;
    actualWidth = imgRatio * actualWidth;
    actualHeight = maxHeight;
    }
    else if(imgRatio > maxRatio){
    //adjust height according to maxWidth
    imgRatio = maxWidth / actualWidth;
    actualHeight = imgRatio * actualHeight;
    actualWidth = maxWidth;
    @@ -31,4 +33,4 @@ - (UIImage *)compressImage:(UIImage *)image{
    UIGraphicsEndImageContext();

    return [UIImage imageWithData:imageData];
    }
    }
  3. @akshay1188 akshay1188 renamed this gist Feb 10, 2013. 1 changed file with 0 additions and 0 deletions.
    File renamed without changes.
  4. @akshay1188 akshay1188 created this gist Feb 10, 2013.
    34 changes: 34 additions & 0 deletions gistfile1.m
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,34 @@
    - (UIImage *)compressImage:(UIImage *)image{
    float actualHeight = image.size.height;
    float actualWidth = image.size.width;
    float maxHeight = 600.0;
    float maxWidth = 800.0;
    float imgRatio = actualWidth/actualHeight;
    float maxRatio = maxWidth/maxHeight;
    float compressionQuality = 0.5;

    if (actualHeight > maxHeight || actualWidth > maxWidth) {
    if(imgRatio < maxRatio){
    imgRatio = maxHeight / actualHeight;
    actualWidth = imgRatio * actualWidth;
    actualHeight = maxHeight;
    }
    else if(imgRatio > maxRatio){
    imgRatio = maxWidth / actualWidth;
    actualHeight = imgRatio * actualHeight;
    actualWidth = maxWidth;
    }else{
    actualHeight = maxHeight;
    actualWidth = maxWidth;
    }
    }

    CGRect rect = CGRectMake(0.0, 0.0, actualWidth, actualHeight);
    UIGraphicsBeginImageContext(rect.size);
    [image drawInRect:rect];
    UIImage *img = UIGraphicsGetImageFromCurrentImageContext();
    NSData *imageData = UIImageJPEGRepresentation(img, compressionQuality);
    UIGraphicsEndImageContext();

    return [UIImage imageWithData:imageData];
    }