Conversão de Cor RGB para Hex: Um Guia de Referência Completo

17 Jun 2026 1,228 words

Conversão de Cor RGB para Hex: Um Guia de Referência Completo

A conversão RGB para Hex é o processo de traduzir uma cor definida pelos seus componentes vermelho, verde e azul numa representação hexadecimal de seis dígitos usada extensivamente no desenvolvimento web. Compreender como estes formatos se relacionam ajuda a trabalhar mais eficazmente com CSS, ferramentas de design e manipulação de cores em código.

Modelos de Cor Explicados

RGB (Vermelho, Verde, Azul)

RGB é um modelo de cor aditivo onde cada componente de cor é um número inteiro de 0 a 255. A combinação de três valores produz mais de 16 milhões de cores possíveis.

rgb(255, 0, 0)    → vermelho puro
rgb(0, 255, 0)    → verde puro
rgb(0, 0, 255)    → azul puro
rgb(255, 255, 255) → branco
rgb(0, 0, 0)      → preto
rgb(128, 128, 128) → cinzento médio

Hexadecimal (Hex)

Os códigos de cor Hex usam seis dígitos hexadecimais agrupados como RRGGBB. Cada par representa a intensidade de vermelho, verde ou azul em notação base-16, onde 00 é o mínimo e FF é o máximo.

#FF0000 → vermelho
#00FF00 → verde
#0000FF → azul
#FFFFFF → branco
#000000 → preto
#808080 → cinzento

HSL (Matiz, Saturação, Luminosidade)

HSL representa cores como um ângulo numa roda de cores (0-360 graus), mais percentagens de saturação e luminosidade. É mais intuitivo para humanos porque pode ajustar a luminosidade ou saturação independentemente.

hsl(0, 100%, 50%)    → vermelho
hsl(120, 100%, 50%)  → verde
hsl(240, 100%, 50%)  → azul
hsl(0, 0%, 50%)      → cinzento médio

CMYK (Ciano, Magenta, Amarelo, Preto)

CMYK é um modelo de cor subtrativo usado para impressão. Os valores variam de 0% a 100% para cada componente. É o inverso do RGB — adicionar mais tinta reduz a luz refletida.

cmyk(0%, 100%, 100%, 0%)   → vermelho
cmyk(100%, 0%, 100%, 0%)   → verde
cmyk(0%, 0%, 0%, 100%)     → preto
cmyk(0%, 0%, 0%, 0%)       → branco

Fórmulas de Conversão

RGB para Hex

Converta cada componente RGB para um valor hexadecimal de dois dígitos e concatená-los:

R = 255 → FF
G = 128 → 80
B = 64  → 40
Resultado: #FF8040
function rgbToHex(r, g, b) {
  const toHex = (n) => {
    const hex = Math.max(0, Math.min(255, n)).toString(16);
    return hex.length === 1 ? '0' + hex : hex;
  };
  return `#${toHex(r)}${toHex(g)}${toHex(b)}`.toUpperCase();
}

console.log(rgbToHex(255, 128, 64)); // #FF8040
function rgbToHex(int $r, int $g, int $b): string {
    $r = max(0, min(255, $r));
    $g = max(0, min(255, $g));
    $b = max(0, min(255, $b));
    return sprintf('#%02X%02X%02X', $r, $g, $b);
}

echo rgbToHex(255, 128, 64); // #FF8040

Hex para RGB

Analise a string hex de seis dígitos em três pares e converta cada um de base-16 para base-10:

function hexToRgb(hex) {
  const clean = hex.replace('#', '');
  const r = parseInt(clean.substring(0, 2), 16);
  const g = parseInt(clean.substring(2, 4), 16);
  const b = parseInt(clean.substring(4, 6), 16);
  return { r, g, b };
}

console.log(hexToRgb('#FF8040')); // { r: 255, g: 128, b: 64 }
def hex_to_rgb(hex_color: str) -> tuple:
    clean = hex_color.lstrip('#')
    return tuple(int(clean[i:i+2], 16) for i in (0, 2, 4))

print(hex_to_rgb('#FF8040'))  # (255, 128, 64)

RGB para HSL

A conversão HSL envolve encontrar os componentes de cor dominante e secundário para determinar o ângulo de matiz:

