Getting Started

Build Status npm downloads

Converts colors between formats hex, rgb, rgba, hsl, hsla e cmyk.


Inspired by the project of Stoyan Stefanov


Bower install

bower install easy-color

Supported color formats

  • HEX
  • SHORT HEX
  • RGB
  • RGBA
  • HSL
  • HSLA
  • CMYK

How to use

Create an instance of the constructor by placing the color you want to convert

You can put in any supported format

Example:


// Instance
var parser = new EasyColorParser("#00AAFF"); // You can also add: # 0af, rgb (0, 170, 255), hsl (..., etc ...

// Convert
parser.toHEX();  // Converts to HEX format   (Hexadecimal)
parser.toRGB();  // Converts to RGB format  (Red, Green, Blue)
parser.toRGBA(); // Converts to RGBA format (Red, Green, Blue, Alpha)
parser.toHSL();  // Converts to HSL format  (Hue, Saturation, Lightness)
parser.toHSLA(); // Converts to HSLA format (Hue, Saturation, Lightness, Alpha)
parser.toCMYK(); // Converts to CMYK format (Cyan, Magenta, Yellow, Key)

To convert the values of a color separately use:


// RGB
var parser = new EasyColorParser().fromRGB(0, 170, 255); // Values
var parser = new EasyColorParser().fromRGB([0, 170, 255]); // Array of values
var parser = new EasyColorParser().fromRGB({ r: 0, g: 170, b: 255 }); // Object of values

// RGBA
var parser = new EasyColorParser().fromRGBA(0, 170, 255, 1); // Values
var parser = new EasyColorParser().fromRGBA([0, 170, 255, 1]); // Array of values
var parser = new EasyColorParser().fromRGBA({ r: 0, g: 170, b: 255, a: 1 }); // Object of values

// HSL
var parser = new EasyColorParser().fromHSL(200, 100, 50); // Values
var parser = new EasyColorParser().fromHSL([200, 100, 50]); // Array of values
var parser = new EasyColorParser().fromHSL({ h: 200, s: 100, l: 50 }); // Object of values

// HSLA
var parser = new EasyColorParser().fromHSLA(200, 100, 50, 1); // Values
var parser = new EasyColorParser().fromHSLA([200, 100, 50, 1]); // Array of values
var parser = new EasyColorParser().fromHSLA({ h: 200, s: 100, l: 50, a: 1 }); // Object of values

// CMYK
var parser = new EasyColorParser().fromCMYK(100, 33, 0, 0); // Values
var parser = new EasyColorParser().fromCMYK([100, 33, 0, 0]); // Array of values
var parser = new EasyColorParser().fromCMYK({ c: 100, m: 33, y: 0, k: 0 }); // Object of values

You can also get the name of the color format that you have set to make it easier in some cases

parser.colorType(); // Returns the color format defined

So you can also convert a color to a format from the format name

parser.to("RGBA") // In this case it will return the color value in RGBA format, eg rgba (0, 170, 255, 1)

CSS Color Table

You can pick up the CSS color table used to convert the color name to HEX, eg: white -> #FFFFFF

Read about CSS Color Table

To get the array of this table use:

var table = parser.CSSColorTable;

With this table you can convert colors just by name too

For example:

var parser = new EasyColorParser("aqua"); // Creates the instance from the css color name
parser.toHex(); // #00FFFF

Values

To get the separate values for each format use:

var rgb = parser.rgb,     // Returns an array with the RGB values  ->  {r:Number, g:Number, b:Number}
    hsl = parser.hsl,     // Returns an array with the HSL valuesL ->  {h:Number, s:Number, l:Number}
    cmyk = parser.cmyk,   // Returns an array with the CMYK values ->  ...
    alpha = parser.alpha; // Returns color transparency            ->  1

// RGB
var red = rgb.r;
var green = rgb.g;
var blue = rgb.b;

// HSL
var hue = hsl.h;
var saturation = hsl.s;
var lightness = hsl.l;

// CMYK
var cyan = cmyk.c;
var magenta = cmyk.m;
var yellow = cmyk.y;
var key = cmyk.k;

Demonstration

  • HEX: #FFFFFF
  • RGB: rgb(255, 255, 255)
  • RGBA: rgba(255, 255, 255, 1)
  • HSL: hsl(0, 0%, 100%)
  • HSLA: hsla(0, 0%, 100%, 1)
  • CMYK: cmyk(0%, 0%, 0%, 0%)
GitHub
v1.0.0