Conversor de RGB para hex
Obtenha o código hex de qualquer cor RGB: 255, 128, 0 é #ff8000, um laranja. Os seis dígitos aparecem em minúsculas, em maiúsculas e sem a cerquilha, prontos para uma folha de estilo ou um guia de marca. Grátis no seu navegador.
- Grátis
- Funciona no seu navegador
- Sem cadastro
- Seus dados não saem do seu aparelho
Executar grátis
Exemplo resolvido
- Resistência (Ω)
- 255
- G
- 128
- B
- 0
- Hex
- #ff8000
- Hex sem cerquilha
- ff8000
- Maiúsculas
- #FF8000
- Rgb
- rgb(255, 128, 0)
Este conversor de RGB para hex recebe três intensidades de canal — vermelho, verde e azul — cada uma como um número inteiro de zero a duzentos e cinquenta e cinco, e devolve a string hexadecimal CSS correspondente, como cerquilha ff oito zero zero zero, para laranja. Designers, desenvolvedores front-end e estudantes usam esse mapeamento todos os dias: ferramentas de design exportam triplas sRGB, folhas de estilo e tokens preferem o hex compacto de seis dígitos, e apostilas precisam de uma ponte reproduzível entre os dois. O mecanismo é totalmente determinístico: divide cada canal em nibbles alto e baixo, com divisão inteira por dezesseis e resto, mapeia cada nibble para um dígito de zero a nove e a a f, e nunca chama a rede, amostra aleatoriedade, ou depende do relógio.
O que significa a conversão de RGB para hex e o que a resposta contém
No modelo sRGB de oito bits, usado pelo CSS e pela maioria dos gráficos web, cada um de vermelho, verde e azul é um canal inteiro de zero (nenhuma dessa primária) a duzentos e cinquenta e cinco (intensidade total). Códigos de cor hexadecimais empacotam os mesmos três bytes em seis dígitos hex: dois dígitos para vermelho, dois para verde, e dois para azul, geralmente escritos com uma cerquilha inicial, para que uma folha de estilo possa usá-los como um valor de cor.
A conversão é a divisão clássica em nibbles: para um canal n, o dígito alto é o piso de n sobre dezesseis, e o dígito baixo é n módulo dezesseis; cada dígito mapeia para zero a nove, e depois a a f. Não há caminho que aceite porcentagens, canais em ponto flutuante, ou abreviação de três dígitos como entrada, e nenhum limite silencioso de duzentos e cinquenta e seis para duzentos e cinquenta e cinco.
Como r, g e b são lidos e como o hex permanece reproduzível
Espaços externos em canais de string são aparados; um sinal de mais opcional no início é permitido apenas quando os caracteres restantes são dígitos decimais que se convertem em um inteiro dentro do intervalo.
Um número JavaScript solto é aceito apenas quando é um inteiro finito dentro de zero a duzentos e cinquenta e cinco; valores como cento e vinte e oito vírgula cinco falham na validação, em vez de serem arredondados, e valores negativos ou de duzentos e cinquenta e seis para cima falham, com uma mensagem que nomeia o canal e afirma que ele precisa ficar dentro de zero a duzentos e cinquenta e cinco.
A conversão usa o alfabeto fixo de dígitos zero a nove e a a f, em cada nibble, para que a mesma tripla sempre produza a mesma string hex minúscula, entre execuções e plataformas. Zero mapeia para zero zero, duzentos e cinquenta e cinco mapeia para f f, e canais mistos, como quarenta e três, noventa e oito, oitenta e um, produzem o padrão familiar dois-b seis-dois cinco-um, usado em sistemas de design.
Onde a conversão de RGB para hex se encaixa no design, nos estudos e no software
Designers encontram esse mapeamento quando um guia de marca lista amostras RGB, e o arquivo CSS ou token do Figma precisa de códigos com cerquilha, quando um conta-gotas de captura de tela reporta vermelho verde azul, e o arquivo de tema armazena hex, ou quando uma verificação de acessibilidade precisa ecoar a mesma string de cor que a folha de estilo usa.
Estudantes veem isso em cursos de desenvolvimento web que introduzem cores CSS, em aulas de arte digital que transitam entre controles deslizantes de canal e seletores hex, e em aquecimentos de entrevista que pedem uma conversão mental de uma tripla curta. Ferramentas de produto e de educação usam a conversão quando um aluno ajusta três controles deslizantes, e a interface precisa mostrar a string hex ao vivo, sem uma ida e volta a uma biblioteca gráfica pesada.
Combine-a com ferramentas de cor multi-formato, quando precisar de HSL ou CMYK, e com outros conversores gratuitos e determinísticos, quando estiver montando um pequeno laboratório para higiene de sistema de design.
Casos de uso
Tokens de design e CSS
Transforme triplas RGB de marca em strings #rrggbb, para folhas de estilo, arquivos de tema, e tokens de sistema de design.
Lição de casa e demonstrações didáticas
Confira o trabalho de canal para hex dos alunos, e faça demonstrações ao vivo de cores CSS, sem aplicativos de calculadora opacos.
Perguntas frequentes
Qual intervalo é permitido para r, g e b?
Cada canal precisa ser um número inteiro de 0 a 255, inclusive.
A saída hex é minúscula ou maiúscula?
O campo hex principal usa dígitos minúsculos, com um # inicial. O campo maiúsculo devolve a mesma cor, com A–F maiúsculos, para guias de estilo que preferem essa forma.
Isso converte hex de volta para RGB?
Não. Esta ferramenta apenas mapeia canais RGB inteiros para uma string hex. Use um conversor de cor multi-formato, se precisar de hex para RGB ou outros espaços.
Qual é o código hex de RGB 255, 128, 0?
É #ff8000, um laranja: dois dígitos para o vermelho, dois para o verde e dois para o azul. A forma em maiúsculas, #FF8000, também aparece para guias de estilo que preferem letras maiúsculas.
Posso digitar decimais ou valores acima de 255?
Não. Cada canal precisa ser um número inteiro de 0 a 255. Um decimal ou um número acima de 255 é recusado com uma mensagem que indica o canal, sem arredondar nem cortar o valor.
Ferramentas relacionadas
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/color/rgb-hex \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"r":255,"g":128,"b":0}'const res = await fetch("https://api.kit.forhosting.com/color/rgb-hex", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"r": 255,
"g": 128,
"b": 0
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/color/rgb-hex",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"r": 255,
"g": 128,
"b": 0
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/color/rgb-hex", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"r":255,"g":128,"b":0}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"r":255,"g":128,"b":0}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/color/rgb-hex", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"r": 255,
"g": 128,
"b": 0
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "color.rgb_hex",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Limites
min_channel | 0 |
max_channel | 255 |
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |
Notas técnicas
Canais fora de zero a duzentos e cinquenta e cinco são rejeitados com um erro claro de invalid_input, em vez de limitados silenciosamente.
O que significa a conversão de RGB para hex e o que a resposta contém
Esta calculadora devolve os inteiros validados r, g e b, uma string hex minúscula com a cerquilha inicial, os mesmos seis dígitos sem a cerquilha, uma forma maiúscula com cerquilha, para guias de estilo que preferem A a F maiúsculos, uma string de função rgb, como rgb de dois cinco cinco vírgula um dois oito vírgula zero, um rótulo de método rgb_to_hex, e um pequeno lembrete de fórmula do mapeamento de nibbles. O mecanismo constrói um hex exato de seis dígitos para três canais legais, ou rejeita a solicitação com invalid_input. Os casos rejeitados incluem um campo r, g, ou b ausente, strings vazias depois de aparadas, números não inteiros, texto não numérico, Infinity ou NaN, e qualquer canal estritamente abaixo de zero ou acima de duzentos e cinquenta e cinco. Se você precisar de hex para RGB, HSL, LAB, CMYK, ou conversões de ida e volta em múltiplos formatos, use uma ferramenta de cor dedicada multi-formato; esta página responde apenas a canais RGB inteiros, para uma string hex CSS estável, adequada para tokens, testes unitários e consumidores de API.
Como r, g e b são lidos e como o hex permanece reproduzível
Os campos preferenciais são r para vermelho, g para verde, e b para azul, mas os apelidos red e R maiúsculo para vermelho, green e G maiúsculo para verde, e blue e B maiúsculo para azul também são aceitos, para que planilhas, query strings e formulários tipados possam reaproveitar o mesmo contrato, sem renomear colunas. Combine a execução gratuita no navegador desta página com a API paga, quando precisar do mesmo resultado matemático dentro de um pipeline automatizado, sem reimplementar sozinho o empacotamento de canais.
Onde a conversão de RGB para hex se encaixa no design, nos estudos e no software
Nesta página, o trabalho roda inteiramente no seu navegador; pela API, cada consulta bem-sucedida custa US$ 0,002, a validação que falha não é cobrada, e nada fica armazenado depois que a resposta retorna. Essa divisão — exploração interativa gratuita e uma API paga e idêntica — segue o restante do catálogo tier A do KIT, e permite passar de uma demonstração em sala de aula ou revisão de design para um pipeline automatizado, sem mudar o resultado matemático.
Casos de integração
Fixtures determinísticos de teste
Gere resultados hex reproduzíveis, para testes unitários, verificações de propriedades, e asserções de CI sobre auxiliares de cor.
Perguntas técnicas
Quanto custa o conversor de RGB para hex?
É gratuito no seu navegador, nesta página. Pela API, uma solicitação bem-sucedida custa US$ 0,002; entradas inválidas não são cobradas.
Por que 256 é rejeitado, em vez de limitado?
Limitar silenciosamente esconde erros de dados. Canais fora do intervalo falham com invalid_input, para que quem chama corrija os valores de origem, em vez de publicar a cor errada.