颜色转换(HEX/RGB/HSL)
在 HEX、RGB、HSL、HSV 之间互相转换颜色。每行一个颜色,支持三位 HEX、rgb() 与 hsl() 写法,点击色块即可复制 HEX 值。
在 HEX、RGB、HSL 和 HSV 之间双向转换颜色。每行粘贴一个颜色——包括 3 位简写的 HEX 以及 rgb() 和 hsl() 数值——即可一次性得到所有表示形式,并可通过点击色块复制 HEX 代码。
当设计工具给你的是 HSL、而你继承的 CSS 用的是 HEX 时,当你需要为 canvas 或 Android 资源文件准备 RGB 三元组时,或者当你在核对品牌色板、想看清各色调之间的关系时,它都很有用。转换遵循标准 CSS 公式,并且在你提供 alpha 值时予以保留。
如何在 HEX、RGB、HSL 和 HSV 之间转换颜色
每行输入一个颜色,格式任意,只要受支持
读取转换后的 HEX、RGB、HSL 和 HSV 数值
点击色块即可复制它的 HEX 代码
常见问题
可以输入哪些格式?
HEX(#1a2b3c 或 #abc)、rgb(26, 43, 60)、rgba(...)、hsl(210, 40%, 17%) 和 hsla(...),每行一个,函数名大小写均可。
可以一次转换多个颜色吗?
可以,粘贴整份色板——每行一个颜色——每一行都会被独立转换。
怎么复制结果?
点击任意色块,它的 HEX 值就会复制到剪贴板;文本形式的输出也可以像普通文本一样选中并复制。
结果和 CSS 颜色函数完全一致吗?
是一致的,工具使用标准 sRGB 公式,HSL/HSV 数值会为便于阅读而取整。取整可能让某个通道相差 1,实际观感上无法察觉。
它能处理透明度吗?
输入中的 rgba() 和 hsla() 的 alpha 值会保留在 HEX 输出中,表现为带 alpha 的 8 位数值。
会有内容发送到服务器吗?
不会,转换完全是在你的浏览器中进行的纯计算。
一览
| 输入 | 文本 |
|---|---|
| 多个文件 | 否 |
| 运行位置 | 在你的浏览器中——文件永远不会被上传 |
| 离线可用 | 是 — 页面加载完成后 |
| 价格 | 免费,无需注册,无水印 |
转换在哪里悄悄出错
大多数转换缺陷与语法无关,而与含义有关。一列邮编的 CSV 字段会在表格软件猜它是数字的那一刻丢掉前导零;一个很长的 ID 会超出浮点精度;日期会因为先写日还是先写月而意思大变。JSON 的键是无序的,但数组是有序的,排序键的工具不会改变任何东西,而排序数组的工具会改变数据。Unicode 是另一个陷阱:文本可能以 UTF-8、UTF-16 或带字节顺序标记的形式到来,解码器猜错就会把带重音的字符变成乱码。在信任任何转换之前,抽查第一行和最后一行、任何带前导零的字段,以及任何含有引号、逗号或换行的字段。
选择数据格式
JSON 是 API 返回以及程序读取的任何数据的默认格式:它天然处理嵌套结构、数字、布尔值和 null,而且每种语言都能解析它。CSV 更小,能直接打开进表格软件,但它无法表达嵌套,在分隔符、引号规则和字符集上也没有共同标准——而这正是转换出错的地方。XML 冗长,但能承载属性、混合内容和模式,所以它仍然主导着文档格式和遗留系统集成。YAML 对配置来说最易读,但它对空白敏感,还有出人意料的类型强制转换(「no」会变成 false,像 1.10 这样的版本号会变成 1.1)。请选择使用方工具偏好的格式,而不是看起来最漂亮的格式。