Conversor de cores – consulte 37 notações de cor

Última revisão do conteúdo:

#3B82F6 é rgb(59, 130, 246) e cmyk(76%, 47%, 0%, 4%). Escreva ou cole uma cor no campo Converter de, escolha a notação na lista por baixo e depois a notação pretendida sob Converter para. O resultado aparece enquanto escreve.

Como funciona o conversor de cores?

Cada programa guarda a mesma cor à sua maneira. O Figma e o CSS esperam um código hexadecimal[1], a caixa de diálogo de escolha de cores do Word e do Excel mostra três números RGB[2], a gráfica pede CMYK e uma aplicação Android guarda a cor num único número, com a opacidade no início[3]. O conversor passa uma cor de uma destas notações para outra.

As listas sob Converter de e Converter para têm as mesmas 37 notações, divididas em seis grupos: Os mais usados, CSS, Para programadores, Vídeo e JPEG, Microsoft Office e CIE. Pode escrever em qualquer um dos dois campos, e o conversor preenche o outro.

O mesmo código pode significar duas cores diferentes, conforme a notação. Por isso, o campo lê primeiro a entrada na notação escolhida na sua lista. Se não encaixar, procura uma notação que encaixe, muda a lista e avisa numa linha por baixo. Isto acontece depois de uma breve pausa na escrita, ou logo ao colar. Se colar, por exemplo, 3900150 num campo com HEX, aparecem duas linhas: «Mudámos a notação para Número decimal (ordem RGB).» e «Esta entrada também pode significar Número decimal do Office (VBA, Excel). Escolha a notação certa na lista por baixo do campo.» A segunda indica a outra leitura possível, e a escolha da certa faz-se na lista.

Também é possível escolher uma cor sem escrever nada. A amostra de cor junto ao campo Converter de abre o seletor de cores do sistema. No Chrome, no Edge e no Opera em computador aparece ainda o botão Recolher uma cor do ecrã, que capta a cor de qualquer ponto do ecrã, mesmo fora da janela do navegador[4]. O Firefox, o Safari e o Chrome em Android não dão esta função às páginas web, por isso o botão não aparece[4].

Limpar tudo esvazia os dois campos, e Copiar resultado copia para a área de transferência o conteúdo do campo Converter para. Todo o cálculo é feito no navegador, por isso as cores introduzidas não chegam ao nosso servidor.

Que código tem a cor dourada, a vermelha ou a castanha?

O CSS conhece 148 nomes de cores, e cada nome corresponde a um único código[5]. O dourado, o castanho ou o azul-marinho existem em muitos tons, por isso a tabela dá o tom que tem esse nome em CSS. Quando Portugal e o Brasil usam palavras diferentes, a tabela mostra as duas. A coluna CMYK mostra os mesmos valores que a notação CMYK (sem perfil de cor) do conversor. Para converter outro tom, escreva o código ou o nome CSS em inglês no campo Converter de.
Cor (nome CSS)HEXRGBCMYK
preto (black)#0000000, 0, 00%, 0%, 0%, 100%
branco (white)#FFFFFF255, 255, 2550%, 0%, 0%, 0%
vermelho (red)#FF0000255, 0, 00%, 100%, 100%, 0%
verde (green)#0080000, 128, 0100%, 0%, 100%, 50%
verde-lima (lime)#00FF000, 255, 0100%, 0%, 100%, 0%
azul (blue)#0000FF0, 0, 255100%, 100%, 0%, 0%
azul-marinho (navy)#0000800, 0, 128100%, 100%, 0%, 50%
amarelo (yellow)#FFFF00255, 255, 00%, 0%, 100%, 0%
dourado (gold)#FFD700255, 215, 00%, 16%, 100%, 0%
laranja (orange)#FFA500255, 165, 00%, 35%, 100%, 0%
castanho, marrom (brown)#A52A2A165, 42, 420%, 75%, 75%, 35%
bordô (maroon)#800000128, 0, 00%, 100%, 100%, 50%
cor-de-rosa (pink)#FFC0CB255, 192, 2030%, 25%, 20%, 0%
roxo (purple)#800080128, 0, 1280%, 100%, 0%, 50%
violeta (violet)#EE82EE238, 130, 2380%, 45%, 0%, 7%
fúcsia, magenta (fuchsia)#FF00FF255, 0, 2550%, 100%, 0%, 0%
cinzento, cinza (gray)#808080128, 128, 1280%, 0%, 0%, 50%
cinzento-claro, cinza-claro (lightgray)#D3D3D3211, 211, 2110%, 0%, 0%, 17%
prateado (silver)#C0C0C0192, 192, 1920%, 0%, 0%, 25%
bege (beige)#F5F5DC245, 245, 2200%, 0%, 10%, 4%
turquesa (turquoise)#40E0D064, 224, 20871%, 0%, 7%, 12%
azul-petróleo (teal)#0080800, 128, 128100%, 0%, 0%, 50%
verde-oliva (olive)#808000128, 128, 00%, 0%, 100%, 50%
ciano (aqua)#00FFFF0, 255, 255100%, 0%, 0%, 0%

Que cores oficiais usam Portugal e o Brasil?

Em nenhum dos dois países a lei fixa os tons da bandeira em códigos de cor. Os códigos oficiais vêm dos manuais de identidade dos governos.

Portugal

O decreto de 19 de junho de 1911 e o parecer publicado a 30 de junho de 1911 descrevem as cores da bandeira apenas de forma geral, como verde-escuro e escarlate, e nenhum documento legal posterior fixou os tons num sistema de cores[6].

O Manual de Identidade e Normas Gráficas do Governo, de junho de 2024, dá as cores oficiais do logótipo da República Portuguesa em CMYK, Pantone, NCS, RGB e hexadecimal. O verde é o Pantone 349, CMYK 100/0/90/50, NCS S 4550-G10Y e #006432, e o vermelho é o Pantone 1805, CMYK 0/100/100/10, NCS S 1580-Y90R e #E61E1E[7]. A tabela do manual escreve os valores RGB com o sinal %, por exemplo R 230%, G 30% e B 30% para o vermelho[7]. Se forem copiados assim, o conversor lê-os como percentagens e dá #FF4D4D. Sem o sinal %, R 230 G 30 B 30 dá o #E61E1E do manual.

