Vad är filformatet BMP?
.bmp är en bildfil som lagrar rastergrafik, utvecklad av Microsoft (tillsammans med IBM, för OS/2). BMP-formatet är nästan alltid okomprimerat, så högupplösta bilder sparade som .bmp-filer är större än filer sparade i jämförbara format som PNG eller JPEG. Valfri run-length encoding (RLE) komprimering finns men används sällan.
BMP kan lagra bilder i olika färgdjup:
- 1-bit monokrom (endast svartvitt),
- 4-bit (16 distinkta färger),
- 8-bit (256 distinkta färger),
- 16-bit, 24-bit eller 32-bit färg (den sistnämnda lägger till en alfakanal för transparens).
Filstruktur
Varje .bmp-fil har en huvudsektion (header) som innehåller information om färgdjup, filstorlek och offset för pixeldata, följt av en matris som representerar bitmappens pixlar. Rader lagras nerifrån och upp (bottom-up) och fylls ut till 4-byte-gränser. Det finns fyra versioner av DIB-huvuden - BITMAPCOREHEADER, BITMAPINFOHEADER, BITMAPV4HEADER och BITMAPV5HEADER - varav den sista lägger till inbäddade ICC-färgprofiler.
Säkerhet & trygghet
RISK: LOWBMP är ren pixeldata utan skript eller makron, så formatet i sig innebär låg risk. De enda förbehållen: historiskt sett har ett fåtal buggar i bildbibliotek tillåtit felformaterade BMP-huvuden (enorma påstådda dimensioner, felaktiga RLE-sekvenser) att krascha eller överbelasta tolkare, så håll din bildvisare uppdaterad; och undvik reklamfyllda «gratis BMP-konverterare» på nätet - använd IrfanView, GIMP, ImageMagick eller Squoosh istället.
Formatdetaljer
i ett nötskalProgram som öppnar BMP-filer
Tekniska detaljer
djup specifikation| MIME-typ | image/bmp (även image/x-bmp, image/x-ms-bmp) |
| Magic bytes | 42 4D («BM») vid byte-offset 0 |
| Byte-ordning | Little-endian |
| Komprimering | Vanligtvis ingen (BI_RGB); valfri BI_RLE8 och BI_RLE4 run-length encoding; sällsynt BI_BITFIELDS, BI_JPEG, BI_PNG |
| Färgdjup som stöds | 1, 4, 8, 16, 24 eller 32 bitar per pixel |
| Lagring av pixelrader | Nerifrån och upp som standard (sista raden först); negativt höjdvärde signalerar uppifrån och ner; varje rad fylls ut till en 4-byte-gräns |
| Filhuvud | BITMAPFILEHEADER - 14 byte; innehåller BM-signatur, total filstorlek och offset för pixeldata |
| DIB-huvudversioner | BITMAPCOREHEADER (12 byte), BITMAPINFOHEADER (40 byte), BITMAPV4HEADER (108 byte), BITMAPV5HEADER (124 byte); version identifieras av DWORD vid offset 0x0E |
| Alfakanal | Stöds i 32-bitarsläge via BITMAPV4HEADER och BITMAPV5HEADER; inte tillgängligt i 24-bitars eller tidigare huvudversioner |
| Maximala bilddimensioner | Upp till ~2,1 miljarder pixlar per sida (32-bitars signed int i BITMAPINFOHEADER); BITMAPCOREHEADER begränsar till 65 535 px per sida |
| Färgpalett | Valfri; upp till 256 RGBQUAD-poster som används för indexerade lägen (1, 4, 8 bpp) |
| ICC-färgprofil | Stöd för inbäddad ICC-profil lades till i BITMAPV5HEADER (Windows 98/2000); tidigare huvuden saknar metadata för färgrymd |
| Alternativ filändelse | .dib (Device Independent Bitmap) - identiskt format, används synonymt i Windows |
| OS/2-varianter | OS/2 Bitmap Array-filer använder alternativa magic-signaturer: BA, CI, CP, IC, PT |
| Släppt | 1985-1990 (Windows 1.0/2.0; OS/2 1.x); BITMAPINFOHEADER form with Windows 3.0 (1990) |
| Senaste version | BITMAPV5HEADER (Windows 98/2000, 1998) - adds ICC color profiles |
| Öppen standard | Ja · royaltyfri |
| Specifikation | learn.microsoft.com |
BMP-konverteringar
Frågor & svar
frågat av användareInga frågor än - bli den första att fråga om BMP-filer.