关于Quartz 2D绘图

    近期由于所做的任务中涉及Quartz 2D绘图方面的比较多,对Quartz 2D进行了一次深入的研究。Quartz主要就是一些函数,对象来进行对视图在内存中进行绘制,在将视图加入到当前视图中。

    首先:获得所在的上下文以便将绘制好的视图加入到现在视图中从而显示。

CGContextRef  Context=UIGraphicsGetCurrentContext();

 

   2.颜色:Iphone中基本的颜色为红色,蓝色,绿色,还有透明度也是必备的。他们都是CGFloat类型的,且每个值只能在0到1中取。他们组合在一起便变成了UIColor对象:UIColor *color=[UIColor colorWithRed:green:blue:alpha:];通过UIColor中的CGColor属性便可以设置颜色。

  UIColor是设置图像颜色所必须的。CGContextSetStrokeColorWithColor(Context,color.CGColor);

  设置填充颜色:CGContextSetFillColorWithColor(omtext,color.CGColor);

 

  3.绘制各种各样的形状:在Iphone中可以绘制多种图形,其中最常用的就是矩形。椭圆等都是以矩形为标准来进行绘制的。每个形状的绘制都有一个相应的CGMake函数,如CGRect  rect=CGMakeRect(0,0,10,10);

   当然如果绘制一条直线必须确定两点

 

  4.将在内存中所绘制的Quartz视图加入到上下文中使其显示出来。 Context有相应的添加各种视图的函数,如:CGContextAddRect(context,rect);类似这样形式的函数。

最后将其显示出来:CGContextDrawPath(context,kCGPathFillStroke);

这样一个简单的视图就被绘制出来了。

 

  如果是将一个图片绘制进去又是怎样呢?

  首先需要确定图片的位置,这时是以一个CGPoint类型的来指明图片的中心所在的位置,CGPoint类型值有一个横坐标和一个纵坐标组成,你可以用CGPointMake函数来创建。最后,由于图片不是在内存中进行的,所以只需直接将图片绘制到视图中,图片就显示在视图中了。

利用函数[DrawImage drawAtPoint:]就可以添加图片进去了。

 

    这个做法没有用到IB,而且你可以随意的调整图片的位置与属性,IB中的事都可以在代码中实现,而且又是会更方便,如我们可以直接为每一个控件设一个tag属性,而不必再IB中浪费大量的时间以此为每个控件设tag属性值。这时一个简单的用代码代替IB的实例,但是可以看到很方便,所以以后加多学习这样的代码。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值