圖片剪裁iOS代碼

jopen 10年前發布 | 29K 次閱讀 IOS iOS開發 移動開發

實現按照某一長寬比例,剪裁圖片的上部和下部,保留中間的內容。當然也可以自定義需要剪裁留下的區域。在使用前需要添加Framework:CoreGraphics.framework。

代碼:

    - (UIImage*) crop:(UIImage*)theImage{  
        // Get size of current image  
        CGSize size = [theImage size];  

        // Create rectangle that represents a cropped image  
        CGFloat desiredRatio = 1.2;  

        CGFloat croppedWidth = 0.0;  
        CGFloat croppedHeight = 0.0;  

        CGRect rect;  

        if (size.height/size.width >= desiredRatio) {  
            croppedWidth = size.width;  
            croppedHeight = size.width * desiredRatio;  
            CGFloat difference = (size.height-croppedHeight)/2;  
            rect = CGRectMake(0.0, difference ,croppedWidth, croppedHeight);  
        }  
        else{  
            return theImage;  
        }  

        // Create bitmap image from original image data,  
        // using rectangle to specify desired crop area  
        CGImageRef imageRef = CGImageCreateWithImageInRect([theImage CGImage], rect);  
        UIImage *croppedImage = [UIImage imageWithCGImage:imageRef];  
        CGImageRelease(imageRef);  
        return croppedImage;  
    }  

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!