Chủ Nhật, 26 tháng 3, 2017

Get size image max scale with a frame

***Đây là hàm tính kích thước ảnh fill frame mà ảnh không bị biến dạng:

- (CGSize)getNewSize:(float)x yFrame:(float)y imageWith:(float)a imageHeight:(float)b {
    
    if (x == a && y == b) {     
        return CGSizeMake(a, b);
    }
    else if (x > a && y > b) {        
        if (x - a > y - b) {          
            a = y / b * a;
            b = y;
        } else {
            b = x / a * b;            
            a = x;
        }
    }
    else if (x < a && y < b) {        
        if (a - x > b - y) {          
            b = x / a * b;
            a = x;
        } else {                      
            a = y / b * a;
            b = y;
        }
    }
    else if (x < a && y > b) {        
        b = x / a * b;
        a = x;
    }
    else if (x > a && y < b) {        
        a = y / b * a;
        b = y;
    }
    else if (x == a) {
        a = y / b * a;
        b = y;
    }
    else if (y == b) {
        b = x / a * b;
        a = x;
    }
    return CGSizeMake(a, b);

}

Không có nhận xét nào:

Đăng nhận xét