Lighten or darken a color - Node.js CSS

Node.js examples for CSS:Color

Description

Lighten or darken a color

Demo Code


/**//  ww w  .  j av  a 2  s .com
 * Lighten or darken a color
 *
 * @param  {string} col Color
 * @param  {number} amt Amount
 * @return {string}     Computed hexadecimal
 */
export default function lightenDarkenColor(col, amt) {

  let usePound = false;

  if (col[0] == "#") {
    col = col.slice(1);
    usePound = true;
  }

  const num = parseInt(col,16);

  let r = (num >> 16) + amt;

  if (r > 255) r = 255;
  else if  (r < 0) r = 0;

  let b = ((num >> 8) & 0x00FF) + amt;

  if (b > 255) b = 255;
  else if  (b < 0) b = 0;

  let g = (num & 0x0000FF) + amt;

  if (g > 255) g = 255;
  else if (g < 0) g = 0;

  return (usePound?"#":"") + (g | (b << 8) | (r << 16)).toString(16);
}

Related Tutorials