colr
Simple color conversion library based on simplicity and stability
API
Constructors
Create a new instance of the Colr class
// create a empty instancevar colr = ; // create from hexvar colr = Colr; // create from rgbvar colr = Colr;var colr = Colr;var colr = Colr; // create from hslvar colr = Colr;var colr = Colr;var colr = Colr; // create from grayscalevar colr = Colr;
Importers
Change the color of an existing Colr instance.
All methods return the colr
instance and can be chained.
var colr = ; // import from hexcolr; // import from rgbcolr;colr;colr; // import from hslcolr;colr;colr; // import from hsv/hsbcolr;colr;colr; // create from grayscalecolr;
Exporters
Convert the color to another format
var colr = ; colr; // "#BADA55" colr; // [186, 218, 85]colr; // {r:186, g:218, b:85}colr; // [186, 218, 85]colr; // {r:186, g:218, b:85} colr; // [74, 64, 59]colr; // {h:74, s:64, l:59}colr; // {74.4360902255639, 64.25120772946859, 59.411764705882355]colr; // {r:74.4360902255639, g:64.25120772946859, b:59.411764705882355} colr; // [74, 61, 85]colr; //{h: 74, s: 61, l: 85}colr; // [74.4360902255639, 61.00917431192661, 85.49019607843137]colr; // {r:74.4360902255639, g:61.00917431192661, b:85.49019607843137} colr; // 193.27
Modifiers
All methods return the colr
instance and can be chained.
var colr = Colr;colr; // "#333333" var colr = Colr;colr; // "#CCCCCC"
Misc
var a = Colr;var b = a; a; a; // '#333333'b; // '#000000'
Benchmarks
$ node benchmark.js
# FromHsv -> ToRgb
colr x 4,552,216 ops/sec ±0.75% (102 runs sampled)
color x 334,029 ops/sec ±0.40% (98 runs sampled)
tinycolor x 1,018,397 ops/sec ±0.45% (102 runs sampled)
chroma x 346,686 ops/sec ±0.36% (97 runs sampled)
Fastest is colr
# FromHex -> Lighten -> ToHex
colr x 1,400,992 ops/sec ±0.27% (102 runs sampled)
color x 61,486 ops/sec ±0.39% (102 runs sampled)
tinycolor x 80,712 ops/sec ±0.96% (97 runs sampled)
chroma x 100,885 ops/sec ±0.73% (100 runs sampled)
Fastest is colr
# FromHex -> Lighten -> Darken -> ToHex
colr x 1,334,580 ops/sec ±0.72% (98 runs sampled)
color x 47,224 ops/sec ±0.86% (101 runs sampled)
tinycolor x 54,639 ops/sec ±1.07% (101 runs sampled)
chroma x 65,039 ops/sec ±0.93% (101 runs sampled)
Fastest is colr
# FromHex -> ToHex
colr x 2,192,730 ops/sec ±0.77% (98 runs sampled)
color x 92,882 ops/sec ±0.87% (101 runs sampled)
tinycolor x 201,324 ops/sec ±0.98% (98 runs sampled)
chroma x 266,279 ops/sec ±0.89% (98 runs sampled)
Fastest is colr
# FromHsv -> ToRgb -> ToHex
colr x 1,680,538 ops/sec ±0.68% (97 runs sampled)
color x 155,721 ops/sec ±0.48% (101 runs sampled)
tinycolor x 530,777 ops/sec ±0.81% (99 runs sampled)
chroma x 235,950 ops/sec ±1.00% (95 runs sampled)
Fastest is colr
# FromHsv -> ToHsl
colr x 4,387,198 ops/sec ±0.45% (99 runs sampled)
color x 201,875 ops/sec ±0.73% (101 runs sampled)
tinycolor x 434,277 ops/sec ±0.65% (102 runs sampled)
chroma x 306,594 ops/sec ±1.21% (92 runs sampled)
Fastest is colr
# FromHsl -> ToHsv
colr x 4,296,682 ops/sec ±0.69% (95 runs sampled)
color x 187,083 ops/sec ±0.72% (102 runs sampled)
tinycolor x 471,617 ops/sec ±0.59% (102 runs sampled)
chroma x 229,835 ops/sec ±0.52% (100 runs sampled)
Fastest is colr