//十六进制颜色值的正则表达式
var reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/;
/*16进制颜色转为RGB格式*/
var colorRgb = function(color){
if(color.length>7){
var num = color.slice(7,9).toUpperCase();
var x = opacityColor(num)
color = color.slice(0,7);
}
var sColor =color.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)));
}
//转换为rgb,此时不用传递参数
if(x==undefined){
return "rgb(" + sColorChange.join(",") + ")";
}else{
//转换为rgba,透明度为传递的参数x;
return "rgba(" + sColorChange.join(",") + ","+x+")";
}
}else{
return sColor;
}
}; function opacityColor(num){
if(num=='FF'){
return 1
}else if(num=='FC'){
return .99
}else if(num=='FA'){
return .98
}else if(num=='F7'){
return .97
}else if(num=='F5'){
return .96
}else if(num=='F2'){
return .95
}else if(num=='F0'){
return .94
}else if(num=='ED'){
return .93
}else if(num=='EB'){
return .92
}else if(num=='E8'){
return .91
}else if(num=='E6'){
return .9
}else if(num=='E3'){
return .89
}else if(num=='E0'){
return .88
}else if(num=='DE'){
return .87
}else if(num=='DB'){
return .86
}else if(num=='D9'){
return .85
}else if(num=='D6'){
return .84
}else if(num=='D4'){
return .83
}else if(num=='D1'){
return .82
}else if(num=='CF'){
return .81
}else if(num=='CC'){
return .80
}else if(num=='C9'){
return .79
}else if(num=='C7'){
return .78
}else if(num=='C4'){
return .77
}else if(num=='C2'){
return .76
}else if(num=='BF'){
return .75
}else if(num=='BD'){
return .74
}else if(num=='BA'){
return .73
}else if(num=='B8'){
return .72
}else if(num=='B5'){
return .71
}else if(num=='B3'){
return .70
}else if(num=='B0'){
return .69
}else if(num=='AD'){
return .68
}else if(num=='AB'){
return .67
}else if(num=='A8'){
return .66
}else if(num=='A6'){
return .65
}else if(num=='A3'){
return .64
}else if(num=='A1'){
return .63
}else if(num=='9E'){
return .62
}else if(num=='9C'){
return .61
}else if(num=='99'){
return .6
}else if(num=='96'){
return .59
}else if(num=='94'){
return .58
}else if(num=='91'){
return .57
}else if(num=='8F'){
return .56
}else if(num=='8C'){
return .55
}else if(num=='8A'){
return .54
}else if(num=='87'){
return .53
}else if(num=='85'){
return .52
}else if(num=='82'){
return .51
}else if(num=='80'){
return .5
}else if(num=='7D'){
return .49
}else if(num=='7A'){
return .48
}else if(num=='78'){
return .47
}else if(num=='75'){
return .46
}else if(num=='73'){
return .45
}else if(num=='70'){
return .44
}else if(num=='6E'){
return .43
}else if(num=='6B'){
return .42
}else if(num=='69'){
return .41
}else if(num=='66'){
return .4
}else if(num=='63'){
return .39
}else if(num=='61'){
return .38
}else if(num=='5E'){
return .37
}else if(num=='5C'){
return .36
}else if(num=='59'){
return .35
}else if(num=='57'){
return .34
}else if(num=='54'){
return .33
}else if(num=='52'){
return .32
}else if(num=='4F'){
return .31
}else if(num=='4D'){
return .3
}else if(num=='4A'){
return .29
}else if(num=='47'){
return .28
}else if(num=='45'){
return .27
}else if(num=='42'){
return .26
}else if(num=='40'){
return .25
}else if(num=='3D'){
return .24
}else if(num=='3B'){
return .23
}else if(num=='38'){
return .22
}else if(num=='36'){
return .21
}else if(num=='33'){
return .2
}else if(num=='30'){
return .19
}else if(num=='2E'){
return .18
}else if(num=='2B'){
return .17
}else if(num=='29'){
return .16
}else if(num=='26'){
return .15
}else if(num=='24'){
return .14
}else if(num=='21'){
return .13
}else if(num=='1F'){
return .12
}else if(num=='1C'){
return .11
}else if(num=='1A'){
return .1
}else if(num=='17'){
return .09
}else if(num=='14'){
return .08
}else if(num=='12'){
return .07
}else if(num=='0F'){
return .06
}else if(num=='0D'){
return .05
}else if(num=='0A'){
return .04
}else if(num=='08'){
return .03
}else if(num=='05'){
return .02
}else if(num=='03'){
return .01
}else if(num=='00'){
return 0
}
}

  

