实现线性渐变   径向渐变
 
自己新建的view中有一个drawRect:(cgrect)rect方法
在这个方法里 可以通过画图 将内容显示在画板上(即最下边的view)
 
渐变的方式分两种  :1种是线性渐变    1种是径向渐变
首先先看 线性渐变  
 
1 设置图像的上下文 
2 获得颜色空间  说明他是什么类型的颜色
3 设置开始颜色  结束颜色  并且将他们换成Cg颜色 
4 设置渐变   渐变的4个参数  没有的需要进行创建  2  3 
5 绘制线性渐变  绘制径向渐变
6清理creat创建的对象 用cg
// Drawing code
    //获得当前图形器的当前的上下文
    CGContextRef context  = UIGraphicsGetCurrentContext();
   
    //创建渐变的颜色空间类型是RGB颜色
    CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();
    //设置颜色的开始 颜色的结束
    UIColor *beginColor =  [UIColor redColor];
    //将颜色转换为cgColor//CGFloat是浮点型的基本数据类型
    CGFloat *beginC =CGColorGetComponents([beginColor CGColor]);
    UIColor *endColor = [UIColor yellowColor];
   
   
    CGFloat *endC = CGColorGetComponents([endColor CGColor]);
   
    //将两个颜色的元素加入到一个Cgfloat数组中
    CGFloat component[8] = {beginC[0],beginC[1],beginC[2],beginC[3],endC[0],endC[1],endC[2],endC[3]};
    //设定颜色的区间 区间范围是0 1  如果区间没有你要的颜色 就会执行靠近区间的颜色
    CGFloat location[2] ={0,1};
   
    //设置渐变
    CGGradientRef gradient = CGGradientCreateWithColorComponents(colorSpace, component, location, 2);
     //绘制直线渐变
    CGContextDrawLinearGradient(context, gradient, CGPointMake(100, 100), CGPointMake(200, 200), 0);
     //绘制径向渐变
    CGContextDrawRadialGradient(context, gradient, CGPointMake(300, 300), 50, CGPointMake(300, 300), 60, kCGGradientDrawsBeforeStartLocation);
 
    //清理
    CGColorSpaceRelease(colorSpace);
    CGGradientRelease(gradient);
 
 
 
 
 
 

绘图quartz之渐变的更多相关文章

  1. iOS 2D绘图 (Quartz 2D) 概述

    本篇博客原文地址:http://blog.csdn.net/hello_hwc?viewmode=list 由于自己的项目需要,从网络上下载了许多关于绘制图形的demo,只是用在自己的项目中,很多地方 ...

  2. iOS:quartz2D绘图(绘制渐变图形)

    quartzD可以用来绘制渐变图形,即图形向外或向内发散,会变得越来越模糊. 渐变分为线性渐变和径向渐变,所谓线性渐变,就是图形以线的方式发散,发散后一般呈现出矩形的样子:而径向渐变,就是以半径的大小 ...

  3. 绘图quartz之加水印

      实现在图片上加一个水印  并存在document的路径下  同时在手机相册中也存一份 //首先开启imageContext找到图片     UIGraphicsBeginImageContext( ...

  4. 绘图quartz之阴影

          //设置矩形的阴影  并在后边加一个圆 不带阴影     步骤:     CGContextRef context = UIGraphicsGetCurrentContext();     ...

  5. iOS 2D绘图 (Quartz2D)之阴影和渐变(shadow,Gradient)

    原博地址:http://blog.csdn.net/hello_hwc/article/details/49507881 Shadow Shadow(阴影) 的目的是为了使UI更有立体感,如图 sha ...

  6. H5新特性-canvas绘图--渐变对象路径(最复杂)--图片--变形操作

    今天的目标 3.1:canvas绘图--(重点掌握:渐变对象.路径.图片.变形) 3.2:canvas绘图--渐变对象 线性渐变: linearGradient 径向渐变: var g = ctx.c ...

  7. HTML5画:线、圆、矩形、渐变

    示例一:矩形 <!DOCTYPE html><head> <meta charset=utf-8> <title>HTML5画线.圆.矩形</ti ...

  8. iOS:quartz2D绘图

    Quartz-2D:绘图 一.介绍: •Quartz 2D是一个二维图形绘制引擎,支持iOS环境和Mac OS X环境   •Quartz 2D API可以实现许多功能,如基于路径的绘图.透明度.阴影 ...

  9. highcharts 系统梳理笔记

    前言 highcharts最早接触它是在4年前,后来项目中很少用到图表这些东西,就算有也是用echart.他们思路都一样自己去官网上看api即可,构造数据填充节点,没有什么难点,这次是做完手上的工作然 ...

随机推荐

  1. 2015第43周三memcached

    Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态.数据库驱动网站的速度.Memcached ...

  2. HDU 5916 Harmonic Value Description 【构造】(2016中国大学生程序设计竞赛(长春))

    Harmonic Value Description Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Ja ...

  3. C#调用C++动态库(dll)

    在实际软件开发过程中,由于公司使用了多种语言开发,在C#中可能需要实现某个功能,而该功能可能用其他语言已经实现了,那么我们可以调用其他语言写好的模块吗?还有就是,由于C#开发好的项目,我们可以利用re ...

  4. oracle数据库根据不同条件给同一字段修改相应的值:

    oracle数据库根据不同条件给同一字段修改相应的值: 例如:根据职务调整雇员的工资,如果职务为“SALESMAN”或者“ANALYST”工资上调100元,如果职务为“MANAGER”工资上调200元 ...

  5. POJ 1503 Integer Inquiry 简单大数相加

    Description One of the first users of BIT's new supercomputer was Chip Diller. He extended his explo ...

  6. 利用Trie树对字符串集合进行排序并计算特征值

    该算法用于将一组乱序的字符串反序列化到一个Trie树中,这个过程即可视为对字符串进行了一次排序. 还可以通过调用 GetFeatureString 将该 Trie 树重新序列化. #include & ...

  7. 1242Rescue (优先队列BFS)

    Problem Description Angel was caught by the MOLIGPY! He was put in prison by Moligpy. The prison is ...

  8. 【设计模式 - 1】之工厂模式(Factory)

    1      模式简介 1.1    工厂模式作用 工厂模式解决的是"使用new关键字获取对象造成松耦合"的问题. 工厂模式主要是为创建对象提供过渡接口,以便将创建对象的具体过程屏 ...

  9. 触发器记录表某一个字段数据变化的日志 包括插入insert 修改update 删除delete 操作

    本文参考:http://www.cnblogs.com/lyhabc/articles/3236985.html ,),  ),               ),           ),       ...

  10. MySql The service could not be started

    MySql安装 由于需要用mySql数据库今天就把它安上了,每次安装软件,数据库总是够我们折腾的,有时出现错误甚至比重装系统还要让人头疼. 今天在安的过程中就不出了很多错误,在重启与重装的反复捣鼓中终 ...