October 2013
Intermediate to advanced
1053 pages
28h 7m
English
You want to be able to draw rectangles on a graphics context.
Use the CGPathAddRect to add a
rectangle to a path and then draw that path on a graphics
context.
As we learned in Recipe 20.7, you can
construct and use paths quite easily. One of the procedures that you can
use on paths in Core Graphics is CGPathAddRect, which lets you draw rectangles
as part of paths. Here is an example:
-(void)drawRect:(CGRect)rect{/* Create the path first. Just the path handle. */CGMutablePathRefpath=CGPathCreateMutable();/* Here are our rectangle boundaries */CGRectrectangle=CGRectMake(10.0f,30.0f,200.0f,300.0f);/* Add the rectangle to the path */CGPathAddRect(path,NULL,rectangle);/* Get the handle to the current context */CGContextRefcurrentContext=UIGraphicsGetCurrentContext();/* Add the path to the context */CGContextAddPath(currentContext,path);/* Set the fill color to cornflower blue */[[UIColorcolorWithRed:0.20fgreen:0.60fblue:0.80falpha:1.0f]setFill];/* Set the stroke color to brown */[[UIColorbrownColor]setStroke];/* Set the line width (for the stroke) to 5 */CGContextSetLineWidth(currentContext,5.0f);/* Stroke and fill the path on the context */CGContextDrawPath(currentContext,kCGPathFillStroke);/* Dispose of the path */CGPathRelease(path);}
Here we are drawing a rectangle on the path, filling it with cornflower blue, and stroking the edges of the rectangle with brown. Figure 20-22 shows how the ...
Read now
Unlock full access