@zeni1agent

Как перевести Hex в Rgb?

Кто нибудь может дать мне функцию перевода Hex в Rgb ?
Гугол постоянно мне выдает Rgb в Hex .
Желательно что бы функция возвращала цвет в виде массива
#dbd1b2->[219,209,178]
  • Вопрос задан
  • 375 просмотров
Решения вопроса 1
hzzzzl
@hzzzzl
гуглом конечно же
https://stackoverflow.com/a/5624139

function hexToRgb(hex) {
  // Expand shorthand form (e.g. "03F") to full form (e.g. "0033FF")
  var shorthandRegex = /^#?([a-f\d])([a-f\d])([a-f\d])$/i;
  hex = hex.replace(shorthandRegex, function(m, r, g, b) {
    return r + r + g + g + b + b;
  });

  var result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex);
  return result 
    ? [ parseInt(result[1], 16),
        parseInt(result[2], 16),
        parseInt(result[3], 16) ]
    : null;
}
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@MagicMight
no magic quotes
const func = rgb => [('0x'+rgb[1]+rgb[2])*1, ('0x'+rgb[3]+rgb[4])*1, ('0x'+rgb[5]+rgb[6])*1]


Или так
rgb = "#dbd1b2".replace('#', '0x') * 1;
res = [rgb >> 16, (rgb >> 8) & 255, rgb & 255]
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы