GARANTIR DESCONTO

Fórum Código da Cores #283578

01/06/2005

0

Camaradas
Você pode especificar uma cor digitando o código em hexa ou rgb no delphi. Minha questão é a seguinte:
Imaginem que eu tenha uma imagem em tons de cinza com as 256 variações, alguém tem alguma idéa de como eu posso fazer para converter cada um dos tons de cinza em porcentagem de preto que ela contém através de um algoritmo.
Eu selecionaria um pixel da imagem e retornaria a porcentagem de preto.
com em rgb os tons de cinza tem os mesmos valores para r,g e b, por exemplo um cinza a 50¬ rgb(128,128,128) se eu descobrisse como se obtem o valor de uma das cores isso já possibilitaria fazer esta convesão.
Valeu pela força,

:[


Morcego

Morcego

Responder

Post mais votado

01/06/2005

Para obter o valor das componentes R, G e B de um TColor, use as funções GetRValue, GetGValue e GetBValue da API do Windows:
var
  R, G, B: Byte;
  C: TColor;
...
  R := GetRValue(C);
  G := GetGValue(C);
  B := GetBValue(C);

Usando sua sugestão, a porcentagem de preto seria...
function PorcentagemPreto(C: TColor): Double;
var
  R: Byte;
begin
  R := GetRValue(C);
  Result := 100 * (255 - R) / 255;
end;
Lembrando que preto = TColor(0).


Massuda

Massuda
Responder

Gostei + 1

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar