欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

RGB和十六进制颜色代码的互相转换

最编程 2024-01-12 22:30:08
...
//颜色 16进制转rgb function hexToRgb(hex) { let color = [], rgb = []; hex = hex.replace(/#/, ""); if (hex.length == 3) { // 处理 "#abc" 成 "#aabbcc" let tmp = []; for (let i = 0; i < 3; i++) { tmp.push(hex.charAt(i) + hex.charAt(i)); } hex = tmp.join(""); } for (let i = 0; i < 3; i++) { color[i] = "0x" + hex.substr(i + 2, 2); rgb.push(parseInt(Number(color[i]))); } return 'rgb(' + rgb.join(",") + ')'; }; //颜色 rgb转16进制 function rgbTohex(color) { let rgb; if (color.indexOf("rgba") > -1) { rgb = color.replace("rgba(", "").replace(")", "").split(','); } else { rgb = color.replace("rgb(", "").replace(")", "").split(','); } let r = parseInt(rgb[0]); let g = parseInt(rgb[1]); let b = parseInt(rgb[2]); let hex = "#" + ((1 << 24) + (r << 16) + (g << 8) + b).toString(16).slice(1); return hex; };

推荐阅读