2014-02-27 4 views
0

쉬운 게임을 개발하려고합니다. 그런데, 나는이 문제를 내 UIImage으로 보았다. 이미지를 가져올 때 볼 자체가 아니라이 공에 성가신 배경이 표시됩니다. 따라서이 공을 가지고 노는 경우이 배경은 UIView 색과 일치해야합니다. 그렇지 않으면 이상하게 보일 것입니다. 이 문제를 어떻게 해결합니까?원하는 모양으로 이미지 자르기 방법

+0

입니까? – Jing

+0

내 이미지가 지원 파일에 있습니다. 실제 이미지를 업로드 하시겠습니까? 흰색 배경색을 가진 단순한 검은 색 공입니다. – chanpkr

+1

투명한 배경을 가진 검은 공을 사용하지 않는 이유는 무엇입니까? 더 쉽습니다. – Jing

답변

0

당신은 마스크와 마스크 모양의 이미지를 얻기 위해 다음 코드를 사용할 수 있습니다 : 이미지가

//beCroppedImage is the image be cropped, maskImage is a image with a white background color and a black sharp that ever you want. 
theShapeImage = [beCroppedImage maskImageWithMask:maskImage]; 



- (UIImage *)maskImageWithMask:(UIImage*)mask { 
    CGImageRef imgRef = [self CGImage]; 
    CGImageRef maskRef = [mask CGImage]; 
    CGImageRef actualMask = CGImageMaskCreate(CGImageGetWidth(maskRef), 
               CGImageGetHeight(maskRef), 
               CGImageGetBitsPerComponent(maskRef), 
               CGImageGetBitsPerPixel(maskRef), 
               CGImageGetBytesPerRow(maskRef), 
               CGImageGetDataProvider(maskRef), NULL, false); 
    CGImageRef masked = CGImageCreateWithMask(imgRef, actualMask); 
    UIImage *image = [UIImage imageWithCGImage:masked]; 
    CGImageRelease(masked); 
    CGImageRelease(actualMask); 
    return image; 
}