, 나는 다음과 같이 수행 할 결과 이미지 마스크 :아이폰 OS 캡처 화면은 다음 자르고 내 응용 프로그램에서
1 - 화면 캡처를,이 부분은 나를 위해, 나는 다음을 사용하고 아무 문제가 없다 코드 :
- (UIImage *)captureScreen {
UIGraphicsBeginImageContextWithOptions(self.view.frame.size, YES, 0.0f);
[self.view.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return image;
}
2 - 나는
- (UIImage *)cropImage(UIImage *)image inRect:(CGRect)rect {
CGImageRef imageRef = CGImageCreateWithImageInRect(image.CGImage, rect);
UIImage *resultImage = [UIImage imageWithCGImage:imageRef];
CGImageRelease(imageRef);
return resultImage;
}
3이 기능을 사용하여 이미지를 잘립니다 - 그럼 난 순수한 검은 색과 흰색 마스크로 자른 이미지를 마스크
- (UIImage *)maskImage:(UIImage *)image withMask:(UIImage *)maskImage {
CGImageRef maskRef = maskImage.CGImage;
CGImageRef mask = CGImageMaskCreate(CGImageGetWidth(maskRef),
CGImageGetHeight(maskRef),
CGImageGetBitsPerComponent(maskRef),
CGImageGetBitsPerPixel(maskRef),
CGImageGetBytesPerRow(maskRef),
CGImageGetDataProvider(maskRef), NULL, false);
CGImageRef maskedRef = CGImageCreateWithMask([image CGImage], mask);
UIImage *resultImage = [UIImage imageWithCGImage:maskedRef];
CGImageRelease(mask);
CGImageRelease(maskedRef);
return resultImage;
}
그러나 내가 얻은 결과 이미지는 마스크 모양을 벗어나면 투명하지 않고 이미지가 검은 색으로 표시된다는 것입니다. 아무도 나를 도울 수 있습니까?