颜色格式进行转换

2020-09-18  本文已影响0人  ee03052cdf84

颜色格式进行转换

关于更多日常使用的公共类的操作方法,可以关注下小滑轮网站 http://www.feiaci.com/#/self/code

将HEX格式转换为RGBA,RGB格式转换HEX

/**
* hex转换为RGBA
* @param hex 格式颜色
* @param opacity 透明度
* @return {string}
*/
function hexToRgbA(hex, opacity = 1) {
    let c;
    if (/^#([A-Fa-f0-9]{3}){1,2}$/.test(hex)) {
        c = hex.substring(1).split('');
        if (c.length === 3) {
            c = [c[0], c[0], c[1], c[1], c[2], c[2]];
        }
        c = '0x' + c.join('');
        return 'rgba(' + [(c >> 16) & 255, (c >> 8) & 255, c & 255].join(',') + `,${opacity})`;
    }
    throw new Error('Bad Hex');
}

/**
* rgb转Hex
* @constructor
*/
function RGBToHex (r, g , b) {
    return ((r << 16) + (g << 8) + b).toString(16).padStart(6, "0")
}
上一篇下一篇

猜你喜欢

热点阅读