2011-10-03 2 views
2

UIImage 배경색을 제거하고 투명하게 만들고 싶습니다.UIImage 배경색을 제거하고 투명하게 만드는 방법?

다음 코드는 흰색 배경색을 검정색으로 변경하는 것뿐입니다.

UIImage* createColorMaskedImage(UIImage* originalImage){ 
float maskingColors[6] = {0xEE, 0xFF, 0xEE, 0xFF, 0xEE, 0xFF}; 
CGImageRef maskedImageRef = CGImageCreateWithMaskingColors(originalImage.CGImage,  maskingColors); 
UIImage* maskedImage = [UIImage imageWithCGImage:maskedImageRef]; 
CGImageRelease(maskedImageRef); 
return maskedImage; 
} 


UIImage *watchImage = [UIImage imageNamed:@"watch2.jpg"]; 
// Mask image 
colorMaskImage_ = createColorMaskedImage(watchImage); 
//create image view and set its poistion. 
UIImageView* maskImageView = [[UIImageView alloc] initWithImage:colorMaskImage_]; 
CGRect frame = maskImageView.frame; 
frame.origin = CGPointMake(80,60); 
maskImageView.frame = frame; 
maskImageView.backgroundColor = [UIColor clearColor]; 
[self.view addSubview:maskImageView]; 
[maskImageView release]; 
+0

@ereilin :이 질문은 코코아가 아니라 코코아 터치에 관한 것입니다. –

답변

0

watch2.jpg에는 투명도가있는 알파 값이 없을 것입니다.

+0

예 이미지에 알파 값이 없습니다. 내가 어떻게 투명하게 만들 수 있니? 제발 날 제안 해 줄래? –

+0

먼저 GIF 또는 PNG를 사용해야하며 JPEG 표준 GPEG는 24 비트 RGB 만 저장하지 않습니다. 둘째, Photoshop과 같은 이미지 편집 도구를 사용하여 배경색을 투명하게 변경해야합니다. 완료되면이 이미지를 표시 할 때 투명한 영역이있는 곳이면 어디에서나 레이어 나 뷰를 볼 수 있어야합니다. – mahboudz

+0

감사합니다 mahboudz .. –

관련 문제