Brasil

A Lei 5.700, de 1971, define a bandeira em módulos e manda escrever a legenda Ordem e Progresso em verde, sem fixar tons. Pela mesma lei, as cores nacionais são o verde e o amarelo[8]. O Padrão Digital de Governo, o sistema de design dos sítios gov.br, usa como cor primária #1351B4, ou RGB 19, 81, 180[9].

Qual é a diferença entre modelo de cor, código de cor e espaço de cor?

Um modelo de cor diz de que é feita uma cor. O RGB é um sistema de cores aditivas, em que o vermelho, o verde e o azul se combinam para reproduzir as outras cores[10], como faz o ecrã. O CMYK descreve uma cor impressa pelas proporções de quatro tintas: ciano, magenta, amarelo e preto[11]. O HSL e o HSB passam os números RGB para matiz, saturação e luminosidade, mais fáceis de ler e de ajustar à mão[5].

Ecrã LCD ampliado com filas de riscas vermelhas, verdes e azuis, em que um quadrado vermelho acende só as riscas vermelhas e um quadrado amarelo as vermelhas e as verdes
Neste ecrã LCD ampliado, o quadrado vermelho acende só as riscas vermelhas, e o amarelo acende as vermelhas e as verdes ao mesmo tempo. É assim que o ecrã compõe cada cor: o amarelo puro é, em RGB, 255 de vermelho, 255 de verde e 0 de azul. Fotografia: Lommes, CC0

Um código de cor, ou notação, é a forma como um programa guarda os números de um modelo. #3B82F6, rgb(59, 130, 246) e o número 3900150 são três notações da mesma cor RGB. O conversor conhece 37, que diferem na escala, na ordem dos canais e no facto de guardarem ou não a opacidade.

Um espaço de cor define que cores se podem escrever e como ficam exatamente. A web usa o sRGB, um sistema de cores criado pela HP e pela Microsoft[12]. Os monitores de gama ampla mostram mais cores, e o CSS descreve-as, por exemplo, no espaço Display P3[5]. O Lab, o LCH, o Oklab, o OKLCH e o XYZ não dependem de nenhum ecrã. O Lab abrange todas as cores que uma pessoa consegue ver[5], por isso qualquer cor cabe nestas notações.

Como fica #3B82F6 em cada uma das 37 notações?

A tabela mostra uma única cor, #3B82F6, em todas as notações das listas, pela mesma ordem. Esta cor não tem um nome CSS próprio, por isso a linha Nome CSS dá o mais próximo. Todos os valores foram calculados pelo conversor.
Notação na listaGrupoCor #3B82F6
HEXOs mais usados#3B82F6
RGB (0–255)Os mais usadosrgb(59, 130, 246)
HSLOs mais usadoshsl(217.2, 91.2%, 59.8%)
HSB / HSV (Photoshop, Figma)Os mais usadoshsv(217.2, 76%, 96.5%)
CMYK (sem perfil de cor)Os mais usadoscmyk(76%, 47%, 0%, 4%)
Nome CSSOs mais usadosdodgerblue
RGB (sintaxe com espaços)CSSrgb(59 130 246)
RGB em percentagemCSSrgb(23.1% 51% 96.5%)
HWBCSShwb(217.2 23.1% 3.5%)
OKLCHCSSoklch(62.31% 0.18801 259.81)
OklabCSSoklab(62.31% -0.03325 -0.18505)
CIE Lab (branco D50, como em CSS)CSSlab(54.62 8.76 -65.79)
CIE LCH (branco D50, como em CSS)CSSlch(54.62 66.37 277.59)
Display P3CSScolor(display-p3 0.3047 0.5035 0.9338)
Adobe RGB (1998)CSScolor(a98-rgb 0.3427 0.5057 0.9498)
ProPhoto RGBCSScolor(prophoto-rgb 0.43812 0.43688 0.8984)
Rec. 2020CSScolor(rec2020 0.44191 0.53087 0.93257)
sRGB linearCSScolor(srgb-linear 0.04374 0.22323 0.92158)
RGB 0–1 (Unity, matplotlib)Para programadores0.2314, 0.5098, 0.9647
Android, cor em XML (opacidade primeiro)Para programadores#FF3B82F6
Android, inteiro ARGB (Java, Kotlin)Para programadores0xFF3B82F6
Flutter, Jetpack ComposePara programadoresColor(0xFF3B82F6)
UIColor (UIKit)Para programadoresUIColor(red: 0.231, green: 0.51, blue: 0.965, alpha: 1)
SwiftUIPara programadoresColor(red: 0.231, green: 0.51, blue: 0.965)
Número decimal (ordem RGB)Para programadores3900150
HSV do OpenCV (matiz 0–180)Para programadores109, 194, 246
HSV 0–1 (Python colorsys)Para programadores0.6034, 0.7602, 0.9647
RGB565 (Arduino, ecrãs TFT)Para programadores0x3C1E
YCbCr (JPEG, 0–255)Vídeo e JPEGY 122, Cb 198, Cr 83
YCbCr BT.601 (vídeo SD, 16–235)Vídeo e JPEGY 121, Cb 189, Cr 89
YCbCr BT.709 (vídeo HD, 16–235)Vídeo e JPEGY 122, Cb 186, Cr 92
HSL do Office (escala 0–255)Microsoft Office154, 233, 153
Número decimal do Office (VBA, Excel)Microsoft Office16155195
XYZ (branco D65)CIEcolor(xyz-d65 0.26419 0.23548 0.90345)
XYZ (branco D50)CIEcolor(xyz-d50 0.23691 0.22563 0.68038)
CIE xyYCIEx 0.18829, y 0.16782, Y 0.23548
CIE Luv (branco D65)CIEL 55.63, u -25.62, v -103.14

