Unit GifCode |
Classes |
EGifException -
TGif -
TGifImage - Writes out the header info
writes out the pallet in correct order.
Functions |
Register - ------------------------------------------------------------------------------
Types |
GraphicLine
PBmLine
PCodeItem
PGif
TBmpLinesStruct
TCodeItem
TColorItem
TColorTable
TDataSubBlock
TExtensionBlock
THeader
TImageDescriptor
TLogicalScreenDescriptor
Constants |
BlockTerminator
CodeMask
ErrName
ExtensionIntroducer
geBadCode
geBadCodeSize
geBitSizeOverflow
geEmptyBlock
geImagePreceded
geNoBMP
geNoError
geNoFile
geNoGlobalColor
geNotGIF
geUnExpectedEOF
idColorTableSize
idInterlaced
idLocalColorTable
idReserved
idSort
ImageSeparator
lsdColorResolution
lsdColorTableSize
lsdGlobalColorTable
lsdSort
MAXCODES
MAXSCREENWIDTH
Trailer
Variables |
Functions |
Types |
GraphicLine = array [0..2048] of byte;===============================================================} { Bitmap File Structs } {===============================================================
PBmLine = ^TBmpLinesStruct
PCodeItem = ^TCodeItem
PGif = ^TGifThis is the actual gif object
TBmpLinesStruct = record
LineData : GraphicLine;
LineNo : Integer;
end;
TCodeItem = record
Code1 : byte;
Code2 : byte;
end;
TColorItem = recordactual ratio = (AspectRatio + 15) / 64
Red : byte;
Green : byte;
Blue : byte;
end;
TColorTable = array[0..255] of TColorItem;
TDataSubBlock = recordbit masks for use with Next code
Size : byte;
Data : array[1..255] of byte;
end;
TExtensionBlock = recordother extension blocks not currently supported by this unit - Graphic Control extension - Comment extension I'm not sure what will happen if these blocks - Plain text extension are encountered but it'll be interesting - application extension
Introducer : byte;
ExtensionLabel : byte;
BlockSize : byte;
end;
THeader = recordthe data
Signature : array[0..2] of char;
Version : array[0..2] of char;
end;
TImageDescriptor = recordthe color table
Separator : byte;
ImageLeftPos : word;
ImageTopPos : word;
ImageWidth : word;
ImageHeight : word;
PackedFields : byte;
end;
TLogicalScreenDescriptor = record'87a' or '89a'
ScreenWidth : word;
ScreenHeight : word;
PackedFields : byte;
BackGroundColorIndex : byte;
AspectRatio : byte;
end;
Constants |
Variables |