tinygradient 学习笔记

tinygradient  ——  方便设置渐变颜色的库 (https://www.npmjs.com/package/tinygradient

Easily generate color gradients with an unlimited number of color stops and steps. 

它依赖 TinyColor 这个库!

那就先从学习 tinycolor 开始吧 

tintcolor —— JavaScript color toolinghttps://github.com/bgrins/TinyColor

它支持  hsl    hsv   rgb  和  ColorName 写法

直接写核心用法吧!

var color = tinycolor("red");
color.getFormat(); // "name"
color = tinycolor({r:255, g:255, b:255});
color.getFormat(); // "rgb"
var color = tinycolor("red");
color.getOriginalInput(); // "red"
color = tinycolor({r:255, g:255, b:255});
color.getOriginalInput(); // "{r: 255, g: 255, b: 255}"
变换颜色  ColorName <=> hex
var color1 = tinycolor("red");
color1.isValid(); // true
color1.toHexString(); // "#ff0000"

var color2 = tinycolor("not a color");
color2.isValid(); // false
color2.toString(); // "#000000"
var color = tinycolor("red");
color.toRgb(); // { r: 255, g: 0, b: 0, a: 1 }

获取颜色的透明度

var color1 = tinycolor("rgba(255, 0, 0, .5)");
color1.getAlpha(); // 0.5

var color2 = tinycolor("rgb(255, 0, 0)");
color2.getAlpha(); // 1

var color3 = tinycolor("transparent");
color3.getAlpha(); // 0

设置颜色的 透明度

var color = tinycolor("red");

color.getAlpha(); // 1

color.setAlpha(0.5);

color.getAlpha(); // 0.5

color.toRgbString(); // "rgba(255, 0, 0, 0.5)"

大概就是 把一个颜色变成 一个实例。

这个实例的属性有几个实用的方法

isValid()

toHex()

toHexString()

toRgbString()

toRgb()

getAlpha()

setAlpha(<number>)

=======================================

tinygradient 就是以来 TinyColor 进行一次封装 变成一个让你可以 设置渐变颜色的库 

var gradient = tinygradient('red', 'green', 'blue');

var gradient = tinygradient([

  '#ff0000',

  '#00ff00',

  '#0000ff'

]);

var gradient = tinygradient([

  tinycolor('#ff0000'),       // tinycolor object

  {r: 0, g: 255, b: 0},       // RGB object

  {h: 240, s: 1, v: 1, a: 1}, // HSVa object

  'rgb(120, 120, 0)',         // RGB CSS string

  'gold'                      // ColorName

]);

var gradient = tinygradient([    //  pos  指的是 颜色 的位置 

  {color: '#d8e0de', pos: 0},

  {color: '#255B53', pos: 0.8},

  {color: '#000000', pos: 1}

]);

gradient.rgbAt(0.55) // 可以获取到 0.55 位置上的颜色

 

// 返回一个线性的从左到右的渐变

var gradientStr = gradient.css();

// 返回一个从左上角开始的径向的渐变

var gradientStr = gradient.css('radial', 'farthest-corner ellipse at top left');

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值