(七)渐变 矩形渐变 放射渐变

createLinearGradient() 【4个参数,1起点x坐标,2起点y坐标,3终点x 4终点y】
addColorStop(0,"white")【接收两个参数,1开始渐变的位置0代表开始的位置】
addColorStop(1,"black")【参数同上,1代表结束的位置(可以写小数点)】

createRadialGradient() 【6个参数。1(x)/2(y) 开始渐变的中心点,3,圆的半径,4(x)/5(y)结束渐变圆的中心点,6结束渐变圆的半径】
addColorStop(0,"white")【同上】
addColorStop(1,"black")【同上】
【放射渐变的两个圆是同心圆,也就是参数 1,2 === 4,5】

var canvas = document.getElementById("canvas");

    if(canvas.getContext){
        var ctx = canvas.getContext("2d");

        //【要确保渐变元素的开始坐标和结束坐标与渐变对象的一致】

        //
        /////矩形渐变
        /////

        // 编写渐变1:
        var gradient1 = ctx.createLinearGradient(70,70,120,120);//规定开始渐变跟结束渐变的坐标点
        gradient1.addColorStop(0,"blue");//规定开始渐变的颜色
        gradient1.addColorStop(1,"red");//规定结束渐变的颜色

        // 编写渐变2:
        var gradient2 = ctx.createLinearGradient(50,50,100,100);
        gradient2.addColorStop(0,"grey");
        gradient2.addColorStop(1,"black");

        ctx.beginPath();

        ctx.fillStyle = gradient2;//使用渐变
        ctx.fillRect(50,50,50,50);

        ctx.fillStyle = gradient1;//使用渐变
        ctx.fillRect(70,70,50,50);

        ctx.stroke();
        ctx.closePath();

        ////
        // 放射渐变
        ///

        var gradientArc = ctx.createRadialGradient(75,225,10,75,225,50);
            gradientArc.addColorStop(0,"white");
            gradientArc.addColorStop(1,"black");
        ctx.beginPath();

        ctx.fillStyle = gradientArc;
        ctx.fillRect(50,200,50,50);

        ctx.stroke();
        ctx.closePath();
    }

转载于:https://www.cnblogs.com/chefweb/p/6046482.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值