Offset Length Contents 0 3 bytes "GIF" 3 3 bytes "87a" or "89a" 6 2 bytes <Logical Screen Width> 8 2 bytes <Logical Screen Height> 10 1 byte bit 0: Global Color Table Flag (GCTF) bit 1..3: Color Resolution bit 4: Sort Flag to Global Color Table bit 5..7: Size of Global Color Table: 2^(Color Resolution+1) 11 1 byte <Background Color Index> 12 1 byte <Pixel Aspect Ratio> 13 ? bytes <Global Color Table(2 ^ (Color Resolution+1) bytes) if GCTF is one> ? bytes <Blocks (optional)> 1 bytes <Trailer> (0x3b)
Offset Length Contents 0 1 byte Image Separator (0x2c) 1 2 bytes Image Left Position 3 2 bytes Image Top Position 5 2 bytes Image Width 7 2 bytes Image Height 8 1 byte bit 0: Local Color Table Flag (LCTF) bit 1: Interlace Flag bit 2: Sort Flag bit 2..3: Reserved bit 4..7: Size of Local Color Table: 2^(Color Resolution+1) ? bytes Local Color Table(2^(Color Resolution+1) bytes) if LCTF is one 1 byte LZW Minimum Code Size [ // Blocks 1 byte Block Size (s) (s)bytes Image Data ]* 1 byte Block Terminator(0x00)
Offset Length Contents 0 1 byte Extension Introducer (0x21) 1 1 byte Graphic Control Label (0xf9) 2 1 byte Block Size (0x04) 3 1 byte bit 0..2: Reserved bit 3..5: Disposal Method bit 6: User Input Flag bit 7: Transparent Color Flag 4 2 bytes Delay Time (1/100ths of a second) 6 1 byte Transparent Color Index 7 1 byte Block Terminator(0x00)
Offset Length Contents 0 1 byte Extension Introducer (0x21) 1 1 byte Comment Label (0xfe) [ 1 byte Block Size (s) (s)bytes Comment Data ]* 1 byte Block Terminator(0x00)
Offset Length Contents 0 1 byte Extension Introducer (0x21) 1 1 byte Plain Text Label (0x01) 2 1 byte Block Size (0x0c) 3 2 bytes Text Grid Left Position 5 2 bytes Text Grid Top Position 7 2 bytes Text Grid Width 9 2 bytes Text Grid Height 10 1 byte Character Cell Width( 11 1 byte Character Cell Height 12 1 byte Text Foreground Color Index( 13 1 byte Text Background Color Index( [ 1 byte Block Size (s) (s)bytes Plain Text Data ]* 1 byte Block Terminator(0x00)
Offset Length Contents 0 1 byte Extension Introducer (0x21) 1 1 byte Application Label (0xff) 2 1 byte Block Size (0x0b) 3 8 bytes Application Identifire [ 1 byte Block Size (s) (s)bytes Application Data ]* 1 byte Block Terminator(0x00)
GIF87a: GIF Header Image Block Trailer
GIF89a: GIF Header Graphic Control Extension Image Block Trailer
GIF Animation GIF Header Application Extension Application Identifier set to "NETSCAPE" Application Authentication Code set to "2.0" a single sub block, 3 bytes long, with a two byte loop count (zero for infinite loop) [ Graphic Control Extension
Image Block ]* Trailer
See also: