Skip to content

Instantly share code, notes, and snippets.

@derhofbauer
Forked from w3core/brightnessByColor.js
Last active October 10, 2018 14:45
Show Gist options
  • Save derhofbauer/c08b424a0af7e22603ac1b3e78b0f2b4 to your computer and use it in GitHub Desktop.
Save derhofbauer/c08b424a0af7e22603ac1b3e78b0f2b4 to your computer and use it in GitHub Desktop.
Calculate brightness value by RGB or HEX color
/**
* Calculate brightness value by RGB or HEX color.
* @param color (String) The color value in RGB or HEX (for example: #000000 || #000 || rgb(0,0,0) || rgba(0,0,0,0))
* @returns (Number) The brightness value (dark) 0 ... 255 (light)
*/
function brightnessByColor (color) {
var color = "" + color, isHEX = color.indexOf("#") == 0, isRGB = color.indexOf("rgb") == 0;
if (isHEX) {
var m = color.substr(1).match(color.length == 7 ? /(\S{2})/g : /(\S{1})/g);
if (m) var r = parseInt(m[0], 16), g = parseInt(m[1], 16), b = parseInt(m[2], 16);
}
if (isRGB) {
var m = color.match(/(\d+){3}/g);
if (m) var r = m[0], g = m[1], b = m[2];
}
if (typeof r != "undefined") return ((r*299)+(g*587)+(b*114))/1000;
}
export default brightnessByColor
{
"name": "brightnessbycolorjs",
"version": "1.0.1"
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment