2010-04-05 4 views
2

검은 색/흰색 이미지로보기를 가릴 수 있다고 들었는데 검은 색은 완전히 투명하고 흰색은보기를 의미합니다. clipsToBounds의 가장 큰 차이점은보기가 원이나 별 같은 재미있는 모양으로 잘릴 수 있다는 점입니다. 내가 어떻게 할 수 있니? 함수흑백 이미지로보기를 마스크하는 방법은 무엇입니까?

void CGContextClipToMask (
    CGContextRef c, 
    CGRect rect, 
    CGImageRef mask 
); 

에서

답변

4
CGImageRef maskRef = <some cgimage>; 
CGImageRef mask = CGImageMaskCreate(CGImageGetWidth(maskRef), CGImageGetHeight(maskRef), CGImageGetBitsPerComponent(maskRef), CGImageGetBitsPerPixel(maskRef), CGImageGetBytesPerRow(maskRef), CGImageGetDataProvider(maskRef), NULL, YES); 
CGContextClipToMask(context, maskRect, mask); 
CGImageRelease(mask); 
4

봐 나는 당신이 원하는 정확히 수행 올바르게 이해합니다.

1
CGImageRef maskImage = <Black-White Image> 
const CGFloat components[6] = {0,0,0,0,0,0}; // mask black color 
CGImageRef mask = CGImageCreateWithMaskingColors(maskImage, components); 
CGContextClipToMask(ctx, mask) 
// draw images will be masked 
관련 문제