2010-01-09 12 views
10

Tengo alguna interfaz de usuario basada en CoreAnimation personalizada. Me gustaría implementar el arrastre del mouse de ciertos CALayers y me gustaría pegar una imagen de la capa arrastrada al cursor. El problema es que no puedo obtener el CALayer (que no está basado en imágenes/.contents) en una imagen de algún tipo, como CGImageRef o NSImage. ¿Algunas ideas?¿Cómo volcar CALayer en CGImageRef?

Respuesta

10

CALayer tiene un método renderInContext:, que acepta un CGContextRef.
Después de representar en el contexto, puede obtener un CGImageRef llamando al CGBitmapContextCreateImage(CGContextRef context).

Ya he respondido una pregunta similar here.