Qual é o problema com as cores dos terminais?

1

Existem 256 fugas de cores de terminal disponíveis:

  • 8 cores "de sistema" (0 - 7)
  • 8 cores de sistema "brilhantes" (8 - 15)
  • 216 ou 6 * 6 * 6 cores "RGB" (16 - 231)
  • 24 cores "escala de cinzentos" (232 - 255)

As cores "RGB" são o que eu estou querendo saber.

As seis primeiras cores, de 16 a 21, são mapeadas para os seguintes valores RGB hexadecimais:

  • 16: 000000
  • 17: 000054
  • 18: 000087
  • 19: 0000af
  • 20: 0000d7
  • 21: 0000ff

Agora apenas os valores azuis, em decimal:

  • 16: 0
  • 17: 84
  • 18: 135
  • 19: 175
  • 20: 215
  • 21: 255

Em outras palavras, o valor RGB aumenta em 84, depois em 51 (84 + 51 = 135), depois em 40 no restante do caminho.

Este ciclo de 6 valores de 0 a 255 é repetido 36 vezes, primeiro com azul, depois verde e depois vermelho, formando eventualmente o nosso "cubo" de 216 cores de terminal:

Minha pergunta é: por quê?

Alguém sabe se há uma razão histórica / técnica para isso, ou foi apenas uma decisão arbitrária feita por quem teve que decidir o que os códigos de cores significavam? Esse mapeamento veio a existir antes que o RGB fosse uma convenção universal? Por que não subir 42, 42, 42, 43, 43, 43?

    
por Max Cantor 16.07.2014 / 01:17

2 respostas

1

No sentido sugerido, era "arbitrário": um desenvolvedor escolheu dividir o conjunto de 256 cores reservando as primeiras 16 cores para corresponder ao uso existente e, em seguida, percebeu que ele poderia obter um cubo depois de descontar convenientemente de tamanho escala de cinza . Nenhum dos desenvolvedores (256 ou 88) referiu-se a publicações sobre fatores humanos. Eles simplesmente escolheram as etapas da cor para facilitar a computação e o que "parecia legal".

Os detalhes técnicos estão no FAQ do xterm Posso definir uma cor pelo seu número ?

    
por 26.11.2017 / 02:19
0

Em um curso que fiz na faculdade, me foi dito que o olho humano pode detectar cerca de 256 tons de qualquer cor [tão próxima que um byte pode efetivamente combinar]], então 256 de cada um dos três cores primárias permitem todas as cores que o olho humano pode ver. O resto eu não tenho certeza.

    
por 16.07.2014 / 01:50