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,600评论 0 20
  • Quartz2D 简介 Quartz2D是二维(平面)的绘图引擎(经包装的函数库,方便开发者使用。也就是说苹果帮我...
    iOS_Cqlee阅读 640评论 0 2
  • 第一步:先科普一下基础知识: Core Graphics是基于C的API,可以用于一切绘图操作 Core Grap...
    真爱要有你才完美阅读 2,476评论 0 1
  • 介绍一下你自己 温柔的朋友喊我又又,彪悍的朋友喊我疯子,于1988年的冬季出生在北方海滨小城威海。是的,我就是大家...
    双城记XYZ阅读 746评论 6 8
  • 对于我们的父母,知道他们很辛苦,然而我们很多时候,要表达对他们的爱,我们很少会说我爱你,并且说了大家也觉得怪怪的。...
    小小feng阅读 259评论 0 2