JBs GIF Specification

Originally, I only wanted to write a simple Graphics Viewer for my personal use,
for being able to read various Picture formats.

For that, first I had to understand the Graphics Formats.
I tried to explore them by drawing simple small Pictures using PaintBrush or
somewhat. Then I saved the Pictures and analyzed them with a HEX-Editor.

In case of the PCX and BMP Format I was quite successful, but at the GIF
I failed miserably!

That's why I was forced to face the problem in the direct way.
Important clues could be found on the Web at gif89a.doc.
But most difficult was the problem of LZW decoding, because it is a part of the
GIF format, but not described there.

At last I found something in the "Data Compression Book".
The Results of my investigations are summarized in the Text Documents

GIF1_E.TXT - GIF Specification (11 kBytes)
GIF2_E.TXT - The LZW Decoder (7 kBytes)
GIF3_E.TXT - Program Examples (13 kBytes)
GIF4_E.TXT - Save as GIF (9 kBytes)

But Caution! I translated it in a "quick and dirty" way from German and I am afraid
my English teacher would rotate in the grave reading it.

Questions, Suggestions, Bug Reports? Please send it to

Back to JBs HomePage, German Version here