iOS -- 網絡/本地 圖片 按自定義比例縮放 不失真 方法


+ (CGRect )scaleImage:(UIImage *)image toSize:(CGRect)newSize
{
    float actualHeight = image.size.height;
    float actualWidth = image.size.width;
    float imgRatio = actualWidth/actualHeight;
    float maxRatio = newSize.size.width/newSize.size.height;
    
    if(imgRatio!=maxRatio){
        if(imgRatio < maxRatio){
            imgRatio = newSize.size.height/ actualHeight;
            actualWidth = imgRatio * actualWidth;
            actualHeight = newSize.size.height;
        }
        else{
            imgRatio = newSize.size.width / actualWidth;
            actualHeight = imgRatio * actualHeight;
            actualWidth = newSize.size.width;
        }
    }
    CGRect rect = CGRectMake(0.0, 0.0, actualWidth, actualHeight);
    return rect;
}
調用時候 rect的寬和高 就是所需要得新的圖片大小

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM