Bitmap file format

 

BASICS

Introduction

BMP is a native bitmap format of MS Windows and it is used to store (virtually) any type of bitmap data. Most applications running under MS Windows (MS DOS) and under other operating systems support read and write to BMP files.

The original bitmap format (used in Windows 1.0) was simple (fixed color palette, no data compression, was created to support the most popular IBM PC and compatible graphic cards in the use at this time). This format is now often referred to as the original Windows Device Dependent Bitmap (DDB).

Support for a programmable color palette was added to both Windows and BMP in Windows version 2.0, allowing user to store definable color data along with the bitmap that used it. This type of bitmap is known as a Windows Device Independent Bitmap (DIB). Programmable color palette, stored along with the bitmap data, gave bitmap the ability to be device independent because it could be shown on any device (any type of graphic card, printer, etc...). The term "device independent" means that the bitmap specifies pixel color in the form independent of the method used by a display to represent color. The default filename extension of Windows DIB file is .BMP.

Support for RLE compression was added in Windows 3.0.

File types

There are four BMP formats:

  1. B&W Bitmap is monochrome and the color table contains only two entries. Each bit in the bitmap array represents a pixel. If the bit is clear (not set), the color of the first table entry is used. Else, if the bit is set, the color of the second table entry is used.

  2. 4 bits-per-pixel Bitmap has a maximum of 16 colors. Each nibble (4 bits) in the bitmap array represents a pixel. If the data byte for example has a hexadecimal value of 0x27, the first pixel is then set using the second color in the table entry and the second pixel is set using the seventh color in the table entry.

  3. 8 bits-per-pixel Bitmap has a maximum of 256 colors. Each byte represents a pixel. For example a hexadecimal value of 0x10 would represent that the next pixel should be set using sixteenth index into the color table.

  4. 24 bits-per-pixel Bitmap has a maximum of 16777216 colors. Each byte represents the relative intensities of red, green and blue colors.

Compression

Compression used in Windows DIB can be RLE4 or RLE8. RLE8 is run-length encoding used for a 256 colors bitmap (8 bits-per-pixel) and RLE4 is run-length encoding used for a 16 colors bitmap (4 bits-per-pixel). Formats are using two modes: Encode and absolute. Both can occur anywhere in the bitmap.


DETAILS

Bitmap file structures