O que significam HEX, RGB, HSL, HSB, CMYK e nome CSS?

Estas notações estão no grupo Os mais usados. Aparecem nos programas de design, nas suítes de escritório e no CSS.

HEX

Um código hexadecimal escreve os três números RGB em base 16, com dois carateres por canal: vermelho, verde e azul. Cada par vai de 00 a FF, ou seja, de 0 a 255, o que dá 256³, ou seja, 16 777 216 cores[13]. Quando os dois carateres de cada par são iguais, o código encurta-se para três carateres: #FF0 é #FFFF00[5].

No Photoshop, o código escreve-se na caixa de texto # do Seletor de Cores da Adobe[14]. No LibreOffice vai para o campo Hex # da caixa de diálogo Escolher cor[15], e no GIMP 3.2 para o campo Notação HTML, que também aceita nomes de cores CSS[16]. O conversor de HEX para RGB explica o cálculo passo a passo.

RGB (0–255)

O RGB dá três números de 0 a 255: quanta luz vermelha, verde e azul tem uma cor. Três zeros dão o preto, e três vezes 255, o branco. O Seletor de Cores da Adobe tem para isso as caixas de texto R, G e B[14], o LibreOffice tem os campos Vermelho, Verde e Azul, de 0 a 255[15], e a caixa de diálogo de escolha de cores do Word, do Excel e do PowerPoint tem as caixas Vermelho, Verde e Azul no separador das cores personalizadas[2]. No conversor, os números separam-se com vírgulas ou espaços, e rgb(255, 215, 0) cola-se tal como vem de uma folha de estilos. O conversor de RGB para HEX faz o caminho inverso, dos números para o código hexadecimal.

HSL

O HSL descreve uma cor pela matiz (hue, em inglês), pela saturação e pela luminosidade. A matiz é um ângulo no círculo cromático, em graus: 0 é o vermelho, 120 o verde e 240 o azul, e a saturação e a luminosidade vão em percentagem[5]. Com uma luminosidade de 50 %, a cor é a mais pura, e 0 % e 100 % dão sempre o preto e o branco. O CSS entende HSL, por isso o resultado cola-se diretamente numa folha de estilos. O conversor de HEX para HSL explica em que difere o HSL do HSB e da escala do Office.

HSB / HSV (Photoshop, Figma)

HSB e HSV são dois nomes do mesmo modelo. Alvy Ray Smith publicou-o em 1978, depois de o usar durante cerca de quatro anos em programas de pintura digital[17]. A matiz funciona como no HSL, mas o terceiro número, o brilho B ou o valor V, dá a cor pura a 100 %, enquanto no HSL uma luminosidade de 100 % dá o branco. Por isso, o vermelho puro #FF0000 é hsv(0, 100%, 100%) em HSB e hsl(0, 100%, 50%) em HSL.

É assim que funciona o Seletor de Cores da Adobe no Photoshop: a matiz é um ângulo de 0° a 360°, e a saturação e o brilho vão em percentagem[14]. O LibreOffice mostra o mesmo modelo com os campos Matiz, Saturação e Brilho, com a matiz de 0 a 359[15], e o Figma chama-lhe HSB[1]. O conversor escreve o resultado como hsv(…), e no programa escrevem-se apenas os três números. O conversor de RGB para HSV e o conversor de HSV para RGB cobrem os dois sentidos.

CMYK (sem perfil de cor)

O CMYK dá as percentagens de quatro tintas de impressão: ciano, magenta, amarelo e preto. No Seletor de Cores da Adobe, as percentagens entram em C, M, Y e K[14], e o LibreOffice tem os campos Ciano, Magenta e Amarelo e, para o preto, o campo Tecla[15]. O conversor de HEX para CMYK e o conversor de CMYK para RGB dão mais exemplos de cálculo.

Nome CSS

Os nomes de cores CSS, como gold, navy ou tomato, estão em inglês, e tanto faz escrevê-los em maiúsculas ou minúsculas[5]. O campo também os aceita com um espaço: Royal Blue dá #4169E1. Quando uma cor não tem nome próprio, o campo do resultado mostra o mais próximo, e por baixo aparece a linha «Esta cor não tem um nome CSS próprio, por isso mostramos o mais próximo.» O azul do gov.br, #1351B4, recebe assim o nome darkslateblue.

Que notações de cor aceita o CSS?

O grupo CSS reúne as restantes notações que um navegador entende numa folha de estilos[5].

RGB (sintaxe com espaços)

O CSS mais recente separa os números com espaços: rgb(59 130 246). A sintaxe antiga, com vírgulas, significa o mesmo[5], e o campo aceita as duas.

RGB em percentagem

Os canais também podem ir em percentagem, em que 100 % equivale a 255, por isso rgb(100% 0% 0%) é o vermelho puro[5].

HWB

O HWB descreve uma cor pela matiz e pela quantidade de branco e de preto misturada. A especificação do CSS apresenta-o como semelhante ao HSL, mas muitas vezes ainda mais fácil de usar para uma pessoa. Também foi proposto por Alvy Ray Smith, em 1996[5]. O vermelho puro com 50 % de branco escreve-se hwb(0 50% 0%), ou seja, #FF7F80.

OKLCH

O OKLCH dá a luminosidade L em percentagem, o croma C e a matiz H em graus. O cálculo faz-se no espaço Oklab, publicado por Björn Ottosson em dezembro de 2020[5]. O seu L segue a claridade que o olho percebe. Em HSL, o azul puro e o amarelo puro têm a mesma luminosidade, de 50 %, embora o amarelo pareça muito mais claro. Em OKLCH, o azul tem 45,2 % e o amarelo 96,8 %[5].

Por isso, em OKLCH é mais fácil criar uma paleta em que as cores com o mesmo L parecem de facto igualmente claras.

Oklab

