JavaScript中形如00190705的8位颜色代码是什么类型?如何生成?
问题解答
编码类型判定
你遇到的8位十六进制颜色代码属于业务自定义的RGB衍生编码,具体规则如下:
- 总长度固定为8位十六进制字符
- 前2位为固定占位值
00,无实际颜色含义,你提供的所有代码样本均符合该特征 - 后6位为标准
RRGGBB格式的RGB十六进制颜色码,每2位对应一个颜色通道的数值:- 第3-4位:红色通道(R),十六进制取值范围
00`FF`,对应十进制0255,数值越高红色占比越高 - 第5-6位:绿色通道(G),十六进制取值范围
00`FF`,对应十进制0255,数值越高绿色占比越高 - 第7-8位:蓝色通道(B),十六进制取值范围
00`FF`,对应十进制0255,数值越高蓝色占比越高
你可以提取任意样本的后6位和常规RGB颜色对照表核验,和对应发色名称完全匹配:比如深棕色对应后6位030201,转换为十进制RGB值为(3,2,1),为接近黑色的深棕色调,符合发色定义。
- 第3-4位:红色通道(R),十六进制取值范围
同类型代码生成方法
按照以下两步操作即可生成符合要求的新颜色代码,全程不需要修改固定前缀00:
- 确定目标颜色的6位标准RGB十六进制码,可通过任意调色工具获取,比如正红色为
FF0000、纯黑色为000000 - 在6位码的最前面拼接固定前缀
00,得到的8位字符串就是符合你业务要求的颜色代码
生成示例
如果需要新增酒红色发色,首先查到酒红色的标准RGB十六进制为800020,拼接前缀后得到最终代码00800020,直接替换JSON中color字段的取值即可使用。
内容的提问来源于stack exchange,提问作者Electro Web IT
相关产品推荐
相关产品推荐

