类: Color
类: Color
color.Color
一个32位的颜色值,以ARGB格式表示。
目录
Constructors
Accessors
方法
- equals
- isSimilarTo
- toString
- withAlpha
- withBlue
- withGreen
- withOpacity
- withRed
- fromARGB
- fromGray
- fromRGB
- fromRGBO
- parse
Constructors
constructor
• new Color(value
)
从整数颜色值构造一个颜色。
参数
名称 | 类型 | 描述 |
---|---|---|
value |
number |
整数颜色值,格式为0xAARRGGBB |
Accessors
alpha
• get
alpha(): number
这个颜色的alpha值,以8位整数表示。
值为0表示这个颜色完全透明,值为255表示这个颜色完全不透明。
示例
"nodejs";
const { Color } = require('color');
const color = new Color(0xFF000000); // black
console.log(color.alpha); // 255
返回值
number
blue
• get
blue(): number
这个颜色的blue值,以8位整数表示。
返回值
number
green
• get
green(): number
这个颜色的green值,以8位整数表示。
返回值
number
opacity
• get
opacity(): number
这个颜色的alpha值,以浮点数表示。
值为0.0表示这个颜色完全透明,值为1.0表示这个颜色完全不透明。
示例
"nodejs";
const { Color } = require('color');
const color = new Color(0xFF000000); // black
console.log(color.opacity); // 1.0
返回值
number
red
• get
red(): number
The red channel of this color in an 8 bit value.
返回值
number
value
• get
value(): number
这个颜色的32位值。
- 第24-31位为alpha值
- 第16-23位为red值
- 第8-15位为green值
- 第0-7位为blue值
返回值
number
方法
equals
▸ equals(obj
): boolean
比较两个颜色是否完全相等。
参数
名称 | 类型 |
---|---|
obj |
Color |
返回值
boolean
两个颜色是否完全相等
isSimilarTo
▸ isSimilarTo(other
, options?
): boolean
比较当前颜色是否与另一个颜色相似。
参见
示例
"nodejs";
const { Color } = require('color');
const black = new Color(0xFF000000);
const white = Color.parse('#FFFFFF');
const black09 = Color.parse('#090909');
console.log(black.isSimilarTo(white)) // false
console.log(black.isSimilarTo(black09)) // true
console.log(black.isSimilarTo(black09, { threshold: 5 })) // false
参数
名称 | 类型 | 描述 |
---|---|---|
other |
Color |
要比较的颜色 |
options? |
CompareColorOptions |
比较选项 |
返回值
boolean
两个颜色是否相似
toString
▸ toString(): string
返回值
string
withAlpha
▸ withAlpha(a
): Color
返回一个新的颜色,将原来的颜色的alpha通道的值设置为a
超出范围的值会有意外问题。
示例
"nodejs";
const { Color } = require('color');
const color = new Color(0xFF000000); // black
console.log(color.withAlpha(0x77).toString()) // 0x77000000
参数
名称 | 类型 | 描述 |
---|---|---|
a |
number |
alpha通道的值,范围为0-255 |
返回值
新的颜色
withBlue
▸ withBlue(b
): Color
返回一个新的颜色,将原来的颜色的blue通道的值设置为b
。
超出范围的值会有意外问题。
参数
名称 | 类型 | 描述 |
---|---|---|
b |
number |
blue通道的值,范围为0-255 |
返回值
新的颜色
withGreen
▸ withGreen(g
): Color
返回一个新的颜色,将原来的颜色的green通道的值设置为g
。
超出范围的值会有意外问题。
参数
名称 | 类型 | 描述 |
---|---|---|
g |
number |
green通道的值,范围为0-255 |
返回值
新的颜色
withOpacity
▸ withOpacity(opacity
): Color
返回一个新的颜色,将原来的颜色的alpha通道的透明度值设置为opacity
。
超出范围的值会有意外问题。
示例
"nodejs";
const { Color } = require('color');
const color = new Color(0xFF000000); // black
console.log(color.withOpacity(0.5).toString()) // 0x7F000000
参数
名称 | 类型 | 描述 |
---|---|---|
opacity |
number |
透明度值,范围为0.0-1.0 |
返回值
新的颜色
withRed
▸ withRed(r
): Color
返回一个新的颜色,将原来的颜色的red通道的值设置为r
。
超出范围的值会有意外问题。
参数
名称 | 类型 | 描述 |
---|---|---|
r |
number |
red通道的值,范围为0-255 |
返回值
新的颜色
fromARGB
▸ Static
fromARGB(a
, r
, g
, b
): Color
从四个颜色通道构造一个颜色。
a
是透明度,0表示透明,255表示完全不透明。r
是[红],范围为0-255。g
是[绿],范围为0-255。b
是[蓝],范围为0-255。
超出范围的值会取255的模以保证在255范围内。
参见
fromRGBO which takes the alpha value as a floating point value.
示例
"nodejs";
const { Color } = require('color');
const red = Color.fromARGB(255, 255, 0, 0);
console.log(red.toString()) // Color(0xFFFF0000)
参数
名称 | 类型 | 描述 |
---|---|---|
a |
number |
alpha通道的值,范围为0-255 |
r |
number |
red通道的值,范围为0-255 |
g |
number |
green通道的值,范围为0-255 |
b |
number |
blue通道的值,范围为0-255 |
返回值
新的颜色
fromGray
▸ Static
fromGray(gray
): Color
根据灰度值构造颜色,alpha通道为255,R、G、B通道均为gray的值。
示例
"nodejs";
const { Color } = require('color');
const gray = Color.fromGray(128);
console.log(gray.toString()) // Color(0xFF808080)
参数
名称 | 类型 | 描述 |
---|---|---|
gray |
number |
灰度值 |
返回值
新的颜色对象
fromRGB
▸ Static
fromRGB(r
, g
, b
): Color
从RGB颜色通道构造一个不透明颜色(alpha通道为255)。
示例
"nodejs";
const { Color } = require('color');
const red = Color.fromRGBO(255, 0, 0);
console.log(red.toString()) // Color(0xFFFF0000)
参数
名称 | 类型 | 描述 |
---|---|---|
r |
number |
red value |
g |
number |
green value |
b |
number |
blue value |
返回值
a new color
fromRGBO
▸ Static
fromRGBO(r
, g
, b
, opacity
): Color
从红、绿、蓝和透明度通道构造一个颜色。
r
是[红],范围为0-255。g
是[绿],范围为0-255。b
是[蓝],范围为0-255。opacity
是透明度通道的值,0表示透明,1表示完全不透明。
超出范围的值会取255的模以保证在255范围内。
参见
fromARGB which takes the opacity as an integer value.
参数
名称 | 类型 | 描述 |
---|---|---|
r |
number |
red通道的值,范围为0-255 |
g |
number |
green通道的值,范围为0-255 |
b |
number |
blue通道的值,范围为0-255 |
opacity |
number |
alpha通道的值,范围为0-1 |
返回值
新的颜色
parse
▸ Static
parse(color
): null
| Color
解析十六进制字符串构造一个颜色。若解析失败,则返回null。
示例
const { Color } = require('color');
const color = Color.parse('#ff0000');
console.log(color.toString());
参数
名称 | 类型 | 描述 |
---|---|---|
color |
string |
颜色字符串,格式为#RRGGBB或#AARRGGBB |
返回值
null
| Color
新的颜色,或者null