O Oklab é o mesmo espaço que o OKLCH, mas em vez do croma e do ângulo da matiz tem dois eixos: a, do verde ao vermelho, e b, do azul ao amarelo[5]. Na prática, a e b ficam entre −0,5 e +0,5[5].

CIE Lab (branco D50, como em CSS)

O espaço CIE L*a*b*, conhecido simplesmente por Lab, foi criado pela CIE em 1976[5]. Descreve uma cor pela luminosidade L, de 0 a 100, e por dois eixos, a do verde ao vermelho e b do azul ao amarelo. No Seletor de Cores da Adobe, L aceita valores de 0 a 100, e A e B de −128 a +127[14].

Os valores Lab dependem sempre do branco de referência. O CSS calcula com o branco D50 e passa do branco D65 do sRGB para o D50 pela transformação de Bradford[5], e este conversor faz o mesmo. Uma ferramenta que calcula Lab para o branco D65 dá outros valores a e b para a mesma cor, e os dois resultados estão certos.

CIE LCH (branco D50, como em CSS)

O LCH é o Lab escrito de outra forma: a luminosidade L mantém-se, e o croma C e o ângulo da matiz H ocupam o lugar dos eixos a e b[5]. O OKLCH está para o Oklab como o LCH está para o Lab.

Display P3

A especificação do CSS apresenta o Display P3 como um espaço típico dos monitores atuais de gama ampla[5]. Em CSS escreve-se color(display-p3 …), com três números de 0 a 1. No Figma, o perfil de cor de um ficheiro pode ser sRGB ou Display P3[1]. Um código hexadecimal está sempre em sRGB[5], por isso uma cor copiada em HEX de um ficheiro Display P3 pode ficar diferente.

Adobe RGB (1998)

Em CSS, o Adobe RGB (1998) chama-se a98-rgb. O seu primário verde fica no diagrama de cromaticidade em x 0,21 e y 0,71, contra x 0,3 e y 0,6 no sRGB, por isso este espaço abrange verdes e cianos mais saturados[5]. A sua curva de transferência usa o expoente 256/563, próximo de 1/2,2, mas não igual[5]. O verde puro do sRGB, #00FF00, é nele color(a98-rgb 0.565 1 0.2344).

ProPhoto RGB

A Kodak desenvolveu o ProPhoto RGB, e a ISO normalizou-o com o nome ROMM RGB. Usa o branco D50, o mesmo do Lab em CSS, e primárias impossíveis de obter fisicamente, e a especificação do CSS indica que a fotografia digital o usa nas versões de arquivo das imagens[5]. Em CSS escreve-se color(prophoto-rgb …). O conversor dá aqui cinco casas decimais, porque com quatro algumas cores de 8 bits não voltam aos mesmos valores RGB.

Rec. 2020

O Rec. 2020 é o espaço da Recomendação UIT-R BT.2020 para a televisão Ultra HD, 4K e 8K, e a especificação do CSS lembra que os ecrãs atuais não mostram toda a sua gama[5]. Um verde fora do sRGB, como color(rec2020 0 1 0), fica igual nesta notação, enquanto o HEX mostra a cor mais próxima, #00F272.

sRGB linear

O sRGB linear tem as mesmas primárias e o mesmo branco do sRGB, mas sem curva de transferência, por isso os números crescem na proporção da quantidade de luz[5]. As cores escuras recebem números muito pequenos, e por isso esta notação precisa de mais casas decimais do que o sRGB para não surgirem bandas visíveis nos degradés[5]. #3B82F6 é aqui color(srgb-linear 0.04374 0.22323 0.92158), embora o seu vermelho no sRGB seja 0,231.

Como se escreve uma cor no código de uma aplicação?

Cada programa e cada linguagem espera a cor na sua notação. O grupo Para programadores reúne as que se escrevem em código: Unity, Android, Flutter, Swift, Python, LaTeX, a API do Discord e os ecrãs para Arduino.

RGB 0–1 (Unity, matplotlib)

O Unity dá os componentes de uma cor como números de 0 a 1[18], tal como o matplotlib em Python[19]. Em LaTeX, o pacote xcolor usa no modelo rgb frações de 0 a 1 e no modelo RGB inteiros de 0 a 255[20]. Para passar um valor de 0 a 255 para uma fração, divide-se por 255: 59 passa a 0,2314.

Android, cor em XML (opacidade primeiro)

Nos ficheiros de recursos do Android, uma cor começa por cardinal e tem a forma #RGB, #ARGB, #RRGGBB ou #AARRGGBB[21]. A opacidade vem no início, ao contrário do CSS, em que um código de oito carateres acaba com a opacidade[5]. Por isso, a mesma sequência dá duas cores diferentes: #803B82F6 é, no Android, o #3B82F6 com cerca de 50 % de opacidade, mas em CSS é o roxo rgba(128, 59, 130, 0.96). O campo lê um código de oito carateres conforme a notação escolhida na sua lista: como CSS com HEX, e como Android com «Android, cor em XML (opacidade primeiro)».

Android, inteiro ARGB (Java, Kotlin)

No código Java e Kotlin, o Android guarda as cores, desde o nível de API 1, num único inteiro de 32 bits, com os canais pela ordem A, R, G, B[3]. O exemplo da documentação é 0xff0000ff, um azul opaco[3]. Com o byte de opacidade FF, o número fica negativo em Java, porque um int tem sinal: 0xFF3B82F6 vale -12877066. Nesta notação, o campo aceita as duas formas e lê tal como está um número sem byte de opacidade, como 0x3B82F6. Essa cor fica com opacidade 0, tal como no Android.

Flutter, Jetpack Compose

O Flutter cria uma cor a partir de um número hexadecimal com a opacidade no início, como Color(0xFF42A5F5), que a documentação mostra ao lado de Color.fromARGB(0xFF, 0x42, 0xA5, 0xF5)[22]. O Jetpack Compose tem uma função Color que cria uma cor a partir de um número ARGB[23], por isso Color(0xFF3B82F6) funciona sem alterações nos dois.

UIColor (UIKit)

