黑色
纯黑。三个通道都为零 —— 没有发出任何光。RGB 三元组 (0, 0, 0)。
#000000 → rgb(0 0 0) 屏幕上的纯黑很少是合适的设计选择 —— 正文文本不妨试试 `#111` 或 OKLCH 感知亮度 0.1–0.15,更柔和。
需要 OKLCH 吗?请试用专用的 HEX 转 OKLCH 转换器,获得感知均匀的输出。
在浏览器中把任意 HEX 颜色代码转成 RGB —— 3 位、6 位以及带 alpha 的 8 位 HEX 全部支持。免费、即时、免注册,您的颜色永远不会离开本页。
浅色
深色
灰调
和谐色
— — — — — HEX 转 RGB 转换器是一个小型工具,把 HEX 颜色代码(`#FF5733`)转成它所代表的三个整数通道值(`rgb(255 87 51)`)。自 1990 年代末以来,HEX 与 RGB 就是每一份 Web 样式表、每一个设计工具、每一条图像-像素流水线所围绕构建的两种格式,而它们之间的转换也是颜色工具中最常见的单一操作。HEX 是 Figma、Sketch、Photoshop 以及每一份品牌指南 PDF 默认导出的简短复制粘贴格式 —— 一个 6 字符的 16 进制字符串,能舒服地放进 CSS 自定义属性,等您的眼睛学会这种模式后一眼就能读出来。RGB 是面向通道地址的格式,硬件 API、canvas 绘制调用、图像缓冲区操作、OpenGL 颜色属性,以及大多数图形 SDK 都期望它 —— 三个独立的 0–255 整数(或归一化到 0–1 的浮点数),直接映射到 LCD 的红、绿、蓝子像素或 CRT 的荧光粉。两者之间的转换是机械的:把 HEX 拆成三组 2 位,然后把每组当作 16 进制数读取。本工具在您输入时实时跑这套转换,无需点击「转换」按钮,同时免费在 RGB 输出旁同屏展示其他每一种常见颜色格式(HSL、OKLCH、OKLAB、HSV、HWB、CMYK,加上 148 个 CSS 命名颜色)。
**RGB 格式本身值得仔细看一眼。** 标准 24 位 sRGB 把每个通道编码为 0–255 的 8 位无符号整数 —— 每通道 256 个值,合计 16,777,216 种颜色(256³)。参考标准是 IEC 61966-2-1,1996 年的 sRGB 规范,锚定在当时主导显示器的 CRT 荧光粉原色上。CSS 通过 `rgb()` 函数以三种语法形态暴露 RGB。最初的 CSS 1 形式使用逗号分隔:`rgb(255, 87, 51)`。CSS Color 4(自 2022 年起的 W3C 候选推荐)加入了现代的空格分隔形式:`rgb(255 87 51)`,并通过斜线后可选地附加 alpha 通道:`rgb(255 87 51 / 0.5)`。两种形式可以互换,在每一款常青浏览器里都有支持。RGB 也接受百分比通道:`rgb(100% 33% 20%)` 等价于 `rgb(255 87 51)`,有时在手写样式表里因为可读性更受偏爱。Alpha 还有一个专门的 `rgba()` 函数用于遗留支持 —— `rgba(255, 87, 51, 0.5)` 是处处都能工作、一直支持到 IE 9 的规范形式。CSS Color 4 还加入了 `color(srgb 1 0.341 0.2)` 语法用于显式寻址 sRGB,以及与之并行的 `color(display-p3 ...)` 与 `color(rec2020 ...)` 函数用于 HEX 无法编码的广色域值。
转换数学在两个方向上都很干净。**HEX 转 RGB**:用 `parseInt(hex.slice(1, 3), 16)`、`parseInt(hex.slice(3, 5), 16)`、`parseInt(hex.slice(5, 7), 16)` 把 6 位 HEX `#RRGGBB` 解析成三个 2 位 16 进制数。对于 3 位简写 `#RGB`,把每一位复制一次(`#F73` → `#FF7733`)再解析 —— 这**不是**左填充。对于 8 位 alpha `#RRGGBBAA`,以同样方式解析末尾那一对,再除以 255 得到 0–1 的 alpha 浮点数。对于 4 位 alpha 简写 `#RGBA`,先把每一位复制一次(`#F738` → `#FF773388`)。**RGB 转 HEX** 是其逆运算:对每个通道,调用 `value.toString(16).padStart(2, '0')` 得到 2 位 HEX 对(`padStart` 很关键 —— 没有它,通道值 5 会被序列化为 `'5'` 而不是 `'05'`,生成非法 HEX),再拼接。两个方向都是比特精确的:16² = 256,正好对应每个通道占用的 0–255 字节区间,因此 HEX → RGB → HEX 往返产出原始输入逐字一致、无浮点漂移。
**HEX 与 RGB,孰优孰劣?** HEX 更短、是设计工具原生格式,也是您眼睛会逐渐学会的格式 —— 大多数前端开发者能一眼认出 `#3b82f6` 是 Tailwind blue-500。RGB 是显式通道寻址,在 JavaScript 里更便于运算,而且是两者中唯一干净接受 alpha 与百分比的格式。两种格式并存,是因为它们解决不同的问题。Web 样式表与品牌指南偏向 HEX,因为复制粘贴成本占主导。Canvas 绘制调用、图像处理、硬件 LED API,以及任何做逐通道运算的代码,都偏向 RGB,因为在元组里寻址比切字符串快。在一个典型的 Web 项目中,这两者之间的切换会发生几十次 —— 从 Figma 粘贴一个 HEX,转成 RGB 整数用于 `ctx.fillStyle = ...` 调用,再转回 HEX 用于 CSS 变量定义。
本工具的 HEX → RGB 工作流是 5 个辐条家族中的一个方向,它们共享同一个底层统一颜色转换器。专用的 统一颜色转换器是中枢 —— 它同时显示全部 9 种格式且都可编辑,当您的工作流需要的不只是 HEX 与 RGB 时,这才是合适的工具。各个单向辐条针对特定的 Google 搜索意图:反向的 RGB 转 HEX 转换器处理反方向;HEX 转 HSL 转换器对应面向设计师的传统认知空间;HEX 转 OKLCH 转换器对应现代感知均匀设计系统(Tailwind v4 与 shadcn 现在都默认 OKLCH);以及 HEX 转 CMYK 转换器用于印刷准备近似。这 5 个辐条和中枢共享同一套解析引擎与同一套转换数学,因此结果在整个家族中可保证完全一致。每一次转换都在浏览器中本地运行 —— 您的 HEX 代码绝不会上传、绝不会被记录,键入时零网络请求。可在 DevTools 中亲自验证。
// Parse any hex shape (3/4/6/8-digit) into an RGB tuple [r, g, b, a]
// All channels in 0-255 range; alpha in 0-1.
function parseHex(input) {
let h = input.trim().replace(/^#/, '');
// Expand 3-digit and 4-digit shorthand by duplicating each digit
if (h.length === 3 || h.length === 4) {
h = h.split('').map(c => c + c).join('');
}
if (!/^[0-9a-fA-F]+$/.test(h) || (h.length !== 6 && h.length !== 8)) {
throw new Error(`Invalid hex: ${input}`);
}
const r = parseInt(h.slice(0, 2), 16);
const g = parseInt(h.slice(2, 4), 16);
const b = parseInt(h.slice(4, 6), 16);
const a = h.length === 8 ? parseInt(h.slice(6, 8), 16) / 255 : 1;
return [r, g, b, a];
}
console.log(parseHex('#FF5733')); // [255, 87, 51, 1]
console.log(parseHex('#F73')); // [255, 119, 51, 1]
console.log(parseHex('#FF573380')); // [255, 87, 51, 0.5019607843137255] 3 位 `#F73`、4 位 alpha `#F738`、6 位 `#FF5733`、8 位 alpha `#FF5733CC`,以及每种形式的不带 `#` 变体(`F73`、`FF5733` 等)。解析器在显示前会把它们全部归一到同一个内部 RGB 三元组,因此无论您的来源用哪种形态,都可以直接粘贴,不必先手动展开简写。大小写也会被归一 —— `#ff5733` 与 `#FF5733` 产生完全相同的输出。
RGB 字段以 CSS Color 4 的现代形式呈现:不透明颜色为 `rgb(255 87 51)`,带 alpha 时为 `rgb(255 87 51 / 0.5)`。两种形态在每个常青浏览器(Chrome 65+、Safari 13+、Firefox 52+)中都工作。如果您的目标需要,遗留逗号形式 `rgb(255, 87, 51)` 只是一次机械替换的事;新代码中更推荐现代语法,因为它与 CSS Color 4 其他函数式语法对齐。
HEX → RGB 是整数到整数的运算:`parseInt(hex, 16)` 返回一个精确的 0–255 值,零浮点参与。反方向(`.toString(16).padStart(2, '0')`)同样精确。一次 HEX → RGB → HEX → RGB → HEX 的往返产出原始输入逐字一致,无限循环都不变。OKLCH 作为内部事实源,意味着即便更长的链路 HEX → RGB → HSL → OKLAB → HEX 也保持比特稳定,而把转换走 HSL 作枢轴的老式转换器无法保证这一点。
带 alpha 的 8 位与 4 位 HEX(`#RRGGBBAA` 与 `#RGBA`)被正确解析。末尾那一对映射到 0–1 的 alpha 浮点数:`00` → 0,`80` → 0.502,`FF` → 1。输出默认采用 CSS Color 4 的斜线语法(`rgb(255 87 51 / 0.5)`);遗留的 `rgba(255, 87, 51, 0.5)` 形式只是一次替换的事。在设计 token 迁移中,当 alpha 值可能被埋在 8 位 HEX 代码里时非常有用。
您粘贴的同一个 HEX 也驱动 HSL、HSV、HWB、OKLCH、OKLAB、CMYK,以及最接近的 CSS 命名颜色 —— 全部在同一页上一眼可见。您绝不会被锁死在仅 HEX → RGB。如果队友需要 OKLCH 三元组用于 Tailwind v4 token、最接近的命名颜色用于文档文案,或者 CMYK 近似值用于印刷报价,这些值都已经在那里,带各自的复制按钮。
把一个 HEX 喂进来,对比度行会立即用 WCAG 2.1(监管下限:正文文本 4.5:1,AAA 7:1)和 APCA Lc(拟议的 WCAG 3 继任者:正文文本目标 `|Lc| ≥ 75`)对白与对黑评分。当您刚把品牌 HEX 转成 RGB,想在发布前验证它作为正文文本颜色是否真的可读时非常有用。
取色器下方,「复制为代码」区段会把当前颜色变成 5 个平台的可粘贴片段:CSS 自定义属性(`--color-brand: rgb(255 87 51)`)、Tailwind v4 `@theme` token、SwiftUI `Color(red:green:blue:)` 字面量、Jetpack Compose `Color(0xFFFF5733)` 常量、Flutter `Color(0xFFFF5733)`。每个平台所期望的精确语法,可直接拖进 iOS 资源目录、Android 主题文件或 Flutter `ThemeData`。
所有 HEX 解析、RGB 转换、对比度评分与调色板生成都在浏览器中本地运行。您的 HEX 代码绝不会被传输、绝不会在任何服务器被记录、绝不会被分析。键入时零网络请求 —— 可在 DevTools 中亲自验证。可放心用于尚未公布的品牌调色板、内部设计 token、NDA 下的草稿稿件,以及任何其他保密的颜色工作。
当前颜色会在每次变更时自动以 `#hex=ff5733` 的形式编码进 URL 哈希。复制 URL,粘贴到 Slack 线程或 GitHub issue 里,打开它的人会落在同样的 HEX、同样的 RGB 结果上。哈希只活在您的地址栏中,绝不会传到服务器(浏览器不会把 URL 片段放进 HTTP 请求),因此即便分享链接,颜色也不会泄露给任何第三方。
Google 搜「hex to rgb」时的默认结果 —— 一个单向表单,HEX 进、RGB 出,看不到其他格式。从搜索点进来做一次性查询时还行。缺少 OKLCH、对比度检查、色域检测、alpha 处理,以及多格式同屏视图。除了最朴素的单次转换场景,本工具在每一个维度上都更胜一筹。
围绕每个颜色构建的长期 SEO 页面,带深度元数据:对您查询的任意 HEX,都会给出转换、调色板、和谐色、渐变。UI 已显陈旧(2010 年代初风格),不支持 OKLCH,无 APCA 对比度,无广色域处理。从 Google 发现某个具体 HEX 时比较强;在主动转换工作流中较弱,直接键入统一字段 UX 更快。
面向初学者、放在一份以教学为主的页面上的 HEX/RGB/HSL 切换器,在搜索结果中无处不在。无 OKLCH,除 rgba 外不处理 alpha,无高级特性。作为 W3Schools 讲解内容旁的参考工具有用。本工具在其他每个方面都更优:更多格式、感知数学、色域 + 对比度 + 色盲特性,以及面向 Tailwind v4 / SwiftUI / Compose / Flutter 的现代代码导出。
Chrome、Firefox 与 Safari 的 DevTools 都自带取色器,当您在 CSS 面板里点击颜色色卡时会内联把 HEX 转成 RGB。免费、免安装、随时可用。缺少 OKLCH、缺少可分享 URL、缺少面向非 Web 平台(SwiftUI、Compose)的代码导出。已经在调试 CSS 时用 DevTools;需要跨平台输出时用本工具。
自 OS X 起每台 Mac 都自带 —— 把指针悬停在任意像素上即可读出 RGB / HEX / 线性值。从屏幕任意应用取样像素颜色时非常出色。它不会转换您粘贴的 HEX 值;它是屏幕采样器,不是转换器。要在浏览器中获得同样的屏幕采样能力,可以用本工具取色器中的 EyeDropper 按钮(仅 Chromium 系浏览器)。
覆盖多种色彩空间的每色 SEO 页面(HEX、RGB、HSL、HSV、CMYK、XYZ、CIELAB)。缺少现代 OKLCH 支持,以及统一字段编辑 UX。自动生成的内容页面有些内容农场气息,但转换数据是正确的。通过 Google 翻找单个颜色的元数据时不错;主动工作流则本工具更快。
#FF5733
RGB 输出:`rgb(255 87 51)`。最经典的用例 —— 设计师把品牌色拖进 Figma,您截了图,吸管给了您 HEX,而现在您需要通道整数,用于一次 canvas 绘制调用、一条硬件 LED 灯带,或者针对图像缓冲区做像素运算。这里展示的 CSS Color 4 空格分隔语法是现代写法;遗留的逗号形式 `rgb(255, 87, 51)` 含义完全相同,自 IE 3 起每个浏览器都支持。
#3b82f6
RGB 输出:`rgb(59 130 246)`。Adobe 的取色器(Photoshop、Illustrator、InDesign 里都一样)接受 0–255 区间的 RGB 整数作为原生输入 —— 把 59 / 130 / 246 填进三个通道框,您就精确匹配上了 Tailwind 的 `blue-500`。当设计师需要在面向印刷的排版应用里模拟一个 Web 颜色,或者您正在把品牌色采样进色卡库以便做图像编辑时,这套流程非常好用。
#FF573380
RGB 输出:`rgb(255 87 51 / 0.5)`。末尾那一对(`80`)解码为 `128/255 ≈ 0.502`,通过 CSS Color 4 的斜线语法体现为 alpha 通道。等价的遗留形式是 `rgba(255, 87, 51, 0.5)`,至今依然处处都被支持,也是更老的预处理器所期望的写法。带 alpha 的 8 位 HEX 在 2018 年原生登陆了所有常青浏览器;在那之前,alpha 只能通过 `rgba()` 函数来表达。
#F73
RGB 输出:`rgb(255 119 51)`。CSS 规范把 3 位 HEX 定义为一种简写,其中每一位都被复制一次以形成 6 位等价值:`#F73` 展开为 `#FF7733`,因此 R = `FF` = 255、G = `77` = 119、B = `33` = 51。这**不是**左填充 —— `#F73` **不是** `#000F73`。许多初学者搞错了这一点;本工具的展开行为让规则一眼可见。
10 个最常转换的 HEX 代码及其 RGB 等价值的参考表 —— 纯原色、纯次原色,以及来自 Tailwind 调色板的 2 个真实品牌色。
纯黑。三个通道都为零 —— 没有发出任何光。RGB 三元组 (0, 0, 0)。
#000000 → rgb(0 0 0) 屏幕上的纯黑很少是合适的设计选择 —— 正文文本不妨试试 `#111` 或 OKLCH 感知亮度 0.1–0.15,更柔和。
需要 OKLCH 吗?请试用专用的 HEX 转 OKLCH 转换器,获得感知均匀的输出。
纯白。三个通道都达到最大值(255)。sRGB 中最亮的颜色。
#FFFFFF → rgb(255 255 255) 暗环境下纯白背景容易引起视觉疲劳 —— 可以考虑 `#fafafa` 或 OKLCH 0.98 之类更暖的替代。
需要 OKLCH 吗?请试用专用的 HEX 转 OKLCH 转换器,获得感知均匀的输出。
纯红。R 通道最大,G 与 B 为零。sRGB 三原色中的第一个。
#FF0000 → rgb(255 0 0) 纯红饱和度极高,很少适配品牌调色板 —— 大多数「红色」品牌色更接近 #DC2626 或 #E53935。
需要 OKLCH 吗?请试用专用的 HEX 转 OKLCH 转换器,获得感知均匀的输出。
纯绿。G 通道最大,R 与 B 为零。CSS 命名颜色 `lime`(不是 `green`,`green` 是 #008000)。
#00FF00 → rgb(0 255 0) CSS 关键字 `green` 解析为 #008000(半亮),不是 #00FF00 —— 这是个常见的混淆点。要表达纯 RGB 绿请用 `lime`。
需要 OKLCH 吗?请试用专用的 HEX 转 OKLCH 转换器,获得感知均匀的输出。
纯蓝。B 通道最大,R 与 G 为零。sRGB 第三原色。
#0000FF → rgb(0 0 255) 白底纯蓝过不了 WCAG AA 对比度(3.7:1) —— 正文文本可以考虑更深的品牌蓝,如 #1D4ED8(Tailwind blue-700)。
需要 OKLCH 吗?请试用专用的 HEX 转 OKLCH 转换器,获得感知均匀的输出。
青色 —— 绿和蓝最大,红为零。sRGB 三个次原色之一。CSS 命名颜色 `cyan`(或等价的 `aqua`)。
#00FFFF → rgb(0 255 255) 在 CSS 中 cyan 与 aqua 是完全同义词 —— 都解析为 #00FFFF。挑一个,在样式表中保持一致。
需要 OKLCH 吗?请试用专用的 HEX 转 OKLCH 转换器,获得感知均匀的输出。
品红 —— 红和蓝最大,绿为零。CSS 命名颜色 `magenta`(或等价的 `fuchsia`)。
#FF00FF → rgb(255 0 255) 在 CSS 中 magenta 与 fuchsia 是完全同义词 —— 都解析为 #FF00FF。常见于测试图案与开发工具的覆盖层。
需要 OKLCH 吗?请试用专用的 HEX 转 OKLCH 转换器,获得感知均匀的输出。
黄色 —— 红和绿最大,蓝为零。按感知亮度算是 sRGB 三个次原色中最亮的。
#FFFF00 → rgb(255 255 0) 黄色是屏幕上感知亮度最高的非白色 —— 白底上的黄字几乎不可见,虽然 HEX 看上去在纸上很正常。
需要 OKLCH 吗?请试用专用的 HEX 转 OKLCH 转换器,获得感知均匀的输出。
Tailwind CSS 默认的 blue-500 品牌色 —— 2020 年代中期标志性的「Web 蓝」。无数仪表盘、营销站点与管理工具中都在使用。
#3b82f6 → rgb(59 130 246) Tailwind v4 在 OKLCH 中重新定义了 blue-500(`oklch(0.629 0.193 263.4)`)以获得感知均匀的色阶 —— HEX 保持不变作为回退。
需要 OKLCH 吗?请试用专用的 HEX 转 OKLCH 转换器,获得感知均匀的输出。
Tailwind CSS 默认的 rose-500 —— 高饱和度的粉红色调,常用于强调按钮、警示状态和品牌对比。
#f43f5e → rgb(244 63 94) rose-500 在白底上对大字号文本过 WCAG AA(4.6:1),但正文文本过不了 —— 白底正文请搭配 rose-600(#e11d48)或更深的色阶。
需要 OKLCH 吗?请试用专用的 HEX 转 OKLCH 转换器,获得感知均匀的输出。
把任意 HEX 值丢进 HEX 输入框 —— 带或不带前导 `#`、3 位简写(`#F73`)、6 位完整形式(`#FF5733`)、4 位 alpha 简写(`#F738`),或者 8 位 alpha 完整形式(`#FF5733CC`)。工具会把全部 5 种输入形态在内部归一到同一规范颜色。大小写无关(`#ff5733` 与 `#FF5733` 解析结果完全相同)。非法字符或位数错误会产生一个安静的行内错误;合法 HEX 则会实时刷新其他每一个格式字段。
HEX 字段下方的 RGB 字段以 CSS Color 4 现代空格分隔语法显示对应的 `rgb()` 值:不透明颜色为 `rgb(255 87 51)`,带 alpha 时为 `rgb(255 87 51 / 0.5)`。每个通道是 0–255 整数;alpha 归一化到 0–1。数值是比特精确的 —— `parseInt('FF', 16)` 返回 255,过程中不涉及浮点运算,因此往返回到 HEX 时输出与原始输入逐字一致。
每个格式卡片右侧都有一个复制按钮。一键即可把值送到剪贴板 —— 按钮标签短暂闪现「Copied!」以便您知道。复制出来的字符串是规范的 CSS Color 4 语法(`rgb(255 87 51)`);如果您的目标需要遗留的逗号形式,转换是机械的(把空格替换为 `, `)。要输出特定平台的代码(SwiftUI、Compose、Flutter、Tailwind v4),请使用取色器下方的「复制为代码」区段。
您粘贴的同一个 HEX 也会点亮其他格式字段 —— 给遗留 CSS 用的 HSL,给感知均匀设计系统用的 OKLCH 与 OKLAB,给设计师取色器工作流用的 HSV 与 HWB,给印刷估算用的 CMYK,以及给文档与文案用的最接近 CSS 命名颜色。您绝不会被锁死在仅 HEX → RGB;如果您还需要把 OKLCH 三元组放进 Tailwind v4 `@theme` 块,它就在 OKLCH 字段中,带自己的复制按钮。
格式网格下方是一个 SL 方块 + 色相滑块 + alpha 滑块,用于可视化探索。拖动任意控件,每一个文本字段都会实时更新,包括您一开始用的 HEX 与 RGB。在 Chromium 系浏览器(Chrome、Edge、Brave)上,EyeDropper 按钮会激活原生 `EyeDropper` API,在屏幕任意位置取样像素(包括浏览器窗口之外) —— 当您想从另一应用 UI 抓一个 HEX、又不愿先截图时非常有用。
3 位简写 `#RGB` 通过*复制每一位*来展开,而不是左填零。`#F73` 变成 `#FF7733`(亮橙),不是 `#000F73`(深蓝)。这是 CSS 颜色语法最常被搞错的角落;初学者经常以为简写是某种零填充,结果得到完全不对的颜色。同样规则也适用于 4 位 alpha 简写 `#RGBA` —— 每一位复制一次以形成 8 位等价值。
假定 #F73 左填充到 #000F73: expected: 深蓝 rgb(0, 15, 115) actual: 亮橙 rgb(255, 119, 51)
3 位简写复制每一位: #F73 → #FF7733 → rgb(255, 119, 51) 本工具的实时展开会随键入显示这一点。
把 RGB 转回 HEX 时,每个通道的 `toString(16)` 都需要左填充到 2 位。没有 `padStart(2, '0')`,单位通道值会生成非法 HEX:`rgb(5, 87, 51)` 会被序列化成 `#55733`(5 个字符),而不是 `#055733`(6 个字符)。许多临时性的转换器跳过了填充,任何通道值低于 16 都会输出有问题。标准写法是对 R、G、B 每一个都用 `value.toString(16).padStart(2, '0')`。
跳过 padStart:
[5, 87, 51].map(v => v.toString(16)).join('') → '55733'
产生非法的 5 字符 HEX。 使用 padStart(2, '0'):
[5, 87, 51].map(v => v.toString(16).padStart(2, '0')).join('') → '055733'
合法的 6 字符 HEX;对所有 0–255 通道值都正确。 CSS 8 位 HEX 是 `#RRGGBBAA` —— alpha 是*末尾*那一对。某些颜色库(尤其是较老 Android 的 `Color.parseColor()`)使用相反顺序 `#AARRGGBB`,alpha 在*前面*,这与 CSS HEX 不兼容。一个 Web HEX `#FF573380`(50% alpha 的橙色)被当作 `#AARRGGBB` 解读会变成 alpha=255、R=87、G=51、B=128 —— 完全不透明的深青色。在 8 位 HEX 往返之前,务必核实目标平台的 alpha 顺序。
把 CSS 8 位 HEX 粘进遗留 Android 的 Color.parseColor(): #FF573380 被当作 #AARRGGBB 解读 → 颜色和 alpha 都完全错了。
使用目标平台所声明的格式: for Android Compose: Color(0xFFFF5733) alpha 在首字节 for CSS: #FF573380 alpha 在末字节 不要在两者之间直接互换粘贴而不重新排序。
RGB 通道是 gamma 编码的,不是线性的。对两个 RGB 值求平均,得到的感知中点是错的。`(255, 0, 0)` 与 `(0, 255, 0)` 平均出 `(127, 127, 0)`,一个浑浊的暗橄榄色,而不是您混合红光与绿光时期待的明亮黄色中点。要正确混色,先通过 sRGB 传递函数(CSS Color 4 §11.2)解码到线性 RGB,在线性空间求平均,再重新编码。或者在感知距离均匀的 OKLAB / OKLCH 中工作。
直接对 gamma 编码的 RGB 求平均: (rgb(255,0,0) + rgb(0,255,0)) / 2 = rgb(128, 128, 0) 看上去像暗橄榄色,而不是明亮黄色。
在线性 RGB 中求平均: 解码 → 线性 RGB → 求平均 → 重新编码 → rgb(188, 188, 0) 可见的明亮黄色,与物理光混合的结果相符。
转换工具
在线免费进制转换工具,支持二进制、八进制、十进制、十六进制及 2-36 任意进制互转。无需注册,数据不离开浏览器,即时获取结果。
转换工具
在浏览器中将 HEX 转 RGB、HSL、OKLCH、OKLAB 与 CMYK,一键复制任意格式。免费、免注册,您的颜色永远不会离开本页。
转换工具
在浏览器中把 HEX 颜色转成 CMYK。基于 sRGB 的朴素近似,适合印前预览。免费、免注册,您的颜色始终保留在本地。
转换工具
在浏览器中把任意 HEX 颜色转成 HSL —— 3 位、6 位以及带 alpha 的 8 位全部支持。免费、即时、免注册,您的颜色永远不会离开本页。
转换工具
把 HEX 转成 OKLCH,直接喂给 Tailwind v4 设计 token。实时输出感知均匀的三元组,带 Display P3 色域提醒。免费,纯浏览器运行。
转换工具
免费在线压缩 JPEG、PNG、WebP 图片,体积缩小高达 80%。浏览器本地处理、图片不上传服务器。支持批量压缩 20 张、质量调节、前后对比预览。无需注册。