Each bitmap file contains a bitmap-file header, a bitmap-information header, a color table array, and an array of bytes that defines the bitmap data.

  • BITMAP FILE HEADER:

    The BITMAP FILE HEADER structure contains information about the type and size of a DIB file.

    struct tagBITMAPFILEHEADER {
           WORD     wType;
           DWORD    dwSize;
           WORD     wReserved1;
           WORD     wReserved2;
           DWORD    dwOffBits;
    };
    MEMBER DESCRIPTION
    wType Type of the file. Must be BM (string) = 19778 (dec) = 0x4d42 (hex).
    dwSize The size of the file (in bytes).
    wReserved1 Reserved - set to zero.
    wReserved2 Reserved - set to zero.
    dwOffBits Offset from the BITMAP FILE HEADER to the array of bytes that defines the bitmap data.

  • BITMAP INFO HEADER:

    The BITMAP INFO HEADER structure contains information about resolution, compression, size and bit depth - number of colors used.

    struct tagBITMAPINFOHEADER {
           DWORD    dwSize;
           DWORD    dwWidth;
           DWORD    dwHeight;
           WORD	wPlanes;
           WORD	wBitCount;
           DWORD    dwCompression;
           DWORD    dwSizeImage;
           DWORD    dwXPelsPerMeter;
           DWORD    dwYPelsPerMeter;
           DWORD    dwClrUsed;
           DWORD    dwClrImportant;
    };
    MEMBER DESCRIPTION
    dwSize Size of BITMAP INFO HEADER structure (in bytes).
    dwWidth The width of the bitmap (in pixels).
    dwHeight The height of the bitmap (in pixels).
    wPlanes Number of planes for the target device. Must be set to 1.
    wBitCount The number of bits per pixel. Must be set to 1, 4, 8 or 24.
    dwCompression Specifies the type of compression (BI - RGB, BI - RLE8, BI - RLE4).
    dwSizeImage The size of image (in bytes). This member can be set to zero if the bitmap data is not compressed (dwCompression set to BI_RGB).
    dwXPelsPerMeter The horizontal resolution (in pixels per meter) of the target device.
    dwYPelsPerMeter The vertical resolution (in pixels per meter) of the target device.
    dwClrUsed The number of color indexes in the color table used by the bitmap. If set to zero, the bitmap uses maximum number of colors specified by the wBitCount.
    dwClrImportant The number of color indexes that are considered important for displaying the bitmap. If set to zero, all colors are important.
    NOTE: Program should use the information stored in the dwSize to locate the color table.

  • COLOR TABLE:

    The color table contains as many elements as there are colors in the bitmap. The color table is not present for bitmaps with 24 bits per pixel because each pixel is represented by RGB (Red - Green - Blue) intensities in bitmap data area. The colors in the table should appear in order of importance. If all colors could not be shown on a selected device, the driver can use the dwClrImportant member to display the picture.

    struct tagRGBQUAD {
           BYTE     bBlue;
           BYTE     bGreen;
           BYTE     bRed;
           BYTE     bReserved;
    };
    MEMBER DESCRIPTION
    bBlue Relative intensity of blue component.
    bGreen Relative intensity of green component.
    bRed Relative intensity of red component.
    bReserved Reserved - set to zero.
    NOTE: Color table is stored in BGR format, not in RGB! For example, if the three byte sequence read from the bitmap file is: 0x4a, 0x51, 0x06; then 0x4a describes blue, 0x51 green and 0x06 red intensity.

  • BITMAP DATA

    The bitmap data is array of byte values representing consecutive rows or "scan lines" of the bitmap. Each scan line consists of consecutive bytes representing the pixel in scan line in left-to-right order. The number of bytes representing a scan line depends on the color format, resolution (width in pixels) of the bitmap and bitmap compression. Each SCAN LINE MUST be (zero) padded to end on a WORD (32 bit) boundary if bitmap is not compressed. Else, if bitmap is compressed, each RUN MUST be aligned on a WORD boundary. The scan lines in the bitmap are stored from bottom up. First line in the bitmap data array represents the last line of the bitmap and the last line in the bitmap data array represents the first line of the bitmap (i.e. bitmap is flipped).

Bitmap compression

Bitmap data could be compressed using one of the three types of compression. Type of compression used by the bitmap is specified in Bitmap Info Header structure in the dwCompression member. dwCompression member can be set to one of the following values:

  1. BI - RGB

    This means that the bitmap is actually not compressed. 1 bit per pixel and 24 bits per pixel bitmaps are ALWAYS using this type of compression. However, 4 bits per pixel and 8 bits per pixel bitmaps could use this type of compression or BI - RLE compression.

  2. BI - RLE 8

    If the dwCompression member is set to BI-RLE8 (1), the bitmap data is compressed using run-length encoded format for a 256 - color bitmap. This format uses two modes: encoded mode and absolute mode. Both modes CAN OCCUR ANYWHERE in the bitmap data.

    ENCODED MODE

    A unit of information in this mode consists of two bytes. The first one specifies the number of pixels to be drawn using the color index in the second.

    ABSOLUTE MODE

    In this mode a unit of information consists of two or more bytes. The first one MUST be set to zero. 0, 1 or 2 in the second byte are representing escape values.

    ESCAPE VALUE: MEANING:
    0 End of line (EOL).
    1 End of bitmap (EOB).
    2 Delta. The two bytes following this escape value contain unsigned values that represent the horizontal and vertical offset of the next pixel from the current position.

    If the second byte is set to a value between 3 and 255 then it represents the number of bytes that follow (each contains the color index of a single pixel) and will be directly drawn.

    Example:
    Compressed data: Expanded data:
    03 04 04 04 04
    0A 01 01 01 01 01 01 01 01 01 01 01
    00 01 End of line (EOL)
    00 03 A7 B6 90 00 A7 B6 90
    00 01 End of line (EOL)
    00 00 End of bitmap (EOB)

  3. BI - RLE 4

    If the dwCompression member is set to BI-RLE4 (2), the bitmap data is compressed using run-length encoded format for a 16 - color bitmap. This format uses two modes: encoded mode and absolute mode. Both modes CAN OCCUR ANYWHERE in the bitmap data.

    ENCODED MODE

    A unit of information in this mode consists of two bytes. The first one specifies the number of pixels to be drawn using the color indexes in the second.

    ABSOLUTE MODE

    In this mode a unit of information consists of two or more bytes. The first one MUST be set to zero. 0, 1 or 2 in the second byte are representing escape values.

    ESCAPE VALUE: MEANING:
    0 End of line (EOL).
    1 End of bitmap (EOB).
    2 Delta. The two bytes following this escape value contain unsigned values that represent the horizontal and vertical offset of the next pixel from the current position.

    If the second byte is set to a value between 3 and 255 then it represents the number of bytes that follow (each contains the color index of a single pixel) and will be directly drawn.

    Example:
    Compressed data: Expanded data:
    03 04 0 4 0
    0A 01 0 1 0 1 0 1 0 1 0 1
    00 01 End of line (EOL)
    00 03 A7 B6 90 00 A 7 B 6 9
    00 01 End of line (EOL)
    00 00 End of bitmap (EOB)


