Получить осветлённый цвет



Автор: ___Nikolay
WEB-сайт: http://delphiworld.narod.ru

// Получить осветлённый цвет
function TfmDW6Main.GetLightColor(const Color: TColor; const Light: Byte) : TColor;
type
  TRGB = packed record
    R, G, B: Byte;
  end;
var
  fFrom: TRGB;

  function GetRGB(const Color: TColor): TRGB;
  var
    iColor: TColor;
  begin
    iColor := ColorToRGB(Color);
    Result.R := GetRValue(iColor);
    Result.G := GetGValue(iColor);
    Result.B := GetBValue(iColor);
  end;

begin
  FFrom := GetRGB(Color);

  Result := RGB(
    Round(FFrom.R + (255 - FFrom.R) * (Light / 100)),
    Round(FFrom.G + (255 - FFrom.G) * (Light / 100)),
    Round(FFrom.B + (255 - FFrom.B) * (Light / 100))
  );
end;




Похожие по теме исходники

Couleur (цветовая палитра)

Изменение цвета изображения