十六进制颜色和RGB互转

dd

//颜色互转
//十六进制颜色值域RGB格式颜色值之间的相互转换

//-------------------------------------
//十六进制颜色值的正则表达式
var reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/;
/* RGB颜色转换为16进制 */
String.prototype.colorHex = function(){
    var that = this;
    if(/^(rgb|RGB)/.test(that)){
        var aColor = that.replace(/(?:\(|\)|rgb|RGB)*/g,"").split(",");
        var strHex = "#";
        for(var i=0; i<aColor.length; i++){
            var hex = Number(aColor[i]).toString(16);
            if(hex === "0"){
                hex += hex;
            }
            strHex += hex;
        }
        if(strHex.length !== 7){
            strHex = that;
        }
        return strHex;
    }else if(reg.test(that)){
        var aNum = that.replace(/#/,"").split("");
        if(aNum.length === 6){
            return that;
        }else if(aNum.length === 3){
            var numHex = "#";
            for(var i=0; i<aNum.length; i+=1){
                numHex += (aNum[i]+aNum[i]);
            }
            return numHex;
        }
    }else{
        return that;
    }
};

// -------------------------------------------------

/* 16进制颜色转为RGB格式 */
String.prototype.colorRgb = function(){
    var sColor = this.toLowerCase();
    if(sColor && reg.test(sColor)){
        if(sColor.length === 4){
            var sColorNew = "#";
            for(var i=1; i<4; i+=1){
                sColorNew += sColor.slice(i,i+1).concat(sColor.slice(i,i+1));
            }
            sColor = sColorNew;
        }
        // 处理六位的颜色值
        var sColorChange = [];
        for(var i=1; i<7; i+=2){
            sColorChange.push(parseInt("0x"+sColor.slice(i,i+2)));
        }
        return "RGB(" + sColorChange.join(",") + ")";
    }else{
        return sColor;
    }
};

调用上述函数的方法如下:

假如lickColor为RGB值域,可通过一下调用转为十六进制颜色域

linkColor = linkColor.colorHex();

假如lickColor为十六进制颜色域,可通过一下调用转为RGB值域

linkColor = linkColor.colorRgb();
时间: 2024-06-22 01:11:32

十六进制颜色和RGB互转的相关文章

十六进制颜色转换RGB对照表

十六进制颜色转换RGB对照表 版权声明:本文为博主原创文章,未经博主允许不得转载.

转:十六进制颜色与RGB颜色对照表

http://www.vis.cc/html/ppyj/zscs/1090.html 十六进制颜色查询 颜 色 英文代码 形象描述 十六进制 RGB LightPink 浅粉红 #FFB6C1 255,182,193 Pink 粉红 #FFC0CB 255,192,203 Crimson 猩红 #DC143C 220,20,60 LavenderBlush 脸红的淡紫色 #FFF0F5 255,240,245 PaleVioletRed 苍白的紫罗兰红色 #DB7093 219,112,147

javascript把RGB指定颜色转换成十六进制颜色(Converting R,G,B values to HTML hex notation)

Prologue 看见一篇很好的外国文章,Making annoying rainbows in javascript,其实我当时很想把它翻译下来的,但是对于一个连六级都没过的人确实有点难度,一些文段看起来是知道意思但是就不知道怎么用自己的话来表达.越来越觉得对于IT行业来说英语至少要达到能读的程度,毕竟好的东西很多是外国的,还有哦,要会翻墙.对于那篇文章我其实还没看完,还在慢慢消化中,但是看到一个函数确实真的很吸引我,实现的是Converting R,G,B values to HTML he

javascript获取随机rgb颜色和十六进制颜色的方法

<div id="console">在线交易平台的成功秘诀:从 Ebay 到 Yelp 到 Uber</div> <script type="text/javascript"> var consoleDom = document.getElementById("console"); consoleDom.style.color = randomColor1(); //获取rgb类型的颜色 IE7不支持 func

RGB颜色值与十六进制颜色的转换

前端初初初级学者有可能也会遇到RGB颜色值与十六进制颜色的转换问题,分享一个在线转换网址,很是方便,http://www.sioe.cn/yingyong/yanse-rgb-16/,一键解决问题 原文地址:https://www.cnblogs.com/asasas/p/9459686.html

RGB颜色函数-RGB()颜色函数

在 Sass 的官方文档中,列出了 Sass 的颜色函数清单,从大的方面主要分为 RGB , HSL 和 Opacity 三大函数,当然其还包括一些其他的颜色函数,比如说 adjust-color 和 change-color 等.在这章节中,将主要和大家一起探讨 Sass 颜色函数中常见的 RGB.HSL 和 Opacity 函数. 1.RGB颜色函数 RGB 颜色只是颜色中的一种表达式,其中 R 是 red 表示红色,G 是 green 表示绿色而 B 是 blue 表示蓝色.在 Sass

iOS开发之十六进制颜色数据转化为UIColor对象

1.若从服务器返回的颜色字符串数据为 hexColor:"09B57A" hexColor分为三部分:09.B5.7A 分别对应三色值 R.G.B 十六进制 十进制 00 0 01 1 ... ... 09 9 0A 10 0B 11 ... ... 0F 15 10 16 11 17 12 18 ... ... 1F 31 ...   FF 255         代码如下: 1 - (UIColor *)getColor:(NSString *)hexColor 2 { 3 uns

颜色的RGB值

        各种金属颜色的RGB值,正确的颜色会有更好的表现效果 铝箔 180,180,180 铝箔(钝) 180,180,180 铝 220,223,227 磨亮的铝 220,223,227 黄铜 191,173,111 磨亮的黄铜 191,173,111 镀铬合金 150,150,150  镀铬合金2 220,230,240  镀铬铝 220,230,240  镀铬塑料 220,230,240  镀铬钢 220,230,240   纯铬 220,230,240   铜 186,110,6

常用颜色的RGB值

RGB颜色表 白色:rgb(255,255,255) 黑色:rgb(0,0,0) 红色:rgb(255,0,0) 绿色:rgb(0,255,0) 蓝色:rgb(0,0,255) 青色:rgb(0,255,255) 紫色:rgb(255,0,255) 调整相关数字,便可以得到深浅不一的各种颜色. 颜色样式 RGB数值 颜色代码 颜色样式 RGB数值 颜色代码 黑色 0,0,0 #000000 白色 255,255,255 #FFFFFF 象牙黑 88,87,86 #666666 天蓝灰 202,2