EXAMPLE

Pictures:

			

Click the stop thumbnail or stripes thumbnail to download set of 8 pictures in various formats.

Program:

	

Click the wBMP thumbnail to download executable version and the source code of the wBMP program. wBMP can be used to get various information from the given bitmap file (look at the text dump example below). For details, download wBMP and at the console prompt try typing wBMP and wBMP /?.

Example:

Text dump of the sample bitmap ("STOP_32x32x2_RGB.BMP" - can be downloaded by clicking the stop thumbnail):

BITMAP FILE HEADER:
===================

   File name: "sample.bmp"
   Image type (decimal): 19778
   Image type (string): "BM"
   Image file size: 190
   Reserved 1: 0
   Reserved 2: 0
   Byte offset from BitmapFileHeader structure to actual data: 62


BITMAP INFO HEADER:
===================

   BitmapInfoHeader structure size: 40
   Bitmap width: 32
   Bitmap height: 32
   Number of planes: 1
   Number of bits per pixel: 1
   Compression type: 0   (BI_RGB = No compression)
   Size of image: 128
   X pixels per meter: 0
   Y pixels per meter: 0
   Number of color indexes used: 2
   Number of important colors: 2


WIN3 COLOR TABLE:
=================

   Num.   Blue         Green        Red          Unused    
   --------------------------------------------------------
     0.   0x00 = 0     0x00 = 0     0x00 = 0     0x00 = 0  
     1.   0xff = 255   0xff = 255   0xff = 255   0x00 = 0  


