Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @synthesize croppedImage;
- - (void)viewDidLoad {
- [super viewDidLoad];
- NSString *inputPath = [[NSBundle mainBundle] pathForResource:@"images" ofType:@"png"];
- NSString *maskPath = [[NSBundle mainBundle] pathForResource:@"Unknown" ofType:@"png"];
- UIImage *inputImage = [[UIImage alloc] initWithContentsOfFile:inputPath];
- UIImage *mask = [[UIImage alloc] initWithContentsOfFile:maskPath];
- UIImage *cutOut = [self maskImage:inputImage withMask:mask];
- croppedImage.image = cutOut;
- }
- - (UIImage*) maskImage:(UIImage *) image withMask:(UIImage *) mask
- {
- CGImageRef imageReference = image.CGImage;
- CGImageRef maskReference = mask.CGImage;
- CGImageRef imageMask = CGImageMaskCreate(CGImageGetWidth(maskReference),
- CGImageGetHeight(maskReference),
- CGImageGetBitsPerComponent(maskReference),
- CGImageGetBitsPerPixel(maskReference),
- CGImageGetBytesPerRow(maskReference),
- CGImageGetDataProvider(maskReference),
- NULL, // Decode is null
- YES // Should interpolate
- );
- CGImageRef maskedReference = CGImageCreateWithMask(imageReference, imageMask);
- CGImageRelease(imageMask);
- UIImage *maskedImage = [UIImage imageWithCGImage:maskedReference];
- CGImageRelease(maskedReference);
- return maskedImage;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement