Quartz2D進階

存取上下文
<pre>`
CGContextRef ctx = UIGraphicsGetCurrentContext();
CGContextSaveGState(ctx);
CGContextMoveToPoint(ctx, 80, 100);
CGContextAddLineToPoint(ctx, 100, 200);
[[UIColor greenColor]set];
CGContextSetLineWidth(ctx, 5);
CGContextStrokePath(ctx);

CGContextRestoreGState(ctx);
CGContextMoveToPoint(ctx, 50, 80);
CGContextAddLineToPoint(ctx, 200, 300);
[[UIColor redColor]set];
CGContextSetLineWidth(ctx, 20);
CGContextStrokePath(ctx);

`</pre>

矩陣操作

<pre>`
CGContextRef ctx = UIGraphicsGetCurrentContext();

//旋轉的時候,是整個layer都旋轉
CGContextRotateCTM(ctx, M_PI_4/2);
//縮放比例
CGContextScaleCTM(ctx, 0.5, 1.5);
//平移,x軸,y軸
CGContextTranslateCTM(ctx, 50, 100);

CGContextAddRect(ctx, CGRectMake(150, 100, 100, 100));

CGContextAddEllipseInRect(ctx, CGRectMake(200, 200, 50, 50));


CGContextStrokePath(ctx);

`</pre>

圖片剪裁

<pre>CGContextRef ctx = UIGraphicsGetCurrentContext(); CGContextAddEllipseInRect(ctx, CGRectMake(100, 100, 60, 60)); CGContextClip(ctx); UIImage *image = [UIImage imageNamed:@"12"]; [image drawAtPoint:CGPointMake(100, 100)];</pre>

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Core Graphics Framework是一套基于C的API框架,使用了Quartz作為繪圖引擎。它提供了低...
    ShanJiJi閱讀 1,565評論 0 20
  • Quartz2D 簡介 Quartz2D是二維(平面)的繪圖引擎(經包裝的函數庫,方便開發者使用。也就是說蘋果幫我...
    iOS_Cqlee閱讀 637評論 0 2
  • 第一步:先科普一下基礎知識: Core Graphics是基于C的API,可以用于一切繪圖操作 Core Grap...
    真愛要有你才完美閱讀 2,463評論 0 1
  • 介紹一下你自己 溫柔的朋友喊我又又,彪悍的朋友喊我瘋子,于1988年的冬季出生在北方海濱小城威海。是的,我就是大家...
    雙城記XYZ閱讀 744評論 6 8
  • 對于我們的父母,知道他們很辛苦,然而我們很多時候,要表達對他們的愛,我們很少會說我愛你,并且說了大家也覺得怪怪的。...
    小小feng閱讀 247評論 0 2