HSNN
HSNN

Reputation: 531

How to draw a UIBezierPath onto an image in iOS?

What's the easiest and least performance intensive way to achieve this?

Right now i have a UIBezierPath with over 60000 lines. I want to create an image from it that will later be moved around on-screen and stretched.

Upvotes: 0

Views: 4055

Answers (1)

architectpianist
architectpianist

Reputation: 2552

Just create a graphics context and draw your path into it, like this:

UIGraphicsBeginImageContextWithOptions(path.bounds.size, NO, 0.0); //size of the image, opaque, and scale (set to screen default with 0)
[path fill]; //or [path stroke]
UIImage *myImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

If you're planning on moving the image around, you'll need to draw it into your view, or preferably a UIImageView that's a subview of that view. This is faster than redrawing your view every time the user moves his finger.

Hope this helps!

Upvotes: 9

Related Questions