Constructor. Adapted from John Cristy's ImageMagick. Decodes LZW image data into pixel array and returns table-based image data - see http://www.w3.org/Graphics/GIF/spec-gif89a.txt section 22. Simon Bridewell - July-August 2009 Extracted this logic from GifDecoder.cs Added logical properties Derive from GifComponent in order to make use of component status Use stronger types than just byte where appropriate
Assembly: GifComponents (Module: GifComponents) Version: 0.1.3594.26453
The input stream is read, first into the LZW minimum code size, then into data blocks. Bytes are extracted from the data blocks into a datum until the datum contains enough bits to form a code; this code is then extracted from the datum and decoded into a pixel index. Once all data has been read, or a block terminator, end-of-information code or error condition is encountered, any remaining pixel indices not already populated default to zero.