Skip to content

Latest commit

 

History

History
99 lines (82 loc) · 2.34 KB

README.md

File metadata and controls

99 lines (82 loc) · 2.34 KB

ColorRecHelper

Jerry Dodge's ColorRecord Helper for easy manipulating of Web Colors, Delphi Colors. XE5 Example App, Use-cases, and bad but useful (to me) enhancements.

Notes:

  • Delphi Hex order is not the same as HTML Hex order
  • examples:
  • HTML Hex Color (Web Development) = #FFFFFF
  • HTML Hex Color Custom Constant (Inside Delphi, if we want to use) = $FFBF00 (Amber,#FFBF00 in web development)
  • Delphi Hex Color = $F0CAA6
  • Delphi TColor = clMoneyGreen
  • R,G,B of a Color (0..255,0..255,0.255)
  • H,S,V of a Color (0..1, 0..1, 0..1 )
  • H(degrees),S,V of a Color (0..360, 0..1, 0..1 )

Some use cases:

Natural String to color from editor based input (Goodie Part)

Trick to make tints of color #Access as HSV and play with Value/Brightness(V field) #Use the final result as required.

procedure TForm1.btnHexDemosViaRecordHelperClick(Sender: TObject);
var
 col1 : TColorRec;
 myHTMLColor : TNaturalColorHTMLHex;
begin
    //Delphi to Hex
    col1 := clNone;
    edtHexDelphi.Text := col1.GetDelphiHexWithoutDollar;
    shp2.Brush.Color := col1;
    edtDelphiRGB.Text := IntToStr(col1.FRed) + ', '+IntToStr(col1.FGreen) + ', '+IntToStr(col1.FBlue);

    //Delphi Hex to TColor
    col1.SetDelphiHexWithoutDollarInput(edtHexDelphi.Text);
    shp2.Brush.Color := col1;
    edtDelphiRGB.Text := IntToStr(col1.FRed) + ', '+IntToStr(col1.FGreen) + ', '+IntToStr(col1.FBlue);

    //Delphi Hex to HTML Hex
    col1.SetDelphiHexWithoutDollarInput(edtHexDelphi.Text);
    shp2.Brush.Color := col1;
    edtHexHTML.Text := col1.GetHTMLHexWithoutHash;

    //HTML Hex to TColor
    col1.SetHTMLHexWithoutHashInput(edtHexHTML.Text);
    shp2.Brush.Color := col1;


    col1.SetHTMLHexWithDollar($FFD700);
    myHTMLColor := TNaturalColorHTMLHex.green;
    col1.SetHTMLHexWithDollar(Ord(myHTMLColor));

    col1.SetColorFromNaturalString('rose');
    shp2.Brush.Color := col1;
end;

Supported Natural Color Strings (Lowercase):

  • white
  • silver
  • gray
  • black
  • navy
  • blue
  • cerulean
  • skyblue
  • turquoise
  • bluegreen
  • azure
  • teal
  • cyan
  • green
  • lime
  • chartreuse
  • olive
  • yellow
  • gold
  • amber
  • orange
  • brown
  • orangered
  • red
  • maroon
  • rose
  • redviolet
  • pink
  • magenta
  • blueviolet
  • purple
  • indigo
  • violet
  • peach
  • apricot
  • ochre
  • plum