BMP

From Just Solve the File Format Problem
Revision as of 08:47, 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 formats 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.

Contents

Identification

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

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 BMP 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