Patent attributes
An image file, which typically represents a palette-based image that has been encoded using a first predefined run-length based encoding method, is decoded to produce an image data array. The image data array is divided into blocks; either all the blocks or a majority of the blocks have a predefined fixed size. At least some of the blocks of the image are processed to produce a corresponding re-encoded block. In particular, each such block is processed by applying a plurality of distinct encodings to the block to produce an equal plurality of distinct re-encoded block versions. One of the plurality of distinct re-encoded block versions is selected in accordance with predefined selection criteria for use as the re-encoded block. Each re-encoded block is stored in a distinct data structure, such as a file. In a client-server network, when a low bandwidth client device requests an image file, just the block image files needed by the client device are downloaded, thereby greatly reducing the request to display delay.