ImageLib Overview
=================
ImageLib provides functions for handling the fetching and display of images
in a variety of formats. It provides a standard API so that regardless of
the image format, the browser calls the same function and needs to keep no
internal record of the image format.

Currently, support is provided for:
 * GIF (including animated GIFs)
 * JPEG
 * PNG
 * XBM
 * Sprite
 * Other formats via ChangeFSI.
 
ChangeFSI is a utility supplied with RiscOS which converts images in 'foreign'
formats into Sprites. 
 
Sprites are bitmap files and RISC OS provides support for the fast plotting of
sprites in any screen mode (display and colour depth) and uses a system of
colour translation tables to ensure that colours are displayed as accurately as
possible. For full details see the RISC OS PRMs, page 1-745.

In the case of PNG, XBM, ChangeFSI and sprites (obviously), ImageLib converts
the image data into sprite format as it is fetched, holding the sprite
internally and using OS routines to plot it to the screen.

The JPEG handling code only converts the JPEG image to a sprite if a flag is
set telling it to plot fast. Otherwise, the JPEG rendering module built into
RISC OS is used to directly plot the JPEG to the screen.

The GIF code operates in a similar manner to JPEG, except RiscOS does not
provide direct GIF plotting routines, so ImageLib provides it's own.

Source file organisation
========================
The ImageLib code is divided into seperate source files which provide functions
to handle different image formats. These files are...
    c.gif
    c.jpeg
    c.xbm
    c.png
    c.sprite
    c.cfsi
The file c.imagetrans provides the central functions such as that for declaring
a new image and for guessing the type of images.

The files c.gif_stream, c.render, c.lzw_comp and c.lzw_decomp are used by the
direct gif plotting code.

c.rml_misc provides some miscellaneous routines currently only used by the
direct gif plotting code.

c.test and c.main provide two different RiscOS frontends to ImageLib.

Zlib.zlib_lib and PNG.libpng-lib are required by the PNG handling code.