RRGGBBAA或者RRGGBB转换成rgba()的更多相关文章

  1. RGBA的值0-255范围如何转换成0-1范围

    这样一个rgba(1,0,0,1) 如果我们要把它转换成 0-255范围 就是rgb分别乘以255 就是 rgba(255,0,0,1) 0-255转0-1范围 如 rgba(34,56,56,1)转 ...

  2. python将url转换成二维码

    准备环境 python生成二维码,需要依赖包qrcode和PIL(二维码的实质就是一个url.) python3安装PIL:pip install PIL python2安装PIL:pip insta ...

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

    Prologue 看见一篇非常好的外国文章,Making annoying rainbows in javascript,事实上我当时非常想把它翻译下来的,可是对于一个连六级都没过的人确实有点难度,一 ...

  4. DataTable 转换成 Json的3种方法

    在web开发中,我们可能会有这样的需求,为了便于前台的JS的处理,我们需要将查询出的数据源格式比如:List<T>.DataTable转换为Json格式.特别在使用Extjs框架的时候,A ...

  5. 微信小程序中利用时间选择器和js无计算实现定时器(将字符串或秒数转换成倒计时)

    转载注明出处 改成了一个单独的js文件,并修改代码增加了通用性,点击这里查看 今天写小程序,有一个需求就是用户选择时间,然后我这边就要开始倒计时. 因为小程序的限制,所以直接选用时间选择器作为选择定时 ...

  6. C#将Word转换成PDF方法总结(基于Office和WPS两种方案)

    有时候,我们需要在线上预览word文档,当然我们可以用NPOI抽出Word中的文字和表格,然后显示到网页上面,但是这样会丢失掉Word中原有的格式和图片.一个比较好的办法就是将word转换成pdf,然 ...

  7. DataTable转换成IList<T>的简单实现

    DataTable的无奈 很多时候,我们需要去操作DataTable.但DataTable的操作,实在是太不方便了.Linq?lambda表达式?统统没有... 特别是对现有结果集做进一步筛选,这样的 ...

  8. ASP.Net中实现上传过程中将文本文件转换成PDF的方法

    iTextSharp是一个常用的PDF库,我们可以使用它来创建.修改PDF文件或对PDF文件进行一些其他额外的操作.本文讲述了如何在上传过程中将文本文件转换成PDF的方法. 基本工作 在开始之前,我们 ...

  9. asp.net dataTable转换成Json格式

    /// <summary> /// dataTable转换成Json格式 /// </summary> /// <param name="dt"> ...

随机推荐

  1. LVS负载均衡DR模式

    什么是集群? 一组相互独立的计算机,利用高速通信网络组成的一个计算机系统,对于客户机来说像是一个单一服务器,实际上是一组服务器.简而言之,一堆机器协同工作就是集群.集群的基本特点:高性能.高并发.高吞 ...

  2. tornado 模版继承 函数和类的调用

    模版继承.函数和类的调用 目录结构 lesson5.py # -*- coding:utf-8 -*- import tornado.web import tornado.httpserver imp ...

  3. mysql 5.1.7.17 zip安装 和 隔段时间服务不见了处理

    Mysql社区版下载地址:http://dev.mysql.com/downloads/mysql/ 因为我的系统版本是64,因此这里下载x64版本.下载完之后解压至D:\Dev\Mysql(即为my ...

  4. 高德地图web 端智能围栏

    最近有个项目,需要在web上批量给设备设置智能围栏,设备超出范围报警,查看高德地图webJS API,web端操作案例如,后台判断没有提供源码 <!-- 重点参数:iconStyle --> ...

  5. Nginx事件管理机制-epoll

    epoll的最大好处在于他不会随着被监控描述符的数目的增长而导致效率极致下降. select是遍历扫描来判断每个描述符是否有事件发生,当监控的描述付越多时,时间消耗就越多,并且由于系统的限制selec ...

  6. C语言 ,两个字符串参数,判断是否包含另一个字符串,返回所在位置

    char * cyp(char *s1,char *s2) { char *p = NULL; char *q = NULL; char *q1 = NULL; while(*s1!='\0') { ...

  7. hive学习(三) hive的分区

    1.Hive 分区partition 必须在表定义时指定对应的partition字段 a.单分区建表语句: create table day_table (id int, content string ...

  8. 详解WordPress中简码格式标签编写的基本方法

    WordPress 简码是一种类似于论坛标签的东西,格式类似于把尖括号换成中括号的 Html 标签.简码很多人叫做短代码,但官方的翻译应该是简码,在这里纠正一下. 简码的开发的逻辑比较简单,主要就是添 ...

  9. K8S的APISERVER,应用了HTTPS之后,命令行如何访问?

    用命令行总是很麻烦,因为要自定义一些证书的位置....... curl https://1.2.3.1:443/api/v1/nodes \ --cacert /etc/kubernetes/pki/ ...

  10. 通过IP地址和子网掩码计算主机数

    知道ip地址和子网掩码后可以算出: 1. 网络地址 2. 广播地址 3. 地址范围 4. 本网有几台主机 例1:下面例子IP地址为192·168·100·5 子网掩码是255·255·255·0.算出 ...