Utvidelser | .bmp, .dib,.rle |
---|---|
MIME-type | image/bmp, image/x-bmp, image/x-ms-bmp |
Signatur | 42 4D( heksa ) |
Utviklet av | Microsoft |
Formattype | Rasterbilde |
Windows bitmap (også kjent under forkortelsen av Bitmap i BMP , engelsk, enhetsuavhengig punktgrafikk eller DIB), er en størrelse på bitmap åpne utviklet av Microsoft og IBM . Det er et av de enkleste bildeformatene å utvikle og bruke til programmering. Den er lesbar av nesten alle bildeseere og redaktører. Den ble introdusert med Windows 3.0 i 1990 .
Filen er delt inn i tre områder:
Filen er delt i to deler, nemlig:
Offset # (linjenummer) | Kutte opp | Verdi |
---|---|---|
0x0000 | 2 byte | det magiske tallet som tilsvarer bruken av BMP-filen
|
0x0002 | 4 byte | størrelsen på BMP-filen i byte |
0x0006 | 2 byte | reservert for identifikatoren for applikasjonen som opprettet filen |
0x0008 | 2 byte | reservert for identifikatoren for applikasjonen som opprettet filen |
0x000A | 4 byte | den offset (startadressen) av innholdet av BMP |
Disse inkluderer filstørrelsen i byte, startplasseringen til dataene, antall biter per piksel i bildet, typen komprimering som brukes, antall farger i paletten, bredden og høyden på bildet. 'Image, etc.
Leseprogramvare bruker tre byte for å kode fargen (system rød grønn blå , RGB):
Paletten er derfor en korrespondansetabell av typen:
Verdi å vise | Rgb | |
---|---|---|
0 | R = r0 , B = b0 , V = v0 + byte 00 | |
... | ||
255 | R = r255 , B = b255 , V = v255 + byte 00 |
For eksempel, for et gråtonebilde (256 nyanser), vil de tre verdiene R, G og B være like og vil variere mellom 0 og 255 .
Strukturen til BMP-filen blir derfor:
Dette bør tas i betraktning når du beregner toppteksten. Det er også et 1- og 4-biters BMP-format.
Den BMP -formatet støtter flere varianter, avhengig av antall mulige farger ønskede . Fargedybde er antall biter assosiert med hver piksel for å kode fargen .
Dermed kan BMP-bilder være i 2 farger (1 bit ), 16 farger (4 bits), 256 farger (8 bits), 65 536 farger (16 bits) eller 16,8 millioner farger (24 bits).
24-biters bilder har tre 8-biters kanaler for de tre primærlysene (rød, grønn, blå) som hver kan ta 256 forskjellige verdier. Bilder i 256 gråtoner er mulige med en enkelt 8-biters kanal.
BMP-formatet er nesten ikke eksisterende på nettet : det nedbryter ikke bildet og bruker vanligvis ikke komprimering, så det er veldig tungt. Imidlertid er det RLE- komprimering for BMP-formatet.
For å beregne den omtrentlige størrelsen på den endelige BMP-filen, multipliser fargedybden (1, 4, 8, 16 eller 24 bits) med høyden og med bredden i piksler: (Fargedybde i bits) × (Høyde i piksler) × (Bredde i piksler) biter.
For eksempel vil et bilde i 800 × 600 (800 piksler bredt og 600 piksler høyt) i 24 bits (16,8 millioner farger) ha en størrelse på (800 × 600 × 24) bits eller 1,44 MB (1, 37 Mio ) eller kapasitet til en 3 ″ ½ diskett med høy tetthet (et slikt bilde kan derfor ikke tas opp på en 1,44 MB diskett, spesielt på grunn av filallokeringstabellen som tar opp en viss plass, akkurat som bildehodet).
I motsetning til de fleste bildeformater er kodene i bildet kodet fra den nederste linjen i bildet. Hver linje (kodet fra venstre til høyre) må alltid oppta et antall byte-multiplum av 4, bortsett fra hvis bildet er komprimert . Hvis linjen ikke har et antall multiplum på 4 byte blir lagt til FF, 00FFeller 0000FFpå slutten av hver linje.
Hvis bildet er kodet i 24 bits, blir hver piksel kodet av et 24-biters heltall (RGB), liten endian-rekkefølge , det vil si at de tre bytene suksessivt koder nivåene blå, grønn og rød.
Hvis bildet er kodet med mindre enn 16 biter, blir hver piksel kodet som en indeks i fargetabellen (paletten), derav navnet "indeksert bilde". Når det gjelder bilder som koder for pikslene på 1 bit eller 4 bits, det vil si at hvis flere piksler er kodet i samme byte, er de mest betydningsfulle bitene knyttet til pikslen lengst til venstre.
BMP-format tillater bruk av algoritmen for komprimering RLE for bilder 8 bits (256 farger) og 4 bits (16 farger).
RLE-komprimering, introdusert i BMP-format på tidspunktet for Windows 3.x , ble imidlertid ikke støttet helt før Windows 95 . Det brukes sjelden fordi det bare er veldig effektivt på bilder der de fleste tilstøtende piksler har samme farge.
Prinsippet :