图形上下文栈通过一种栈的形式保存的绘制格式。可以方便我们在设置过绘制格式之后,进行恢复。
①开始绘制之前,保存设备上下文
CGContextSaveGState(ctr);
②渲染之后,恢复设备上下文
CGContextRestoreGState(ctr);
- //图形上下文栈
- void drawLine(CGRect rect, CGContextRef ctr)
- {
- //开始绘制之前,保存设备上下文
- CGContextSaveGState(ctr);
- CGContextMoveToPoint(ctr, 10, 10);
- CGContextAddLineToPoint(ctr, 340, 500);
- [[UIColor redColor]set];
- CGContextSetLineWidth(ctr, 20);
- CGContextSetLineCap(ctr,kCGLineCapRound);
- CGContextStrokePath(ctr);
- //渲染之后,恢复设备上下文
- CGContextRestoreGState(ctr);
- CGContextMoveToPoint(ctr, 350, 100);
- CGContextAddLineToPoint(ctr, 0, 300);
- CGContextStrokePath(ctr);
- }