文档章节

RBG转换HEX

Billydotzhang
 Billydotzhang
发布于 2016/06/20 15:11
字数 256
阅读 24
收藏 1
  //十六进制颜色值域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;    
    }  
};  



var sRgb = "RGB(255, 255, 255)" , sHex = "#ffffff";  
var sHexColor = sRgb.colorHex();//转换为十六进制方法<code></code>  
var sRgbColor = sHex.colorRgb();//转为RGB颜色值的方法  

 

© 著作权归作者所有

共有 人打赏支持
Billydotzhang
粉丝 8
博文 44
码字总数 20644
作品 0
崇明
私信 提问
python模块介绍- binascii:二进制和ASCII互转 以及其他进制转换

python模块介绍- binascii:二进制和ASCII互转以及其他进制转换 2012-08-01磁针石 #承接软件自动化实施与培训等gtalk:ouyangchongwu#gmail.com qq 37391319 博客: http://blog.csdn.net/oy...

长平狐
2013/12/25
2.7K
0
IOS---NSdata 与 NSString,Byte数组,UIImage 的相互转换

NSData 与 NSString NSData-> NSString NSString *aString = [[NSString alloc] initWithData:adataencoding:NSUTF8StringEncoding]; NSString->NSData NSString *aString = @"1234abcd"; ......

iKaisa
2013/05/06
0
0
字符串以及文件的hashlib的md5和sha1等的运用

hashlib的md5和sha1等的运用 import hashlib print(hashlib.algorithmsavailable) print(hashlib.algorithmsguaranteed) #MD5 import hashlib hashobject = hashlib.md5(b'Hello World') pri......

独钓渔
2014/11/25
0
0
使用java实现hex和ascii码的转换

几乎很少写JAVA代码,第一是确实不会,第二感觉JAVA写起来不爽(较python、golang),但总有万不得已必须要用java的时候。这里记录下使用java实现的hex十六进制和acsii码之间的转换(代码主要...

问题终结者
11/29
0
0
PostgreSQL的10进制与16进制互转

1.10进制转16进制 Postgres里面有一个内置的10进制转16进制的函数:tohex(int)/tohex(bigint) [postgres@localhost ~]$ psqlPassword:psql (9.1.3)Type "help" for help. postgres=# select ......

kenyon_君羊
2013/05/07
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Kubernetes 1.13.0的快速升级

Kubernetes 1.13.0已经正式发布,快速升级(含国内镜像快速下载链接)包括升级kubeadm/kubectl/kubelet版本、拉取镜像、升级Kubernetes集群三个主要步骤。注意Kubernetes 1.13.0版本暂时不支...

openthings
15分钟前
0
0
go的卸载和环境变量配个人.bashrc

若是用安装包直接解压 http://download.csdn.net/detail/u010026901/7592581 cd /usr/local tar -zxvf go1.1.2.linux-386.tar.gz(先把安装包移到这个目录) 3.安装 $ cd go/src,$ ./all.b......

dragon_tech
21分钟前
0
0
区块链安全 - 以太坊短地址攻击

1 基础知识 EVM虚拟机在解析合约的字节码时,依赖的是ABI的定义,从而去识别各个字段位于字节码的什么地方。关于ABI,可以阅读这个文档: https://github.com/ethereum/wiki/wiki/Ethereum-C...

HiBlock
31分钟前
1
0
自定义函数及内部函数

变量的作用域 局部变量 global $Global及其他超全局数组 静态变量 仅初始化赋值 保留于内存直到response才销毁 global和static变量的区别 global:局部变量全局话 static:定义静态局部变量 函...

关元
32分钟前
1
0

中国龙-扬科
45分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部