iOS CGContextRef使用簡要教程

來源:互聯網
上載者:User

標籤:

Graphics Context是圖形上下文,也可以理解為一塊畫布,我們可以在上面進行繪畫操作,繪製完成後,將畫布放到我們的view中顯示即可,view看作是一個畫框.

CGContextRef功能強大,我們藉助它可以畫各種圖形。開發過程中靈活運用這些技巧,可以協助我們提供代碼水平。

說到畫圖,我就立馬想到:我的數學公式都快忘完了。

1.寫文字

- (void)drawRect:(CGRect)rect { //獲得當前畫板 CGContextRef ctx = UIGraphicsGetCurrentContext(); //顏色 CGContextSetRGBStrokeColor(ctx, 0.2, 0.2, 0.2, 1.0); //畫線的寬度 CGContextSetLineWidth(ctx, 0.25); //開始寫字 [@"我是文字" drawInRect:CGRectMake(10, 10, 100, 30) withFont:font]; [super drawRect:rect]; }

2.畫直線

- (void)drawRect:(CGRect)rect { //獲得當前畫板 CGContextRef ctx = UIGraphicsGetCurrentContext(); //顏色 CGContextSetRGBStrokeColor(ctx, 0.2, 0.2, 0.2, 1.0); //畫線的寬度 CGContextSetLineWidth(ctx, 0.25); //頂部橫線 CGContextMoveToPoint(ctx, 0, 10); CGContextAddLineToPoint(ctx, self.bounds.size.width, 10); CGContextStrokePath(ctx); [super drawRect:rect]; }

3.畫圓

- (void)drawRect:(CGRect)rect { //獲得當前畫板 CGContextRef ctx = UIGraphicsGetCurrentContext(); //顏色 CGContextSetRGBStrokeColor(ctx, 0.2, 0.2, 0.2, 1.0); //畫線的寬度 CGContextSetLineWidth(ctx, 0.25); //void CGContextAddArc(CGContextRef c,CGFloat x, CGFloat y,CGFloat radius,CGFloat startAngle,CGFloat endAngle, int clockwise)1弧度=180°/π (≈57.3°) 度=弧度×180°/π 360°=360×π/180 =2π 弧度 // x,y為圓點座標,radius半徑,startAngle為開始的弧度,endAngle為 結束的弧度,clockwise 0為順時針,1為逆時針。 CGContextAddArc(ctx, 100, 20, 20, 0, 2*M_PI, 0); //添加一個圓 CGContextDrawPath(ctx, kCGPathStroke); //繪製路徑 [super drawRect:rect]; }

4.畫矩形

- (void)drawRect:(CGRect)rect { //獲得當前畫板 CGContextRef ctx = UIGraphicsGetCurrentContext(); //顏色 CGContextSetRGBStrokeColor(ctx, 0.2, 0.2, 0.2, 1.0); //畫線的寬度 CGContextSetLineWidth(ctx, 0.25); CGContextAddRect(ctx, CGRectMake(2, 2, 30, 30)); CGContextStrokePath(ctx); [super drawRect:rect]; }

 

iOS CGContextRef使用簡要教程

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.