O UIColor, no UIKit, recebe o vermelho, o verde, o azul e o alfa como frações. Desde o iOS 10 trabalha no espaço sRGB estendido, por isso não corta os componentes abaixo de 0 nem acima de 1[24]. O campo aceita também componentes escritos como divisão, como costumam aparecer no código Swift: UIColor(red: 59/255, green: 130/255, blue: 246/255, alpha: 1) dá #3B82F6.

SwiftUI

O SwiftUI cria uma cor com Color(red:green:blue:opacity:) e chama opacity ao alfa[25]. O conversor só acrescenta opacity quando a cor é parcialmente transparente.

Número decimal (ordem RGB)

Esta notação junta os três canais num único número: o vermelho multiplicado por 65 536, mais o verde multiplicado por 256, mais o azul. O Discord usa-a: os bots e os webhooks enviam a cor de um embed como um inteiro no campo color[26]. O azul do gov.br, #1351B4, é 1266100 nesta notação.

HSV do OpenCV (matiz 0–180)

Nas imagens de 8 bits, o OpenCV divide a matiz por dois para caber num byte. Por isso, aqui a matiz vai de 0 a 180, e a saturação e o valor de 0 a 255[27]. O azul do gov.br é 108, 228, 180 no OpenCV, enquanto a sua matiz em HSB é de 216,9°.

HSV 0–1 (Python colorsys)

O módulo colorsys da biblioteca padrão do Python dá a matiz, a saturação e o valor como frações de 0 a 1[28], incluindo a matiz, que as outras notações dão em graus. Uma matiz de 0,5 corresponde aqui a 180°, e o azul do gov.br é 0.6025, 0.8944, 0.7059.

RGB565 (Arduino, ecrãs TFT)

O RGB565 guarda uma cor em 16 bits: 5 bits de vermelho, 6 de verde e 5 de azul, com o vermelho nos bits mais significativos[29]. É assim que a biblioteca Adafruit GFX guarda as cores dos ecrãs a cores para Arduino, com o branco em 0xFFFF e o vermelho em 0xF800[30]. Dezasseis bits dão 65 536 cores[30], por isso o resultado é a mais próxima delas: #3B82F6 sai como 0x3C1E e volta como #3A82F7.

O conversor arredonda cada componente para o nível mais próximo, como o formato UNORM do Direct3D, em que todos os bits a um significam o valor máximo[31]. A função color565() da Adafruit GFX corta os bits menos significativos[32], por isso o seu resultado pode ficar um nível abaixo nalguma componente. Com RGB565 (Arduino, ecrãs TFT) escolhido na lista, o campo aceita 0xF800, #F800 e um número decimal como 63488.

Como converter RGB em YCbCr?

O YCbCr separa uma cor na luminância Y e em duas diferenças de cor: Cb, o azul menos a luminância, e Cr, o vermelho menos a luminância[33]. É assim que os ficheiros JPEG e o vídeo digital guardam a cor. O grupo Vídeo e JPEG tem três variantes desta notação, que diferem nos pesos dos canais e no intervalo dos números.

YCbCr (JPEG, 0–255)

O formato de ficheiro JPEG (JFIF) guarda Y, Cb e Cr no intervalo completo de 0 a 255. Pondera o vermelho com 0,299, o verde com 0,587 e o azul com 0,114, e arredonda e corta o resultado para 0–255[34]. O branco é por isso Y 255, Cb 128, Cr 128 e o vermelho puro Y 76, Cb 85, Cr 255, porque a fórmula dá 255,5 para Cr, que fica cortado em 255.

YCbCr BT.601 (vídeo SD, 16–235)

A Recomendação UIT-R BT.601, para a televisão de definição padrão, usa os mesmos pesos do JPEG, mas deixa margem no sinal: a luminância ocupa os códigos de 16 a 235 e as diferenças de cor de 16 a 240, com o centro em 128[33]. O preto é aqui Y 16, Cb 128, Cr 128 e o branco Y 235, Cb 128, Cr 128.

YCbCr BT.709 (vídeo HD, 16–235)

A Recomendação UIT-R BT.709, para a televisão HD, mantém o mesmo intervalo de códigos, mas muda os pesos para 0,2126 no vermelho, 0,7152 no verde e 0,0722 no azul[35]. O vermelho puro é por isso Y 63, Cb 102, Cr 240 em BT.709 e Y 81, Cb 90, Cr 240 em BT.601, e um leitor que descodifique um vídeo HD como BT.601 mostra as cores ligeiramente desviadas.

Os códigos YCbCr de 8 bits têm menos níveis do que o RGB, e o intervalo 16–235 ainda menos, por isso uma cor convertida para lá e para cá pode voltar um ou dois níveis diferente nalgum canal. O campo aceita três números com letras, como Y 81, Cb 90, Cr 240, ou os três números sozinhos na ordem Y, Cb, Cr.

Como se lê uma cor do Word ou do Excel?

HSL do Office (escala 0–255)

A caixa de diálogo de escolha de cores do Word, do Excel e do PowerPoint oferece no separador das cores personalizadas os modelos de cores RGB e HSL[2]. Em HSL, o Office conta a saturação e a luminosidade até 255: uma saturação de 255 é o máximo, e uma luminosidade de 255 dá o branco[2]. O conversor lê também a matiz nesta escala. Uma escala tão grossa não acerta em todas as cores do ecrã: #3B82F6 é 154, 233, 153 no Office, e esses números, recalculados, dão #3C83F6.

Número decimal do Office (VBA, Excel)

A função RGB do VBA devolve uma cor como um único número inteiro[36], e é com ela que se define o preenchimento de uma célula do Excel através da propriedade Interior.Color[37]. Nesse número, o vermelho ocupa o byte menos significativo, como no valor COLORREF do Windows[38], por isso os canais vão pela ordem inversa à da notação Número decimal (ordem RGB). O azul do gov.br é 11817235 no Excel e 1266100 pela ordem RGB.

