Class TGIFImage (unit RxGIF)

Inherits from

TGraphic

TGIFImage

Constructors


constructor Create;

volatile

TGIFImage



Functions

procedure AddFrame(Value: TGraphic);


procedure Assign(Source: TPersistent);


procedure Clear;


procedure DecodeAllFrames;


procedure DeleteFrame(Index: Integer);


destructor Destroy;


procedure EncodeAllFrames;


procedure Grayscale(ForceEncoding: Boolean);


procedure LoadFromClipboardFormat(AFormat: Word; AData: THandle; APalette: HPALETTE);


procedure LoadFromStream(Stream: TStream);

!! check for gif clipboard Data, mime type image/gif

procedure MoveFrame(CurIndex, NewIndex: Integer);


procedure SaveToClipboardFormat(var AFormat: Word; var AData: THandle; var APalette: HPALETTE);

force bitmap creation

procedure SaveToStream(Stream: TStream);


procedure AssignTo(Dest: TPersistent);


procedure ClearItems;


procedure Draw(ACanvas: TCanvas; const ARect: TRect);


function Equals(Graphic: TGraphic): Boolean;


function GetEmpty: Boolean;


function GetHeight: Integer;


function GetPalette: HPALETTE;


function GetTransparent: Boolean;


function GetWidth: Integer;


procedure NewImage;


procedure Progress(Sender: TObject; Stage: TProgressStage; PercentDone: Byte; RedrawNow: Boolean; const R: TRect; const Msg: string);


procedure ReadData(Stream: TStream);


procedure SetHeight(Value: Integer);


procedure SetWidth(Value: Integer);


procedure UniqueImage;


procedure WriteData(Stream: TStream);

!! check for gif clipboard format, mime type image/gif

procedure DoProgress(Stage: TProgressStage; PercentDone: Byte; const Msg: string);


procedure EncodeFrames(ReverseDecode: Boolean);


function GetBackgroundColor: TColor;


function GetBitmap: TBitmap;


function GetComment: TStrings;


function GetCount: Integer;


function GetFrame(Index: Integer): TGIFFrame;


function GetGlobalColorCount: Integer;


function GetPixelFormat: TPixelFormat;


function GetScreenHeight: Integer;


function GetScreenWidth: Integer;


function GetTransparentColor: TColor;


procedure ReadSignature(Stream: TStream);


procedure ReadStream(Size: Longint; Stream: TStream; ForceDecode: Boolean);


procedure SetBackgroundColor(Value: TColor);


procedure SetComment(Value: TStrings);


procedure SetFrameIndex(Value: Integer);


procedure UpdateScreenSize;


procedure WriteStream(Stream: TStream; WriteSize: Boolean);


Properties

property BackgroundColor : TColor


property Comment : TStrings


property Count : Integer


property FrameIndex : Integer


property Frames : TGIFFrame


property GlobalColorCount : Integer


property Palette : HPALETTE


property PixelFormat : TPixelFormat


property ScreenHeight : Integer


property ScreenWidth : Integer


property Transparent : Boolean


property TransparentColor : TColor


property Version : TGIFVersion


property Bitmap : TBitmap


Events

event OnProgress : TProgressEvent


Variables

FBackgroundColor : TColor;


FFrameIndex : Integer;


FImage : TGIFData;


FItems : TList;


FOnProgress : TProgressEvent;


FScreenHeight : Word;


FScreenWidth : Word;


FVersion : TGIFVersion;



Constructors


constructor Create;

volatile

TGIFImage


Functions


procedure AddFrame(Value: TGraphic);


procedure Assign(Source: TPersistent);


procedure Clear;


procedure DecodeAllFrames;


procedure DeleteFrame(Index: Integer);


destructor Destroy;


procedure EncodeAllFrames;


procedure Grayscale(ForceEncoding: Boolean);


procedure LoadFromClipboardFormat(AFormat: Word; AData: THandle; APalette: HPALETTE);


procedure LoadFromStream(Stream: TStream);

!! check for gif clipboard Data, mime type image/gif


procedure MoveFrame(CurIndex, NewIndex: Integer);


procedure SaveToClipboardFormat(var AFormat: Word; var AData: THandle; var APalette: HPALETTE);

force bitmap creation


procedure SaveToStream(Stream: TStream);


procedure AssignTo(Dest: TPersistent);


procedure ClearItems;


procedure Draw(ACanvas: TCanvas; const ARect: TRect);


function Equals(Graphic: TGraphic): Boolean;


function GetEmpty: Boolean;


function GetHeight: Integer;


function GetPalette: HPALETTE;


function GetTransparent: Boolean;


function GetWidth: Integer;


procedure NewImage;


procedure Progress(Sender: TObject; Stage: TProgressStage; PercentDone: Byte; RedrawNow: Boolean; const R: TRect; const Msg: string);


procedure ReadData(Stream: TStream);


procedure SetHeight(Value: Integer);


procedure SetWidth(Value: Integer);


procedure UniqueImage;


procedure WriteData(Stream: TStream);

!! check for gif clipboard format, mime type image/gif


procedure DoProgress(Stage: TProgressStage; PercentDone: Byte; const Msg: string);


procedure EncodeFrames(ReverseDecode: Boolean);


function GetBackgroundColor: TColor;


function GetBitmap: TBitmap;


function GetComment: TStrings;


function GetCount: Integer;


function GetFrame(Index: Integer): TGIFFrame;


function GetGlobalColorCount: Integer;


function GetPixelFormat: TPixelFormat;


function GetScreenHeight: Integer;


function GetScreenWidth: Integer;


function GetTransparentColor: TColor;


procedure ReadSignature(Stream: TStream);


procedure ReadStream(Size: Longint; Stream: TStream; ForceDecode: Boolean);


procedure SetBackgroundColor(Value: TColor);


procedure SetComment(Value: TStrings);


procedure SetFrameIndex(Value: Integer);


procedure UpdateScreenSize;


procedure WriteStream(Stream: TStream; WriteSize: Boolean);


Properties


property BackgroundColor : TColor


property Comment : TStrings


property Count : Integer


property FrameIndex : Integer


property Frames : TGIFFrame


property GlobalColorCount : Integer


property Palette : HPALETTE


property PixelFormat : TPixelFormat


property ScreenHeight : Integer


property ScreenWidth : Integer


property Transparent : Boolean


property TransparentColor : TColor


property Version : TGIFVersion


property Bitmap : TBitmap


Events


event OnProgress : TProgressEvent


Variables


FBackgroundColor : TColor;


FFrameIndex : Integer;


FImage : TGIFData;


FItems : TList;


FOnProgress : TProgressEvent;


FScreenHeight : Word;


FScreenWidth : Word;


FVersion : TGIFVersion;