GARANTIR DESCONTO

Fórum Passar valor TColor para String, é possível ??? #255150

20/10/2004

0

Olá gostaria de saber como posso faze para passar um certo tipo TColor para String ???

Segue exemplo abaixo apenas ilustrativo, só para ter uma noção melhor:

  procedure x(v_Color : TColor);
  var v_String : String;
  begin
    // gostaria que a variável v_String, recebesse o valor passado à v_Color
  end;


Agradeço a quem me ajudar!!!


Faelcavalcanti

Faelcavalcanti

Responder

Posts

20/10/2004

Nildo

Declare a unit Graphics e utilize a função ColorToString, passando como parametro a cor que você deseja.


Responder

Gostei + 0

20/10/2004

Emerson Nascimento

no Delphi 7, na unit Graphics, há duas funções:

function StringToColor(const S: string): TColor;
e
function ColorToString(Color: TColor): string;

em outras versões do Delphi não sei se existe ou em qual unit se encontram.


Responder

Gostei + 0

20/10/2004

Faelcavalcanti

Gostaria agora de converter o valor string passado pelo TColor para Hexadecimal, pois pretendor inserir este valor dentro de uma TAG HTML.
:shock:


Responder

Gostei + 0

20/10/2004

Faelcavalcanti

O Problema é que o delphi passa os valores passados pelo TColor apresentam o caracter [$], sendo assim diferente para HTML.

Abaixo eis um exemplo apenas ilustrativo:

function f_ConverteHexadecimal(v_Color : String) : String;
begin
  // v_Color necessariamente, receberia por exemplo -> $00FFF8F0
  // mas o valor teria que ser implementado para hexadecimal como #ffffff
  Result := ´< font  size=3 face="Verdana" color="´ + v_Color + ´">´;
end;



Outra coisa também, onde coloquei abaixo em HTML o tamanho da fonte é de outra referência totalmente diferente do delphi, por ele ser em Point(pt), alguém sabe uma rotina que possa controlar isso :
< font  size=3 >


Juro que é só isso. :wink:


Responder

Gostei + 0

20/10/2004

Nildo

Bom, se o formato HTML for RGB ficaria assim:

function ColorToHtml( cor: TColor ): stirng;
var
   R,G,B: Byte;
begin
   R := GetRValue( Cor );
   G := GetRValue( Cor );
   B := GetRValue( Cor );

   Result := ´#´ + IntToHex( R, 2 ) + IntToHex( G, 2 ) + IntToHex( B, 2 );
end;


Se for RBG, é só inverter a linha em que eu atribuo o Result.


Responder

Gostei + 0

20/10/2004

Nildo

Ooooops, corrigindo:

function ColorToHtml( cor: TColor ): stirng;
var
   R,G,B: Byte;
begin
   R := GetRValue( Cor );
   G := GetGValue( Cor );
   B := GetBValue( Cor );

   Result := ´#´ + IntToHex( R, 2 ) + IntToHex( G, 2 ) + IntToHex( B, 2 );
end; 



Responder

Gostei + 0

20/10/2004

Faelcavalcanti

Outra coisa também, onde coloquei abaixo em HTML o tamanho da fonte é de outra referência totalmente diferente do delphi, por ele ser em Point(pt), alguém sabe uma rotina que possa controlar isso :
Código:


< font  size=3 > // sendo que este tamanho é em HTML


Alguém sabe como passo um tipo em (Font.Size) que está em pt, para HTML, acima ?????


Responder

Gostei + 0

20/10/2004

Faelcavalcanti

Sei que existe algumas referência mas não consigo decodificar todas, por exemplo :
[list:3b7cc85864]
1 (8 pt)
2 (10 pt)
3 (12 pt)
4 (14 pt)
5 (18 pt)
6 (24 pt)
7 (36 pt)
e por aí vai ....
[/list:u:3b7cc85864]

Existem também valores negativos, mas gostaria de uma rotina que tratasse isso de imediato, estou pesquisando caso ache posto aqui, mas gostaria que me ajudassem.

Obrigado pela força [b:3b7cc85864]Nildo[/b:3b7cc85864]!


Responder

Gostei + 0

20/10/2004

Nildo

Outra coisa também, onde coloquei abaixo em HTML o tamanho da fonte é de outra referência totalmente diferente do delphi, por ele ser em Point(pt), alguém sabe uma rotina que possa controlar isso : Código:
< font  size=3 > // sendo que este tamanho é em HTML
Alguém sabe como passo um tipo em (Font.Size) que está em pt, para HTML, acima ?????


Crio que não seja possível. O que você pode fazer é o seguinte...

<span lang=EN-US style="font-size:´ + IntToStr( Font.Size ) + ´.0pt">Texto</span>


assim o Browser já interpreta como sendo para usar o texto entre o Span com, no caso, 8.0pt ou 12.0 pt, que seria igual ao formato utilizado pelo Font.size


Responder

Gostei + 0

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

Aceitar