Para ver o preenchimento da célula A1, execute uma macro de uma só linha, MsgBox Range("A1").Interior.Color. O número da janela de mensagem cola-se num campo com Número decimal do Office (VBA, Excel), e o conversor passa-o para HEX, RGB ou CMYK.

Para que servem as notações XYZ, xyY e Luv?

O XYZ é o espaço de cor que a Comissão Internacional de Iluminação (CIE) criou em 1931 para ligar as cores do espetro à visão humana[39]. O Y representa a luminância, e o CSS escala-o de forma que o branco tenha Y = 1[5].

XYZ (branco D65)

color(xyz-d65 …) dá o XYZ em relação ao branco D65, o do sRGB e do Display P3. O CSS lê da mesma forma a forma curta color(xyz …)[5]. O branco #FFFFFF é aqui color(xyz-d65 0.95046 1 1.08906).

XYZ (branco D50)

color(xyz-d50 …) dá o XYZ em relação ao branco D50, a partir do qual o CSS calcula o Lab e o LCH[5]. O branco é aqui color(xyz-d50 0.9643 1 0.8251), por isso a mesma cor tem outros valores X e Z nas duas notações XYZ.

CIE xyY

O espaço CIE xyY separa o XYZ na cromaticidade x e y e na luminância Y, com x = X / (X + Y + Z) e y = Y / (X + Y + Z), e é muito usado na prática para especificar cores[39]. O conversor mantém o Y na escala de 0 a 1 da notação XYZ, por isso o branco #FFFFFF é aqui x 0.3127, y 0.329, Y 1.

CIE Luv (branco D65)

O CIELUV, ou CIE 1976 L*u*v*, é um espaço que a CIE adotou em 1976 como uma transformação do XYZ fácil de calcular, que procura a uniformidade percetual, e é muito usado em computação gráfica que trabalha com luzes coloridas[40]. O conversor usa o branco D65, o mesmo do sRGB, por isso #FFFFFF é L 100, u 0, v 0 e o vermelho puro L 53.24, u 175.01, v 37.77.

Como se escreve uma cor com transparência?

A opacidade, também chamada canal alfa, indica quanto uma cor tapa o que está por trás: com 0 é totalmente transparente, e com 1, ou seja 100 %, totalmente opaca[5]. Em CSS escreve-se depois de uma barra, rgb(59 130 246 / 50%), na sintaxe antiga como quarto número de rgba(59, 130, 246, 0.5), e num código hexadecimal como os dois últimos carateres, por exemplo #3B82F680[5]. O RGBA é apenas o RGB com esse quarto número.

Os dois carateres de opacidade de um código de oito carateres vão de 00 a FF, ou seja, de 0 a 255, por isso 80 equivale a 128 de 255, ou seja, 50,2 %. É por isso que «RGB (sintaxe com espaços)» mostra #3B82F680 como rgb(59 130 246 / 0.502).

Estas notações não guardam a opacidade: CMYK (sem perfil de cor), Nome CSS, Número decimal (ordem RGB), HSV do OpenCV (matiz 0–180), RGB565 (Arduino, ecrãs TFT), YCbCr (JPEG, 0–255), YCbCr BT.601 (vídeo SD, 16–235), YCbCr BT.709 (vídeo HD, 16–235), HSL do Office (escala 0–255), Número decimal do Office (VBA, Excel), CIE xyY e CIE Luv (branco D65). Com elas aparece uma linha sob o resultado, por exemplo «CMYK (sem perfil de cor) não guarda a opacidade, por isso o resultado mostra a cor sem transparência.»

A palavra-chave transparent é, em CSS, um preto transparente, rgb(0 0 0 / 0%)[5], e o conversor lê-a da mesma forma: transparent e rgba(0,0,0,0) dão ambos #00000000.

Porque é que o CMYK do conversor difere do CMYK do programa de impressão?

Porque o conversor calcula o CMYK sem perfil de cor, com uma fórmula que a especificação do CSS chama ingénua. Para firebrick, #B22222, dá cmyk(0%, 81%, 81%, 30%), o mesmo resultado que o W3C mostra[41]. Assim, uma cor do ecrã passa a quatro números, mas não se sabe como vai sair no papel.

Interior de uma impressora de jato de tinta com dois tinteiros: um de três cores com pontos ciano, magenta e amarelo no rótulo e outro preto
Nesta impressora de jato de tinta HP Deskjet, um tinteiro de três cores, com tinta ciano, magenta e amarela, está ao lado de um tinteiro preto separado. A impressora compõe cada cor no papel com estas quatro tintas, e o resultado depende da tinta e do papel. Fotografia: Julo, domínio público

Uma gráfica calcula o CMYK com um perfil ICC que descreve a máquina, as tintas e o papel. No exemplo da mesma especificação, o resultado ingénuo afasta-se da impressão em 14,3 unidades DeltaE 2000, uma diferença que o W3C considera muito visível[41]. O verde do Governo de Portugal mostra a mesma diferença: o manual dá-lhe CMYK 100/0/90/50[7], e a fórmula dá para #006432 cmyk(100%, 0%, 50%, 61%).

Ao converter no Photoshop uma imagem RGB para o modo CMYK, as cores fora da gama CMYK são ajustadas, e essa gama é definida pela área de trabalho CMYK da caixa de diálogo Configurações de Cores[42]. O LibreOffice mostra campos CMYK na caixa de diálogo Escolher cor, mas só imprime em RGB[15]. Por isso, prepare o ficheiro para a gráfica em CMYK com o perfil que ela indicar, e deixe os gráficos para o ecrã em RGB ou HEX. O conversor de RGB para CMYK explica passo a passo como mudar o modo de um ficheiro e que perfis pedem as gráficas.

O que acontece a uma cor fora do sRGB?

