Ответ 1
Во-первых, я предполагаю, что у вас UIBezierPath (iOS), а не NSBezierPath (Mac OS X).
Для этого вам нужно будет использовать основную графику, создать контекст изображения, нарисовать UIImage в этом контексте и затем очистить область, указанную NSBezierPath.
// Create an image context containing the original UIImage.
UIGraphicsBeginImageContext(originalImage.size);
[originalImage drawAtPoint:CGPointZero];
// Clip to the bezier path and clear that portion of the image.
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextAddPath(context,bezierPath.CGPath)
CGContextClip(context);
CGContextClearRect(context,CGRectMake(0,0,originalImage.size.width,originalImage.size.height);
// Build a new UIImage from the image context.
UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();