• 绘图quartz之渐变


    实现线性渐变   径向渐变
     
    自己新建的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);
     
     
     
     
     
     
    对上述的代码,有任何疑问,可以在下方留言。 也可以给我发邮件咨询:673658917@qq.com 或者是直接加qq:673658917 转载请注明出处,谢谢合作。 睡觉舒服,那是给死人准备的,加油吧,一年后你会感谢现在的自己的。
  • 相关阅读:
    Java拾遗补缺
    Spring boot整合shiro权限管理
    Maven项目使用阿里云的Maven库
    Spring Boot设置上传文件大小
    mysql悲观锁中的共享锁和排他锁
    MySQL命令show full processlist
    log4j配置文件中的additivity属性
    每天一个liunx命令2之rz和sz命令
    数据库锁表及阻塞的原因和解决办法
    Java加密技术(一)—— HMACSHA1 加密算法
  • 原文地址:https://www.cnblogs.com/lishanshan/p/4868598.html
Copyright © 2020-2023  润新知