JS rgba颜色转16进制
例子: 值为:rgba(194, 7, 15, 1) ,转化16进制为: #c2070f
//转化颜色
function getHexColor(color) {var values = color.replace(/rgba?\(/, '').replace(/\)/, '').replace(/[\s+]/g, '').split(',')var a = parseFloat(values[3] || 1),r = Math.floor(a * parseInt(values[0]) + (1 - a) * 255),g = Math.floor(a * parseInt(values[1]) + (1 - a) * 255),b = Math.floor(a * parseInt(values[2]) + (1 - a) * 255)return '#' +('0' + r.toString(16)).slice(-2) +('0' + g.toString(16)).slice(-2) +('0' + b.toString(16)).slice(-2)
}
getHexColor('rgba(194, 7, 15, 1) '); // #c2070f
分析代码:
//转化颜色
function getHexColor(color) { // 传的color须为字符串var values = color.replace(/rgba?\(/, '') // 把 "rgba(" 去掉,变成 "194, 7, 15, 1)".replace(/\)/, '') // 把 ")" 去掉,变成 "194, 7, 15, 1".replace(/[\s+]/g, '') // 把空格去掉,变成 "194,7,15,1".split(',') // 变成数组 [194,7,15,1]var a = parseFloat(values[3] || 1), // values[3]是rgba中的a值,没有的话设置a为1,a可能为小数,所以用parseFloat函数r = Math.floor(a * parseInt(values[0]) + (1 - a) * 255), // 转换为16进制g = Math.floor(a * parseInt(values[1]) + (1 - a) * 255),b = Math.floor(a * parseInt(values[2]) + (1 - a) * 255)return '#' +('0' + r.toString(16)).slice(-2) + // 转换后的16进制可能为一位,比如 7 就转换为 7 , 15 转换为 f('0' + g.toString(16)).slice(-2) + // 当为一位的时候就在前面加个 0,('0' + b.toString(16)).slice(-2) // 若是为两位,加 0 后就变成了三位,所以要用 slice(-2) 截取后两位
},
JS rgba颜色转16进制相关推荐
- 【图片】Python对RGB颜色与16进制颜色进行互转
RGB颜色被称为"真彩色",是Photoshop中默认使用的颜色,也是最常用的一种颜色模式.RGB模式的图像由3个颜色通道组成,分别为红色通道(Red).绿色通道(Green)和蓝 ...
- RGB 颜色透明16进制表示
RGB 颜色透明16进制表示 列如:白色全透明 #00FFFFFF,白色半透明 #1AFFFFFF 100% 00 99% 03 98% 05 97% 07 96% 0A 95% 0D 94% 0F ...
- RGB颜色与16进制色以及透明色
转载请标明出处:http://blog.csdn.net/liang5630/article/details/43483331 ,本文出自:[刘宏亮的博客] RGB颜色与16进制色以及透明色是我们在开 ...
- js实现rgb和16进制颜色的相互转化
16进制转rgb transRgb(color) {var reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/;var sColor = color.toLowerC ...
- 批量转换——颜色代码(16进制)与RGB
调研 语义分割 各大公开数据集色号时,发现Cityscapes的色号 为16进制 需要的是RGB的值 颜色码转换--网页 用网页来回转换 复制的时候总出现问题(自己的原因,总复制错行) 如果觉得麻烦可 ...
- 颜色透明度 16进制对应表
一.颜色透明度和十六进制对应的表格: 透明度 16进制 100% 0 99% 3 98% 5 97% 7 96% 0A 95% 0D 94% 0F 93% 12 92% 14 91% 17 90% 1 ...
- Android内部颜色转16进制颜色
我们在Avtivity中设置控件的背景色的时候,会发现setBackgroundColor()居然需要int格式的颜色,本来以为是10进制的颜色,后来实验发现,不是10进制的,因为它是有负数的,它的范 ...
- C语言(JS)浮点、16进制相互转换
文章目录 前言 一.float转16进制(可用于C语言) 二.16进制转float(可用于C语言) 三.16进制转float(可用于JS.C语言方法3) 总结 前言 处理Modbus协议float转1 ...
- oc 颜色转换 16进制 转换成RGB
OC 颜色使用基本都是RGB的,我们通常还习惯使用16进制表示颜色,但是OC没有直接可以使用的方法,通常使用工具类来转换一下: #define DEFAULT_VOID_COLOR [UIColor ...
- 代码,绘画,设计常用的颜色名称-16进制HEX编码-RGB编码 对照一览表
排列方式,英文名称的字典序 颜色名 HEX16进制编码 RGB编码 AliceBlue F0F8FF 240,248,255 AntiqueWhite FAEBD7 250,235,215 Aqua ...
最新文章
- 微信出现“已停止访问该网页”或“关于潜在的违法或违规内容”怎么办?如何获取被屏蔽的网页的网址?...
- 再论c++模板之类型识别之如何得到类型信息
- 第十一届蓝桥杯大赛青少组 Python 真题 - 第二题
- 解决.NET CF 3.5 Bitmap(Stream)未处理异常问题
- MFC中Windows窗口消息循环及多线程之间关系
- Java语法基础50题训练(下)
- 2022国内低代码平台厂商排行榜—经典收藏
- mac securecrt程序无响应_Adobe庆祝Photoshop问世30周年 为Mac和iPad版本提供新功能
- 设置windows引导linux分区,windows下安装grub引导Linux
- GoAhead2.5源代码分析之1-用户管理(um.c)
- Android项目实战(三十一):异步下载apk文件并安装(非静默安装)
- linux启动redis指定端口,linux redis实现自定义运行多端口、多实例 | 极安全-JiSec
- ​​​​​​​​CloudMounter:挂载云存储作为在 Mac 的本地磁盘
- 蚂蚁金服 CEO 突然辞职!去向很意外。。。
- linux内核编程--1模块的装载和卸载
- Dxdesigner SCH to Mentor PCB
- iOS面试合集,面试看这一篇就够了。
- OSChina 周日乱弹 —— 十大人艰不拆的网络真相!
- linux下mkdir出现mkdir(): File exists错误
- C++ | PaddleOCR GPU版使用步骤与测试时间对比(相对CPU)
热门文章
- linux关闭rpcbind服务,rpcbind服务 关闭
- Python调用海康威视网络摄像头进行远程人脸识别
- 方程根求解数值方法matlab实现二分法、牛顿法、斜截法,代码程序,手写思路,理论分析,最基本的操作
- 什么叫做:离线下载?-by:nixs
- flash mx拖拽实例_Flash MX 2004 Professional的百叶窗过渡效果
- python 抓取 快代理-国内普通代理 IP
- Eclipse查看对应windowsbuilder+GEF+EMF版本
- 黑苹果系统发热与续航
- windows入门Elasticsearch7.10(es)之3:本地集群搭建
- ttl备份机顶盒固件_机顶盒刷机TTL教程,任意安装安卓软件,免费看电视直播