Em OKLCH, Oklab, CIE Lab (branco D50, como em CSS), CIE LCH (branco D50, como em CSS), Display P3, Adobe RGB (1998), ProPhoto RGB, Rec. 2020, sRGB linear, XYZ (branco D65), XYZ (branco D50), CIE xyY e CIE Luv (branco D65), o conversor dá a cor exata, mesmo fora do sRGB. As restantes notações só abrangem o sRGB, por isso, para elas, o conversor procura a cor mais próxima com o método do CSS Color 4[5] e avisa sob o resultado, por exemplo: «Esta cor fica fora do espaço sRGB, por isso HEX mostra a cor mais próxima que consegue guardar.»

Estas cores vêm, por exemplo, do Tailwind CSS. Na versão 4, o Tailwind passou toda a paleta predefinida de RGB para OKLCH, para aproveitar a gama mais ampla dos ecrãs recentes[43]. O seu blue-500 é oklch(62.3% 0.214 259.815)[44]. Esta cor fica fora do sRGB, e a cor sRGB mais próxima segundo o conversor é #2B7FFF. Na versão 3, o blue-500 era ainda #3b82f6[45], a cor dos exemplos do conversor.

Porque é que o conversor não dá cores Pantone, RAL nem NCS?

Porque Pantone, RAL e NCS são sistemas de cores físicas, e só os seus proprietários publicam os equivalentes digitais. A Pantone dá os equivalentes RGB, CMYK, HEX e Lab mais próximos das suas cores na aplicação Pantone Connect[46], e a ajuda da Microsoft remete para o sítio da Pantone para obter os valores RGB a escrever na caixa de diálogo de escolha de cores do Office[2]. A RAL vende uma biblioteca digital com valores RGB e Lab de mais de 2 500 cores[47], e a NCS mostra as suas cores na plataforma NCS+[48]. Desde a versão de outubro de 2023, o Photoshop deixou de ter os três últimos livros de cores da Pantone[14].

O Manual de Identidade do Governo de Portugal mostra como se juntam estes sistemas: para cada cor oficial dá o Pantone e o código NCS ao lado dos valores CMYK, RGB e hexadecimal[7]. Para usar uma cor destas no ecrã, tire os valores da biblioteca do proprietário ou do manual da marca e escreva-os no campo Converter de. Para pintar uma parede ou encomendar uma fachada ou caixilharia numa cor RAL, escolha a cor num leque físico. Um ecrã emite luz e a tinta reflete-a, por isso o mesmo tom fica diferente na parede e no monitor.

Que notações de cor aceita este conversor?

Cada linha parte das definições iniciais: HEX sob Converter de e RGB (0–255) sob Converter para. A segunda coluna mostra a notação que o campo tem depois de ler a entrada, e a terceira o resultado no campo Converter para. Todos os resultados foram calculados pelo conversor.
O que escreveNotação sob Converter deResultado sob Converter paraComo o lemos
#38FHEXrgb(51, 136, 255)Um código de três carateres alonga-se repetindo cada caráter, como em CSS.
3B82F6HEXrgb(59, 130, 246)O cardinal não é obrigatório, por isso um código sem # copiado de um manual de marca também funciona.
color: #3B82F6;HEXrgb(59, 130, 246)Uma linha inteira de uma folha de estilos pode colar-se tal como está: ignoramos o nome da propriedade e o ponto e vírgula.
16155195HEXrgba(22, 21, 81, 0.58)O campo HEX lê oito algarismos como um código com opacidade, e uma linha por baixo propõe Número decimal do Office (VBA, Excel), em que este número do Excel dá #3B82F6.
59 130 246RGB (0–255)rgb(59, 130, 246)Três números sem notação leem-se como RGB, e uma linha por baixo propõe também HSL do Office (escala 0–255) e HSV do OpenCV (matiz 0–180).
R 59 G 130 B 246RGB (0–255)rgb(59, 130, 246)As letras R, G e B antes dos números indicam RGB, como nas tabelas de cores dos manuais de marca.
0,231 0,51 0,965RGB 0–1 (Unity, matplotlib)rgb(59, 130, 246)Três frações com vírgula decimal leem-se como RGB 0–1, e com ponto decimal também.
hsl(217, 91%, 60%)HSLrgb(60, 131, 246)As percentagens inteiras não acertam em todas as cores do ecrã, por isso o resultado afasta-se um nível de #3B82F6.
H 217 S 76 B 96HSB / HSV (Photoshop, Figma)rgb(59, 130, 245)As letras dos campos do Seletor de Cores do Photoshop indicam HSB.
C 17 | M 38 | Y 83 | K 22CMYK (sem perfil de cor)rgb(165, 123, 34)É assim que aparecem as cores em alguns manuais de marca: as letras indicam as tintas, e as barras verticais separam os números.
54,62 8,76 -65,79CIE Lab (branco D50, como em CSS)rgb(59, 130, 246)Um número negativo não pode ser RGB, HSL nem CMYK, por isso os três números leem-se como L, a e b do Lab.
0xFF3B82F6Android, inteiro ARGB (Java, Kotlin)rgb(59, 130, 246)O prefixo 0x com oito carateres é um número ARGB de Java ou Kotlin, e uma linha por baixo propõe também HEX.
0xF800RGB565 (Arduino, ecrãs TFT)rgb(255, 0, 0)O prefixo 0x com quatro carateres é uma cor de 16 bits tirada de código, como uma constante de cor para um ecrã de Arduino, por isso o campo muda para RGB565 (Arduino, ecrãs TFT).
Y 81, Cb 90, Cr 240YCbCr (JPEG, 0–255)rgb(238, 14, 14)As letras Y, Cb e Cr indicam YCbCr. O campo escolhe a variante do JPEG, e uma linha por baixo propõe também YCbCr BT.601 (vídeo SD, 16–235), em que esta entrada dá #FE0000, e YCbCr BT.709 (vídeo HD, 16–235).
color(srgb 0.231 0.51 0.965)HEXrgb(59, 130, 246)A lista não tem uma entrada própria para color() com o espaço srgb, por isso o campo fica em HEX, e a linha por baixo diz «Lemos esta entrada como função color() do CSS.»
vermelhoHEXO campo fica vazio.O campo só conhece os nomes de cores CSS em inglês e, perante uma palavra portuguesa, responde «Não reconhecemos esta entrada como uma cor. Um exemplo em HEX: #3B82F6.»

