Convert your TColors to hex strings

    See Also

 • Can your video handle 16, 256, 32768, 16777216, or more colors?

 • So you don't like white on black? (Windows tip)

 

In Delphi, color is often represented using the TColor object. In HTML documents, color is usually represented using a 6 character hex string. Following function will convert TColor type color values to "Internet-style" color codes:

 

 

{

  Return TColor value in XXXXXX format

  (X being a hex digit)

}

function

  TColorToHex( Color : TColor )

    : string;

begin

  Result :=

    { red value }

    IntToHex( GetRValue( Color ), 2 ) +

    { green value }

    IntToHex( GetGValue( Color ), 2 ) +

    { blue value }

    IntToHex( GetBValue( Color ), 2 );

end;

 

 

Listing #1 : Delphi code. Right click clr2hex.pas to download.

 

Need to convert a hex color string to a TColor variable? Try this:

 

{

  sColor should be in XXXXXX format

  (X being a hex digit)

}

function

  HexToTColor( sColor : string )

    : TColor;

begin

  Result :=

    RGB(

      { get red value }

      StrToInt( '$'+Copy( sColor, 1, 2 ) ),

      { get green value }

      StrToInt( '$'+Copy( sColor, 3, 2 ) ),

      { get blue value }

      StrToInt( '$'+Copy( sColor, 5, 2 ) )

    );

end;