Crear UIImage recorte

tengo unUIView contiene 2UIImageViews - Un marco y una imagen detrás del marco. El marco no es un rectángulo, es una forma irregular. El usuario puede manipular la imagen detrás del marco (hacer zoom, rotar y desplazarse) y cuando hayan terminado, quiero capturar el recorte de la imagen dentro del marco, no la imagen y el marco juntos. ¿Hay alguna manera de hacer esto?

Me las arreglé para aplanar la imagen y el marco en una sola imagen como se muestra a continuación, pero solo quiero la imagen, que si se extrae correctamente tendrá un borde en la forma del marco.

<code>- (IBAction)renderPhoto:(id)sender {
    //Combine the layers into a single image
    UIView *canvas = [[[sender superview] subviews] objectAtIndex:0];
    UIGraphicsBeginImageContext(canvas.bounds.size);
    [canvas.layer renderInContext:UIGraphicsGetCurrentContext()];
    UIImage *combinedImage = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
}
</code>

Respuestas a la pregunta(2)

Su respuesta a la pregunta