BITMAP DATA (TABLE - INDEX):
============================

   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1
   1   1   1   1   1   1   1   1   1   0   0   0   0   0   0   0   0   0   0   0   0   0   0   1   1   1   1   1   1   1   1   1
   1   1   1   1   1   1   1   1   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   1   1   1   1   1   1   1   1
   1   1   1   1   1   1   1   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   1   1   1   1   1   1   1
   1   1   1   1   1   1   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   1   1   1   1   1   1
   1   1   1   1   1   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   1   1   1   1   1
   1   1   1   1   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   1   1   1   1
   1   1   1   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   1   1   1
   1   1   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   1   1
   1   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   1
   1   0   0   0   0   1   1   1   1   0   0   0   1   1   0   0   0   1   1   1   1   0   0   1   1   0   0   0   0   0   0   1
   1   0   0   0   1   1   0   0   1   1   0   0   1   1   0   0   1   1   0   0   1   1   0   1   1   0   0   0   0   0   0   1
   1   0   0   0   1   1   0   0   1   1   0   0   1   1   0   0   1   1   0   0   1   1   0   1   1   0   0   0   0   0   0   1
   1   0   0   0   0   0   0   0   1   1   0   0   1   1   0   0   1   1   0   0   1   1   0   1   1   0   0   0   0   0   0   1
   1   0   0   0   0   0   0   1   1   1   0   0   1   1   0   0   1   1   0   0   1   1   0   1   1   0   0   0   0   0   0   1
   1   0   0   0   0   0   1   1   1   0   0   0   1   1   0   0   1   1   0   0   1   1   0   1   1   1   1   1   0   0   0   1
   1   0   0   0   0   1   1   1   0   0   0   0   1   1   0   0   1   1   0   0   1   1   0   1   1   0   0   1   1   0   0   1
   1   0   0   0   1   1   1   0   0   0   0   0   1   1   0   0   1   1   0   0   1   1   0   1   1   0   0   1   1   0   0   1
   1   0   0   0   1   1   0   0   0   0   0   0   1   1   0   0   1   1   0   0   1   1   0   1   1   0   0   1   1   0   0   1
   1   0   0   0   1   1   0   0   1   1   0   0   1   1   0   0   1   1   0   0   1   1   0   1   1   0   0   1   1   0   0   1
   1   0   0   0   1   1   0   0   1   1   0   0   1   1   0   0   1   1   0   0   1   1   0   1   1   0   0   1   1   0   0   1
   1   0   0   0   0   1   1   1   1   0   1   1   1   1   1   1   0   1   1   1   1   0   0   1   1   1   1   1   0   0   0   1
   1   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   1
   1   1   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   1   1
   1   1   1   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   1   1   1
   1   1   1   1   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   1   1   1   1
   1   1   1   1   1   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   1   1   1   1   1
   1   1   1   1   1   1   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   1   1   1   1   1   1
   1   1   1   1   1   1   1   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   1   1   1   1   1   1   1
   1   1   1   1   1   1   1   1   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   1   1   1   1   1   1   1   1
   1   1   1   1   1   1   1   1   1   0   0   0   0   0   0   0   0   0   0   0   0   0   0   1   1   1   1   1   1   1   1   1
   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1   1



BITMAP DATA (RAW - RGB):
========================

 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
 255 255 255 255 255 255 255 255 255 255 255 255   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0 255 255 255 255 255 255 255 255 255 255 255 255
 255 255 255 255 255 255 255 255 255   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0 255 255 255 255 255 255 255 255 255
 255 255 255 255 255 255   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0 255 255 255 255 255 255
 255 255 255   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0 255 255 255
 255 255 255   0   0   0   0   0   0   0   0   0   0   0   0 255 255 255 255 255 255 255 255 255 255 255 255   0   0   0   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0   0   0   0 255 255 255 255 255 255 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0 255 255 255
 255 255 255   0   0   0   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0 255 255 255
 255 255 255   0   0   0   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0 255 255 255
 255 255 255   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0 255 255 255
 255 255 255   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0 255 255 255 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0 255 255 255
 255 255 255   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0 255 255 255 255 255 255 255 255 255   0   0   0   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255   0   0   0   0   0   0   0   0   0 255 255 255
 255 255 255   0   0   0   0   0   0   0   0   0   0   0   0 255 255 255 255 255 255 255 255 255   0   0   0   0   0   0   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255
 255 255 255   0   0   0   0   0   0   0   0   0 255 255 255 255 255 255 255 255 255   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255
 255 255 255   0   0   0   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255
 255 255 255   0   0   0   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255
 255 255 255   0   0   0   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255
 255 255 255   0   0   0   0   0   0   0   0   0   0   0   0 255 255 255 255 255 255 255 255 255 255 255 255   0   0   0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255   0   0   0 255 255 255 255 255 255 255 255 255 255 255 255   0   0   0   0   0   0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255   0   0   0   0   0   0   0   0   0 255 255 255
 255 255 255   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0 255 255 255
 255 255 255 255 255 255   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0 255 255 255 255 255 255
 255 255 255 255 255 255 255 255 255   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0 255 255 255 255 255 255 255 255 255
 255 255 255 255 255 255 255 255 255 255 255 255   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0 255 255 255 255 255 255 255 255 255 255 255 255
 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255
 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255

 

 

 

               Books

               References

               Related Links

               

HomePage - Basic Facts -Commercial - Algorithms - Hardware - FAQ - Glossary

arcsepd.gif (196 bytes)

Maintained and Copyrighted ゥ 1997-2000 by DataCompression Reference Center 

([email protected])

arcsepd.gif (196 bytes)