Tak, na pewno można z Quartz.
Istnieje tutorial, który pokazuje, jak wykonać UIImage i zamaskować jego część.
http://iosdevelopertips.com/cocoa/how-to-mask-an-image.html
Oto kod z tej strony (okrywać to idzie w dół z jakiegoś powodu)
- (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 masked = CGImageCreateWithMask([image CGImage], mask);
return [UIImage imageWithCGImage:masked];
}
Dzięki, próbuję tego teraz. – rein
Dobrze @Sixten, myślę, że to brzmi bardziej jak to, co chciał +1 –
Działa idealnie (minus niektóre bóle głowy z CGImages odwracane podczas rysowania). Dzięki. – rein