Главная
>>
Каталог задач
>>
Веб-разработка
>>
Клиентский скриптинг(js, vba и т.д.)
>>
Преобразование RGB в HEX и обратно HEX в RGB
Преобразование RGB в HEX и обратно HEX в RGB
реализации: javascript, количество: 2
Aвтор: this
Дата: 15.05.2006
Просмотров: 14746
Рейтинг:
7/6,4.92(1209)
+
реализации(исходники)
+добавить
Скрипты-утилиты, осуществляющие преобразование кодов цвета RGB в HEX и обратно HEX в RGB.
Реализации:
javascript(2)
+добавить реализацию
1)
Утилита преобразования RGB в HEX и обратно HEX в RGB, code #123[автор:-]
<html>
<head>
<title>RGB 2 HEX и наоборот</title>
<script language="javascript">
// rgb 2 hex
function rgb2hex() {
var c,s,i,h='', x='0123456789ABCDEF';
c=prompt('R,G,B...','');
if(c){
s=c.split(',');
for (i=0; i < 3; i++){
n = parseInt(s[i]);
h += x.charAt(n>>4) + x.charAt(n&15);
}
void(prompt('Hexcolor:', h));
} else void(null);
return false;
}
// hex 2 rgb
function hex2rgb() {
var i,h=prompt('Hexcolor...',''), x='0123456789ABCDEF', c='';
if(h) {
h=h.toUpperCase();
for (i=0;i < 6; i+=2)
c+=16*x.indexOf(h.charAt(i)) + x.indexOf(h.charAt(i+1)) + ' ';
prompt('RGB values:',c)
}
return false;
}
</script>
</head>
<body>
<a href="#" onclick="return rgb2hex();">RGB в Hex...</a><br>
<a href="#" onclick="return hex2rgb();">Hex в RGB...</a>
</body>
</html>
2)
с помощью бинарных преобразований, code #591[аноним:MX]
function rgb2hex(r, g, b) {
return (((r & 255) << 16) + ((g & 255) << 8) + b).toString(16);
}
function hex2rgb(hex) {
return (function (v) {
return [v >> 16 & 255, v >> 8 & 255, v & 255];
})(parseInt(hex, 16));
}
alert(rgb2hex(102, 204, 255) == 0x66CCFF);
alert(hex2rgb("66CCFF") == [102, 204, 255]);