JS 解析RGB控制台终端输出有颜色的LOG

文章介绍了如何解析HTML颜色属性,将其RGB值转换为console中可识别的颜色,并使用自定义函数GetNearestConsoleColor确定最接近的终端颜色。作者提供了相应的JavaScript代码实现.

可以解析一下html的颜色输出log, 在终端打印成相近的颜色。

RGB转consolecolor是自己了随便写的,差不多就算了。 上代码。拜拜。




var LOG = function (input, color) {

    var  colorPrefix = '\x1b[3', colorSuffix = 'm';
    input = colorPrefix + color+";01" + colorSuffix + input + "\x1b[39;49;00m";
    console.log(input);
}

function  GetNearestConsoleColor(r, g,  b)
{
    
    var ret=0;
    if(r>128)
    {
        ret |=1;
    }

    if(g > 128)
    {
        ret |=2;
    }

    if(b > 128)
    {
        ret |=4;
    }

    return ret;

}



var text="<color=#0000FF>test line </color>"
let pattern=/^<color=#([0-9A-Fa-f]+)>(.*)<\/color>$/;




let matches=text.match(pattern);

if(matches)
{
    var b= parseInt("0x"+matches[1].slice(0,2));
    var g= parseInt("0x"+matches[1].slice(2,4));
    var r= parseInt("0x"+matches[1].slice(4,6));
    console.log('')
    console.log("r:", r);
    console.log("g:", g);
    console.log("b:", b);

    var consoleColor = GetNearestConsoleColor(r,g,b);
    console.log("consoleColor:", consoleColor);



    LOG(matches[2],consoleColor );
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值