将RGB转换为十六进制颜色

以下是将rgb转换为十六进制颜色的功能。 但这不完全正确。 用(0,255,0)(#​​00ff00)。 它返回ff00,所以它不是有效的颜色。 我需要帮助来修改它以返回正确的十六进制值。

function rgbToHex(r, g, b) {
        var rgb = b | (g << 8) | (r << 16);
        return rgb.toString(16);
    }

这个怎么样:

//...
return (0x1000000 | rgb).toString(16).substring(1);

尝试这个:

return ("000000"+rgb.toString(16)).slice(-6);
//                                   ^----returns last 6 chars

return ((b | g << 8 | r << 16) / 16777216).toString(16).substring(2);

要么

return ((b | g << 8 | r << 16) / 0x1000000).toString(16).substring(2);
链接地址: http://www.djcxy.com/p/87803.html

上一篇: Convert RGB to Hex color

下一篇: How to convert 24 bit RGB to 8 bit RGB