颜色转换器
只需选择一次颜色,就能同时获得 HEX、RGB、HSL 和 CMYK 四种格式,需要哪种就复制哪种。
为什么有这么多格式?
HEX 和 RGB 是网页中最常用的标准格式,HSL 在需要调整明度或饱和度时更直观,而 CMYK 则是印刷流程所需要的格式。
工作原理
十六进制值通过正则表达式拆分为三组两位数,并按十六进制解析为 0 到 255 的红、绿、蓝值。HSL 遵循标准推导:明度是最大和最小通道的平均值,饱和度取决于两者之差,色相则取决于哪个通道占主导,红、绿、蓝分别锚定在 0、120、240 度。CMYK 使用简单的转换公式:黑色(K)等于 1 减去最强通道值,青、品红、黄则是各通道在扣除黑色后所缺的部分。四个输出结果都四舍五入为整数,因此来回转换可能会产生 1 的偏差。
请把 CMYK 的结果当作起点,而不是印刷的真实结果。屏幕颜色以 sRGB 定义,要正确转换为油墨覆盖率,需要描述具体印刷机、油墨和纸张的 ICC 色彩配置文件。这里使用的公式假设的是理想化油墨,许多鲜艳的屏幕颜色,比如饱和橙色、电光蓝、亮绿色,其实超出了铜版纸能呈现的范围。任何印刷厂都会用自己的配置文件重新转换你的文件。
以上数学运算都在本页面的几个小函数中完成;选择颜色只会触发纯本地运算和四次 DOM 更新。没有任何请求,也没有任何发送,你可以在点击取色器时通过开发者工具的网络面板确认这一点。
常见问题
为什么 CMYK 只是近似值?
CMYK 是一种印刷色彩空间,实际呈现效果取决于具体使用的油墨和纸张。这里显示的数值是标准的 RGB 转 CMYK 换算结果,可以作为不错的参考起点,但不能替代你的打印机的色彩配置文件。
HSL 有什么用?
HSL 代表色相、饱和度、明度。固定色相、调整明度和饱和度来搭配色板,通常比直接猜测 RGB 或十六进制数值要容易得多。
这个工具会保存我选择的颜色吗?
不会。所有操作都在你的浏览器本地完成,不会保存或发送任何内容。