function rgbToHsl(r, g, b) {
  r /= 255; g /= 255; b /= 255;
  const max = Math.max(r, g, b);
  const min = Math.min(r, g, b);
  const l = (max + min) / 2;

  if (max === min) return { h: 0, s: 0, l: Math.round(l * 100) };

  const d = max - min;
  const s = l > 0.5 ? d / (2 - max - min) : d / (max + min);
  let h = 0;
  if (max === r) h = ((g - b) / d + (g < b ? 6 : 0)) * 60;
  else if (max === g) h = ((b - r) / d + 2) * 60;
  else h = ((r - g) / d + 4) * 60;

  return { h: Math.round(h), s: Math.round(s * 100), l: Math.round(l * 100) };
}

console.log(rgbToHsl(255, 128, 64)); // { h: 20, s: 100, l: 63 }

Tabela de Referência Rápida

RGB Hex HSL Nome da Cor
255, 0, 0 #FF0000 hsl(0, 100%, 50%) Vermelho
0, 255, 0 #00FF00 hsl(120, 100%, 50%) Lima
0, 0, 255 #0000FF hsl(240, 100%, 50%) Azul
255, 255, 0 #FFFF00 hsl(60, 100%, 50%) Amarelo
0, 255, 255 #00FFFF hsl(180, 100%, 50%) Ciano
255, 0, 255 #FF00FF hsl(300, 100%, 50%) Magenta
0, 0, 0 #000000 hsl(0, 0%, 0%) Preto
255, 255, 255 #FFFFFF hsl(0, 0%, 100%) Branco
128, 128, 128 #808080 hsl(0, 0%, 50%) Cinzento
128, 0, 0 #800000 hsl(0, 100%, 25%) Castanho-avermelhado
0, 128, 0 #008000 hsl(120, 100%, 25%) Verde
0, 0, 128 #000080 hsl(240, 100%, 25%) Azul-marinho
255, 165, 0 #FFA500 hsl(39, 100%, 50%) Laranja
128, 128, 0 #808000 hsl(60, 100%, 25%) Verde-oliva
128, 0, 128 #800080 hsl(300, 100%, 25%) Roxo

Funções de Cor CSS

O CSS moderno suporta funções de cor que vão além dos códigos hex básicos:

/* Hex tradicional */
.element { color: #FF8040; }

/* RGB com alfa */
.element { color: rgba(255, 128, 64, 0.5); }

/* HSL com alfa */
.element { color: hsla(20, 100%, 63%, 0.5); }

/* Sintaxe de cor relativa moderna */
.element { color: hsl(from #FF8040 h s calc(l + 10%)); }

/* OKLCH — espaço de cor perceptual uniforme */
.element { color: oklch(0.7 0.15 45); }

Casos de Uso Comuns

  • Desenvolvimento web — Traduzir mockups de design (RGB/HSL) para CSS (Hex)
  • Visualização de dados — Gerar escalas de cor programaticamente
  • Processamento de imagem — Ler dados de pixel em RGB e armazenar como hex
  • Diretrizes de marca — Manter cor consistente entre formatos
  • Acessibilidade de cor — Calcular rácios de contraste entre cores

Ferramenta Online

A ferramenta RGB to HEX Converter no Help2Code converte cores entre RGB, HEX, RGBA, HSL e CMYK com pré-visualização ao vivo. Escolha uma cor, cole um código hex ou gere uma cor aleatória para ver todos os quatro formatos instantaneamente. A pré-visualização da cor atualiza em tempo real, e pode copiar qualquer formato com um clique. A ferramenta Color Palette Extractor também é útil para extrair esquemas de cor de imagens.

Conclusão

Compreender a conversão RGB para Hex — e a relação entre modelos de cor — é essencial para desenvolvedores web e designers. A conversão é direta: cada canal RGB converte-se para um par hex de dois dígitos. Uma vez que conhece o padrão, alternar entre RGB, Hex, HSL e CMYK torna-se natural. Use a ferramenta RGB to HEX Converter para conversões instantâneas e os exemplos de código acima para integrar lógica de cor nos seus projetos.


About this article

Aprenda como converter RGB para Hex e entre formatos de cor (RGB, HEX, HSL, CMYK). Inclui exemplos de código, fórmulas de conversão e uma ferramenta online.


Related Articles


Related Tools

Help2Code Logo
Menu