Я хочу, чтобы преобразовать ARGB цвета в CSS-совместимый шестнадцатеричномКак преобразовать ARGB в HEX в JavaScript?
, например:
-1
должны быть преобразованы в #FFFFFF
или
-16777216
в #000000
Как я могу сделать что в JavaScript?
Я хочу, чтобы преобразовать ARGB цвета в CSS-совместимый шестнадцатеричномКак преобразовать ARGB в HEX в JavaScript?
, например:
-1
должны быть преобразованы в #FFFFFF
или
-16777216
в #000000
Как я могу сделать что в JavaScript?
Это отбрасывает все альфа-компонент
function argbToRGB(color) {
return '#'+ ('000000' + (color & 0xFFFFFF).toString(16)).slice(-6);
}
Ваши цвета подписаны 32 бита и полный альфа (0xFF) делает число отрицательным. Этот код работает даже для неподписанных номеров.
Я предполагаю, что вы хотите что-то вроде этого:
function convertToColorString (argb){
return '#'+ ('000000' + (argb+16777216).toString(16)).slice(-6);
}
что означает «i»? – CodeChiller
это работает только для альфы> 128 –
Вы можете проверить этот вопрос: How do I convert an integer to a javascript color?
Мой ответ на этот вопрос был примерно предположить, что, если вы хотите использовать библиотеку, а не кодирования это самостоятельно, то pusher.color Javascript library поддерживает целое число для преобразования цветов HTML:
// Will set c to "#695083"
var c = pusher.color('packed_argb', -9875325).hex6();
Вот JSFiddle, если вы хотите попробовать вышеуказанное.
Также позвольте добавить заявление об отказе от ответственности, которое я написал в упомянутой выше библиотеке.
большое вам спасибо! – CodeChiller
как вы меняете процесс в javascript? Начиная с шестнадцатеричного значения и работая в направлении значения argb? Некоторое время искал и не нашел решения :( – Jorrex