CGImage (or UIImage) from a CALayer

2019-03-20 18:30发布

问题:

I have created a CALayer (I added several shapes to the layer, but ultimately, I have a single CALayer), and I am having a LOT of trouble adding it to a CGImage. I have found some references to [CALayer renderInContext:ctx], but I am not sure how to implement it.

Has anyone done this before?

回答1:

Try this...

UIGraphicsBeginImageContext(layer.bounds.size);
[layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();


回答2:

Create a bitmap graphics context and use renderInContext: to draw the layer into it. You now have the layer in an image.