|
GIF89a was designed based on the principle of rendering images to a logical screen. Each image could optionally have its own palette, and the format provides flags to specify delay and waiting for user input between them. This is the feature that is used to create animated GIFs, but it can also be used to losslessly store a 24-bit RGB image by splitting it up into pieces small enough to be encoded into a 256 colour palette and setting up the GIF to render these with no delay on the logical screen. However, most web browsers seem to assume that this multi-image feature will only be used for animation and insert a minimum delay between images. There will be some file size bloat from doing this, especially if the encoder doesn't support LZW for patent reasons. There are very few tools around that can easily produce 24-bit GIFs, and it is rarely an appropriate format unless there is absolutely no other option.
|