Unit BGRABitmap

📄 Source code

Description

Provides the 32-bit RGBA bitmap type adapted to your system.

Pixels are of TBGRAPixel type based on sRGB colorspace with transparency (TBGRAPixelColorspace).

To use, you generally need to add BGRABitmapTypes as well to the uses clause.

Channels can be in the following orders:

Bitmap units: BGRABitmap, ExpandedBitmap, BGRAGrayscaleMask, LinearRGBABitmap, WordXYZABitmap, XYZABitmap.

Uses

Overview

Structures

Name Description
Class TBGRABitmap Cross-platform 32-bit RGBA image compatible with Lazarus Component Library

Functions and Procedures

procedure BGRABitmapDraw(ACanvas: TCanvas; Rect: TRect; AData: Pointer; VerticalFlip: boolean; AWidth, AHeight: integer; Opaque: boolean);
procedure BGRAReplace(var Destination: TBGRABitmap; Temp: TObject);

Description

Functions and Procedures

procedure BGRABitmapDraw(ACanvas: TCanvas; Rect: TRect; AData: Pointer; VerticalFlip: boolean; AWidth, AHeight: integer; Opaque: boolean);

Draw a bitmap from pure data

procedure BGRAReplace(var Destination: TBGRABitmap; Temp: TObject);

Replace the content of the variable Destination with the variable Temp and frees previous object contained in Destination.

This function is useful as a shortcut for :

var
  temp: TBGRABitmap;
begin
  ...
  temp := someBmp.Filter... as TBGRABitmap;
  someBmp.Free;
  someBmp := temp;
end;

which becomes :

begin
  ...
  BGRAReplace(someBmp, someBmp.Filter... );
end;