BMP

From Just Solve the File Format Problem
Revision as of 08:35, 6 March 2013 by Jsummers (Talk | contribs)

Jump to: navigation, search
File Format
Name BMP
Ontology
Extension(s) .bmp
.dib
.rle
PRONOM fmt/116, others

BMP is a family of simple raster graphics image file format designed to store bitmap digital images independently of a display device. BMP was originally and is primarily used on Microsoft Windows and OS/2 operating systems. The format is sometimes known as Device-Independent Bitmap (DIB), since, when loaded into memory using Windows software, the image is held as a DIB structure.

No MIME type has been officially registered. Strings found in practice are: image/bmp; image/x-bmp; image/x-ms-bmp

Contents

Identification

The standard file extension is .bmp. Reportedly, .dib and .rle have occasionally been used.

BMP files start with bytes 'B' 'M' ?? ?? 00 00 00 00.

Well-known versions

Unless otherwise indicated, BMP files all use a common 14-byte file header, named BITMAPFILEHEADER. Following that is the "Info header", which begins with a 4-byte integer indicating its size. The Info header size (mostly) reveals the version of BMP that the file uses.

Windows BMP v2

  • Info header size: 12
  • Info header name: BITMAPCOREHEADER or OS21XBITMAPHEADER
  • PRONOM: fmt/115

Also known as OS/2 Bitmap 1.0.

Windows BMP v3

  • Info header size: 40
  • Info header name: BITMAPINFOHEADER
  • PRONOM: fmt/116 (1, 4, 8, 24 bits/pixel), fmt/117 (16, 32 bits/pixel)

This is by far the most widely used version of BMP.

When 16 or 32 bits/pixel is supported, the format may be known as "BMP 3.0 NT".

Note: It's possible that some OS/2 BMP 2.0 files also have a header size of 40.

Windows BMP v4

  • Info header size: 108
  • Info header name: BITMAPV4HEADER
  • PRONOM: fmt/118

Windows BMP v5

  • Info header size: 124
  • Info header name: BITMAPV5HEADER
  • PRONOM: fmt/119

Other versions

Windows BMP v1

Based on limited information, this format does not use the usual 14-byte header. The file extension may be .bmp or .ddb.

OS/2 BMP 2.0

  • Info header size: 16, 40, 48, or 64 (?)
  • Info header name: BITMAPCOREHEADER2 or OS22XBITMAPHEADER
  • PRONOM: x-fmt/270

See OS/2 BMP.

BITMAPV2INFOHEADER

  • Info header size: 52
  • Info header name: BITMAPV2INFOHEADER

No details known.

BITMAPV3INFOHEADER

  • Info header size: 56
  • Info header name: BITMAPV3INFOHEADER

No details known.

Specifications

Sample images

References

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox