实现线性渐变   径向渐变
 
自己新建的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. Java实现字符串反转

    替换原则:index k 的值和 n-k 的值进行交换.(始终记住程序员的n.k都是字符串的实际位置.) 乘除的最基本实现还是来源于移位操作. public String reverse(String ...

  2. 14.6.1 InnoDB Startup Configuration 启动配置

    14.6.1 InnoDB Startup Configuration 启动配置 首先描述关于InnoDB 配置设计数据库文件,日志文件,page size 和内存buffer 的配置. 推荐你定义数 ...

  3. RedHat Enterprise Linux 6.4-x86_64 md5:467B53791903F9A0C477CBB1B24FFD1F

    RedHat Enterprise Linux 6.4-x86_64 md5:467B53791903F9A0C477CBB1B24FFD1F 这是下载地址:http://pan.baidu.com/ ...

  4. 了解 Windows Azure 存储计费 – 带宽、事务和容量

     我们收到关于如何估算 Windows Azure存储成本,以便了解如何更好地构建一个经济有效的应用程序的问题.在本文中,我们将从带宽.事务和容量这三种存储成本的角度探讨这一问题. 使用 Wind ...

  5. java IO复习(二)

    package com.zyw.file; import java.io.*; /** * Created by zyw on 2016/3/10. */ public class FileTest2 ...

  6. GCC的编译和安装 很好的资料

    http://blog.csdn.net/yrj/article/details/492404 1.GCC的编译和安装2.预处理    #define 可以支持不定数量的参数.    例子如下:    ...

  7. nopcommerce中文网

    nopcommerce中文网 | nopcommerce是国外asp.net领域一个高质量的b2c开源项目,基于EntityFramework和MVC开发,交流QQ群:75272942 nopcomm ...

  8. Spring AOP配置与应用

    1.     两种方式: a)     使用Annotation b)     使用xml 2.     Annotation a)     加上对应的xsd文件spring-aop.xsd b)   ...

  9. rnqoj-82-又上锁妖塔-dp

    又是一个敢想就敢做的题目... 同时记录更新两个状态 dp[i] :第i层是飞上去的 df[i]  :第i层是走上去的 dp[i]=min(df[i-1],df[i-2]); df[i]=min(dp ...

  10. Codeforces Round #363 (Div. 2) 698B Fix a Tree

    D. Fix a Tree time limit per test 2 seconds memory limit per test 256 megabytes     A tree is an und ...