Mirror

Can your video handle 16, 256, 32768, 16777216, or more colors (Views: 101)


Problem/Question/Abstract:

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

Answer:

You can use WIN API function GetDeviceCaps() to calculate the number of colors supported by the current video mode. To make it even easier to use, here's a function that will simply return the number of maximum simultaneous colors current video device can handle:

function GetColorsCount: integer;
var
  h: hDC;
begin
  Result := 0;
  try
    h := GetDC(0);
    Result :=
      1 shl
      (
      GetDeviceCaps(h, PLANES) *
      GetDeviceCaps(h, BITSPIXEL)
      );
  finally
    ReleaseDC(0, h);
  end;
end;

<< Back to main page