Enmascarar una imagen usando Bezierpath con la resolución completa de la imagen

Hola, tengo una ruta (forma) y una imagen de alta resolución. Hago que la imagen de alta resolución sea AspectFit dentro de la vista en la que dibujo el camino y quiero enmascarar la imagen con el camino pero con la resolución completa de la imagen, no con la resolución en la que vemos el camino. El problema es que funciona perfectamente cuando no los amplío para el enmascaramiento de alta resolución, pero cuando lo hago, todo está en mal estado. La máscara se estira y los orígenes no tienen sentido.

Todo lo que quiero es poder ampliar la ruta con la misma relación de aspecto de la imagen (a la resolución completa de la imagen) y posicionarla correctamente para que pueda enmascarar la imagen de alta resolución correctamente. He intentado esto:

¿Enmascarar CGContext con un CGPathRef?

y esto

Crear máscara con CGImageMaskCreate es todo negro (iphone)

y esto

Clip UIImage en UIBezierPath (sin enmascarar)

ninguno de los cuales funciona correctamente cuando intento enmascarar una imagen de alta calidad (más grande que la resolución de pantalla)

EDITAR Publiqué un proyecto de trabajo para mostrar el problema entre el enmascaramiento de calidad normal (a la resolución de la pantalla) y el enmascaramiento de alta calidad (a la resolución de la imagen) en github. Realmente agradecería cualquier ayuda.https://github.com/Reza-Abdolahi/HighResMasking

Respuestas a la pregunta(2)

Su respuesta a la pregunta