Fontes

  1. About color models — Figma (em inglês)
  2. Escolher cores na caixa de diálogo Cores — Suporte da Microsoft
  3. Color (android.graphics) — Android Developers (em inglês)
  4. EyeDropper API — MDN Web Docs (em inglês)
  5. CSS Color Module Level 4, Editor’s Draft — CSS Working Group, W3C (em inglês)
  6. Bandeira de Portugal — Wikipédia
  7. Manual de Identidade e Normas Gráficas, junho de 2024 — Gabinete do Primeiro-Ministro, República Portuguesa
  8. Lei n.º 5.700, de 1 de setembro de 1971 — Presidência da República, Planalto
  9. Cores, Padrão Digital de Governo (Design System gov.br) — Governo Federal do Brasil
  10. RGB — Wikipédia
  11. CMYK — Wikipédia
  12. SRGB — Wikipédia
  13. Tripleto hexadecimal — Wikipédia
  14. Escolher cores no Adobe Photoshop (cópia de arquivo de 29 de novembro de 2025) — Adobe
  15. Selecionar uma nova cor — Ajuda do LibreOffice
  16. Tradução portuguesa do GIMP 3.2.6, ficheiro po-libgimp/pt.po — GIMP, GNOME GitLab
  17. Color Gamut Transform Pairs, SIGGRAPH 78 — Alvy Ray Smith (em inglês)
  18. Color — Unity Scripting Reference (em inglês)
  19. Specifying colors — Matplotlib (em inglês)
  20. Extending LaTeX’s color facilities: the xcolor package, v3.02 — Uwe Kern, CTAN (em inglês)
  21. More resource types: Color — Android Developers (em inglês)
  22. Color class — Flutter API (em inglês)
  23. androidx.compose.ui.graphics, Color — Android Developers (em inglês)
  24. UIColor init(red:green:blue:alpha:) — Apple Developer (em inglês)
  25. Color init(_:red:green:blue:opacity:) — Apple Developer (em inglês)
  26. Message: Embed Object — Discord Developer Portal (em inglês)
  27. Color conversions — OpenCV (em inglês)
  28. colorsys: Conversions between color systems — Documentação do Python (em inglês)
  29. Working with 16-bit RGB — Microsoft Learn (em inglês)
  30. Adafruit GFX Graphics Library, Coordinate System and Units — Adafruit (em inglês)
  31. Data Conversion Rules, Direct3D — Microsoft Learn (em inglês)
  32. Ficheiro Adafruit_SPITFT.cpp, função color565 — Adafruit, GitHub (em inglês)
  33. Recomendação UIT-R BT.601-7, pontos 2.5.1 a 2.5.3 — UIT (em inglês)
  34. Recomendação UIT-T T.871, JPEG File Interchange Format (JFIF), cláusula 7 — UIT (em inglês)
  35. Recomendação UIT-R BT.709-6, pontos 3.2 a 3.4 — UIT (em inglês)
  36. RGB function — Microsoft Learn (em inglês)
  37. Interior.Color property (Excel) — Microsoft Learn (em inglês)
  38. COLORREF — Microsoft Learn (em inglês)
  39. CIE 1931 color space — Wikipédia (em inglês)
  40. CIELUV — Wikipédia (em inglês)
  41. CSS Color Module Level 5, Editor’s Draft — CSS Working Group, W3C (em inglês)
  42. Converter entre modos de cor no Photoshop (cópia de arquivo de 27 de novembro de 2025) — Adobe
  43. Tailwind CSS v4.0 — Tailwind Labs (em inglês)
  44. theme.css com a paleta predefinida do Tailwind CSS 4.3.3 — Tailwind Labs, GitHub (em inglês)
  45. colors.js no Tailwind CSS 3.4.17 — Tailwind Labs, GitHub (em inglês)
  46. Pantone Connect — Pantone (em inglês)
  47. RAL Digital colour library — RAL (em inglês)
  48. NCS Colour — NCS Colour AB (em inglês)
  49. Nomes de cores no X11 — Wikipédia

Os resultados das tabelas foram calculados pela própria função desta ferramenta e verificados por um teste automático antes da publicação. As regras, normas e números em que o texto se apoia vêm das fontes indicadas acima.

Última revisão do conteúdo: · escrito e verificado pela equipa Arteon

Perguntas frequentes sobre a conversão de cores

Porque é que darkgray é mais claro do que gray?

Porque os dois nomes vêm de sistemas diferentes. Dezasseis nomes CSS, entre eles gray, vêm da paleta VGA através do HTML, e a maioria dos restantes vem do sistema X11[5]. Em HTML, gray está reservado para o valor 128, ou seja, #808080, enquanto no X11 gray tinha o valor 190 e darkgray o valor 169[49]. O CSS ficou com o gray do HTML e com o darkgray do X11, #A9A9A9, e por isso darkgray é mais claro. O verde segue a mesma lógica: em CSS, green é o verde-escuro #008000, e o verde vivo #00FF00, que no X11 se chama green, em CSS chama-se lime[49].

Como descubro as cores de uma imagem ou de uma captura de ecrã?

Carregue-a no extrator de cores de imagem, que tira até 12 cores dominantes com os códigos HEX. Depois cole o código pretendido no campo Converter de para o ver em todas as outras notações.

Como verifico se um texto nesta cor se lê bem?

O conversor não mede o contraste, por isso escreva a cor do texto e a do fundo no verificador de contraste de cores. Ele calcula a relação de contraste e indica se o par cumpre os níveis AA e AAA das WCAG 2.1.

Captura de ecrã da ferramenta gratuita da Arteon: Conversor de cores – consulte 37 notações de cor

Tem uma pergunta ou uma sugestão?

Se encontrar um erro num resultado ou sentir falta de uma notação de cor, escreva-nos.