www.wikidata.uk-ua.nina.az
BMP Bitmap bitmap format abo DIB angl device independent bitmap format fajlu zobrazhen rastrovoyi grafiki de zobrazhennya zberigayetsya u viglyadi dvovimirnogo masivu z pikseliv kozhen piksel maye vlasnij kolir 2 Zapam yatovuye odno j bagatokolorovi RGB ilyustraciyi u formi Pixel Format pochav vikoristovuvatisya v operacijnih sistemah Windows ta OS 2 u novishih versiyah yakih postupivshisya formatam SVG JPEG GIF Dani cogo formatu vklyuchayutsya v dvijkovi fajli resursiv RES i v PE fajli Windows BitmapRozshirennya fajlu bmp dibMIME tip code image bmp 1 image x bmp neoficijno code Type code BMP BMPf BMPp Uzagalnenij identifikator tipu com microsoft bmpTip formatu Grafichnij formatFormat fajlu BMP zdatnij zberigati 2D cifrovi zobrazhennya dovilnoyi shirini visoti ta rozdilnoyi zdatnosti yak monohromni tak i kolorovi riznoyi glibini koloru i neobov yazkovo zi stisnennyam danih alfa kanalom ta keruvannyam koloru Specifikaciya Windows Metafile WMF ohoplyuye format fajlu BMP Sered inshogo a href Graphics Device Interface html title Graphics Device Interface wingdi h a viznachaye BMP konstanti ta strukturi Rastrova grafika zagalom i Bitmap zokrema zalezhat vid rozdilnoyi zdatnosti tak pri zbilshenni rozmiriv zobrazhennya bude postupovo pogirshuvatisya jogo yakist 3 Zmist 1 Mozhlivosti formatu 2 Budova 3 Struktura fajlu 3 1 BITMAPFILEHEADER 3 2 BITMAPINFO 3 3 16 bitovi informacijni polya versiya CORE 3 3 1 32 bitovi informacijni polya versiyi 3 4 i 5 3 4 Tablicya koloriv 3 5 Pam yat pikseliv 3 5 1 Pikselnij masiv rastrovi dani 3 5 2 Stisnennya 3 5 3 Pikselnij format 3 6 Priklad 1 3 7 Priklad 2 4 PrimitkiMozhlivosti formatu RedaguvatiU danomu formati mozhna zberigati tilki odnosharovi rastri Na kozhen piksel v riznih fajlah mozhe prihoditi rizna kilkist bit glibina koloru Microsoft proponuye bitnosti 1 2 4 8 16 24 32 48 i 64 V bitnosti 8 i nizhche vin vkazuyetsya indeksom z tablici koloriv palitri a pri velikih bezposerednim znachennyam Kolir zhe v bud yakomu vipadku mozhna zadati tilki v kolirnij modeli RGB ale v bitnosti 16 i 32 mozhna otrimati vidtinki sirogo z glibinoyu do 16 i 32 oh bit vidpovidno Chastkova prozorist realizovana alfa kanalom riznih bitnostej ale pri comu prozorist bez gradacij mozhna pobichno otrimati RLE koduvannyam Rastrovi zobrazhennya ye pryamokutnoyu sitkoyu pikseliv sitka maye pevnu kilkistyu pikseliv ta informacijnij vmist glibinu koloru na piksel 4 U bilshosti vipadkiv pikseli zberigayutsya u viglyadi vidnosno prostogo dvovimirnogo masivu Dlya bitnosti 4 i 8 dostupno RLE koduvannya yake mozhe zmenshiti yih rozmir Format BMP tak samo pidtrimuye vbudovuvannya danih u formatah JPEG i PNG Ale ostannye skorishe bilshe priznachene ne dlya kompaktnogo zberigannya a dlya obhodu obmezhen arhitekturi GDI yaka ne peredbachaye pryamu robotu iz zobrazhennyami formativ vidminnih vid BMP V ostannih versiyah formatu BMP tak samo z yavilisya mozhlivosti upravlinnya kolorom Zokrema mozhna vkazuvati kincevi tochki vikonuvati gama korekciyu i vbudovuvati kolirni profili ICC en Budova RedaguvatiOficijnu informaciyu shodo formatu BMP mozhna znajti v MSDN abo v dovidci Microsoft Windows SDK mozhe jti v komplekti z deyakimi IDE 5 U fajli a href Graphics Device Interface html title Graphics Device Interface wingdi h a vid kompaniyi Microsoft ye vsi ogoloshennya movoyu C yaki stosuyutsya danogo formatu U cej fajl ne buli vklyucheni ogoloshennya tipiv oskilki vid cogo vin mozhe stati zanadto gromizdkim Do togo zh oficijni ogoloshennya deyaki rozrobniki mozhut vvazhati nezruchnimi i tomu yih neobhidnist sumnivna Yaksho vam budut potribni originalni imena konstant struktur tipiv ta yih poliv to vsi voni ye v teksti danoyi statti Maksimalnij rozmir nepodilnih komirok za vinyatkom poliv bitovih struktur 32 bita i tomu format mozhna klasifikuvati yak 32 bitnij Vinyatkom mozhut buti 64 bitovi pikseli ale znachennya yih kanaliv mozhna obroblyati i 16 bitnimi slovami Poryadok bajtiv v 16 bitnih i 32 bitovih komirkah usyudi vid menshogo do bilshogo Cili chisla zapisuyutsya v pryamomu kodi zi znakom v dopovnyalnomu Yaksho porivnyuvati z aparatnimi arhitekturami to poryadok bajtiv i format chisel vidpovidaye arhitekturi x86 Mozhna zustriti chotiri chislovih tipi BYTE 8 bitove bezznakovoe cile WORD 16 bitove bezznakovoe cile DWORD 32 bitove bezznakovoe cile LONG 32 bitove cile zi znakom U formati Windows Bitmap pid strukturami rozumiyetsya blok z poslidovnimi komirkami riznogo fiksovanogo rozmiru u yakih ye umovni imena ye v bagatoh movah programuvannya a ne shos skladnishe napriklad potik komand dovilnogo rozmiru U deyakih elementiv formatu vkazana versiya Windows pochinayuchi z yakoyi vin pidtrimuyetsya Mova jde v pershu chergu pro osnovni biblioteki WinAPI taki yak gdi32 dll shell32 dll user32 dll i kernel32 dll Inshi komponenti operacijnoyi sistemi napriklad GDI NET DirectX mozhut mati inshi bilsh shiroki mozhlivosti Struktura fajlu Redaguvati nbsp Struktura BMP fajluBMP fajl skladayetsya z chotiroh chastin Zagolovok fajlu BITMAPFILEHEADER Zagolovok zobrazhennya BITMAPINFOHEADER mozhe buti vidsutnim BITMAPV4HEADER Win95 NT4 0 BITMAPV5HEADER Win98 Me 2000 XP Palitra mozhe buti vidsutnim Same zobrazhennyaBITMAPFILEHEADER Redaguvati BITMAPFILEHEADER 14 bajtna struktura yaka roztashovana v samomu pochatku fajlu Zvernit uvagu na te sho z samogo pochatku strukturi zbivayetsya virivnyuvannya komirok Yaksho dlya vas vono vazhlive to v operativnij pam yati danij zagolovok roztashovujte za parnimi adresami yaki ne kratni chotirom todi 32 bitovi komirki potraplyat na virivnyani poziciyi Poz hex Rozmir bajti Im ya Tip WinAPI Opis00 2 bfType WORD Vidmitka dlya vidminnosti formatu vid inshih signatura formatu Mozhe mistiti yedine znachennya 4D4216 424D16 little endian big endian sho vidpovidaye znachennyu BM v standarti ASCII BM Windows 3 1x 95 NT BA OS 2 struct bitmap masiv CI OS 2 struct color zobrazhennya CP OS 2 const color vkazivnik IC OS 2 struct zobrazhennya PT OS 2 vkazivnik02 4 bfSize DWORD Rozmir fajlu v bajtah 06 2 bfReserved1 WORD Zarezervovani i povinni mistiti nul 08 2 bfReserved2 WORD0A 4 bfOffBits DWORD Polozhennya pikselnih danih vidnosno pochatku danoyi strukturi v bajtah Signatura formatu pri pereglyadi vmistu fajlu tekstom u dvijkovomu rezhimi viglyadaye yak para ASCII simvoliv BM BITMAPINFO Redaguvati BITMAPINFO u fajli jde vidrazu za BITMAPFILEHEADER Adresa cogo bloku v pam yati bezposeredno tak samo peredayetsya deyakim funkciyam WinAPI napriklad SetDIBitsToDevice abo CreateDIBitmap Krim cogo cej zhe blok vikoristovuyetsya u formatah znachkiv i kursoriv Windows ale v danij statti cej moment ne rozglyadayetsya div okremi opisi cih formativ Dana struktura ye osnovnoyu i opisovoyu u formati BMP i tomu koli prosto zgadano im ya polya to mova jde pro pole v danij strukturi Blok BITMAPINFO skladayetsya z troh chastin Struktura z informacijnimi polyami Bitovi maski dlya viluchennya znachen kolirnih kanaliv prisutni ne zavzhdi Tablicya koloriv prisutnya ne zavzhdi U moment napisannya danoyi statti struktura z informacijnimi polyami mala chotiri versiyi CORE 3 4 i 5 Dlya kozhnoyi versiyi Microsoft ogolosila chotiri okremi strukturi z riznimi imenami poliv U danij statti pri zgadci polya yake prisutnye v dekilkoh strukturah beretsya zagalna dlya vsih struktur chastina v kinci imeni napriklad BitCount zamist bcBitCount biBitCount bV4BitCount abo bV5BitCount Versiyu strukturi mozhna viznachiti po pershomu 32 bitnomu seredovishu WinAPI tip DWORD yake mistit yiyi rozmir v bajtah bezznakovim cilim Versiya CORE vidriznyayetsya vid vsih svoyeyu kompaktnistyu i vikoristannyam viklyuchno 16 bitnih bezznakovih poliv Inshi tri mistyat identichni komirki do yakih v kozhnij novij versiyi dodavalisya novi Informacijni strukturi Versiya Rozmir bajti Im ya strukturi Versiya Windows 9x NT 6 Versiya Windows CE Mobile 7 PrimitkiCORE 12 BITMAPCOREHEADER 95 NT 3 1 i starshe CE 2 0 Mobile 5 0 i starshe Mistit tilki shirinu visotu i bitnist rastra 3 40 BITMAPINFOHEADER 95 NT 3 1 i starshe CE 1 0 Mobile 5 0 i starshe Mistit shirinu visotu i bitnist rastra takozh format pikseliv informaciyu pro kolorovi tablici ta rozdilnu zdatnist 4 108 BITMAPV4HEADER 95 NT 4 0 i starshe ne pidtrimuyetsya Okremo vidileni maski kanaliv dodana informaciya pro kolorovij prostir i gamu 5 124 BITMAPV5HEADER 98 2000 i starshe ne pidtrimuyetsya Dodano vkazivku krashoyi strategiyi vidobrazhennya ta pidtrimka profiliv ICC Cherez identichnosti poliv u versiyah 3 4 i 5 mozhe zdatisya sho polem Size mozhna regulyuvati kilkist poliv pribirayuchi nevikoristovuvani Naspravdi ce ne korektno oskilki tut rozmir graye rol versiyi u versiyi CORE hoch i tezh identichni polya ale inshogo rozmiru i tipu Nihto ne garantuye sho vam ne mozhut popastisya zagolovki menshih abo bilshih rozmiriv z inshim naborom poliv Prote Adobe Photoshop mozhe pri zberezhenni fajliv BMP zapisuvati strukturi informacijnih poliv z rozmirami 52 i 56 bajt Po suti ce urizana 4 ta versiya yaka mistit tilki bitovi maski kanaliv 56 bajt versiya z alfa kanalom 16 bitovi informacijni polya versiya CORE Redaguvati Zvernit uvagu na te sho tut polya shirini i visoti mistyat bezznakovi cili u toj chas yak 32 bitovi strukturi zberigayut znachennya zi znakom Poziciyav fajli hex Poziciyav strukturi hex Rozmir bajti Im ya Tip WinAPI Opis0E 00 4 bcSize DWORD Rozmir danoyi strukturi v bajtah yakij vkazuye tak samo na versiyu strukturi tut maye buti znachennya 12 12 04 2 bcWidth WORD Shirina bcWidth i visota bcHeight rastra v pikselyah Vkazuyutsya cilim chislom bez znaka Znachennya 0 ne zadokumentovani 14 06 2 bcHeight WORD16 08 2 bcPlanes WORD U BMP dopustimo tilki znachennya 1 Ce pole vikoristovuyetsya v znachkah i kursorah Windows 18 0A 2 bcBitCount WORD Kilkist bit na piksel spisok pidtrimuvanih divitsya v okremomu rozdili nizhche 32 bitovi informacijni polya versiyi 3 4 i 5 Redaguvati U tablici nizhche polya predstavleni oglyadovo Detalnu informaciyu vi mozhete znajti v rozdilah dali Poziciyav fajli hex Poziciyav strukturi hex Rozmir bajti Im ya versiyi 3 4 5 Tip WinAPI Opis0E 00 4 biSizebV4SizebV5Size DWORD Rozmir danoyi strukturi v bajtah yakij vkazuye tak samo na versiyu strukturi 12 04 4 biWidthbV4WidthbV5Width LONG Shirina rastra v pikselyah Vkazuyetsya cilim chislom zi znakom Nul i vid yemni ne zadokumentovani 16 08 4 biHeightbV4HeightbV5Height LONG Cile chislo zi znakom sho mistit dva parametri visota rastra v pikselyah absolyutne znachennya chisla i poryadok prohodzhennya ryadkiv u dvovimirnih masivah znak chisla Nulove znachennya ne zadokumentovano 1A 0C 2 biPlanesbV4PlanesbV5Planes WORD U BMP dopustimo tilki znachennya 1 Ce pole vikoristovuyetsya v znachkah i kursorah Windows 1C 0E 2 biBitCountbV4BitCountbV5BitCount WORD Kilkist bit na piksel1E 10 4 biCompressionbV4V4CompressionbV5Compression DWORD Vkazuye na sposib zberigannya pikseliv 22 14 4 biSizeImagebV4SizeImagebV5SizeImage DWORD Rozmir pikselnih danih v bajtah Mozhe buti obnuleno yaksho zberigannya zdijsnyuyetsya dvovimirnim masivom 26 18 4 biXPelsPerMeterbV4XPelsPerMeterbV5XPelsPerMeter LONG Kilkist pikseliv na metr po gorizontali i vertikali 2A 1C 4 biYPelsPerMeterbV4YPelsPerMeterbV5YPelsPerMeter LONG2E 20 4 biClrUsedbV4ClrUsedbV5ClrUsed DWORD Rozmir tablici koloriv v komirkah 32 24 4 biClrImportantbV4ClrImportantbV5ClrImportant DWORD Kilkist komirok vid pochatku tablici koloriv do ostannoyi vikoristovuvanoyi vklyuchayuchi yiyi samu Dodani u versiyi 4Poziciyav fajli hex Poziciyav strukturi hex Rozmir bajti Im ya versiiyi 4 5 Tip WinAPI Opis36 28 4 bV4RedMaskbV5RedMask DWORD Bitovi maski dlya viluchennya znachen kanaliv intensivnist chervonogo zelenogo sinogo i znachennya alfa kanalu 3A 2C 4 bV4GreenMaskbV5GreenMask DWORD3E 30 4 bV4BlueMaskbV5BlueMask DWORD42 34 4 bV4AlphaMaskbV5AlphaMask DWORD46 38 4 bV4CSTypebV5CSType DWORD Vid kolirnogo prostoru 4A 3C 36 bV4EndpointsbV5Endpoints CIEXYZTRIPLE Znachennya cih chotiroh poliv beretsya do uvagi tilki yaksho pole CSType mistit 0 LCS CALIBRATED RGB Todi kincevi tochki i znachennya gami dlya troh kolirnih komponent vkazuyutsya v cih polyah 6E 60 4 bV4GammaRedbV5GammaRed DWORD72 64 4 bV4GammaGreenbV5GammaGreen DWORD76 68 4 bV4GammaBluebV5GammaBlue DWORDDodani u versiyi 5Poziciyav fajli hex Poziciyav strukturi hex Rozmir bajti Im ya Tip WinAPI Opis7A 6C 4 bV5Intent DWORD Perevagi pri renderingu rastru 7E 70 4 bV5ProfileData DWORD Zsuv u bajtah kolirnogo profilyu vid pochatku BITMAPINFO 82 74 4 bV5ProfileSize DWORD Yaksho v BMP bezposeredno vklyuchayetsya kolirnij profil to tut vkazuyetsya jogo rozmir v bajtah 86 78 4 bV5Reserved DWORD Zarezervovano i povinno buti nulovim Metod stisnennya biCompression 1E mozhe buti Znachennya Identifikovano za Kompresijnij metod Komentari0 BI RGB zhodnogo Najbilsh poshirenij1 BI RLE8 RLE 8 bit piksel Mozhna vikoristovuvati lishe z 8 bitovimi pikselnimi rastrovimi zobrazhennyami2 BI RLE4 RLE 4 bit piksel Mozhna vikoristovuvati lishe z 4 bitovimi pikselnimi rastrovimi zobrazhennyami3 BI BITFIELDS OS22XBITMAPHEADER Haffman 1D BITMAPV2INFOHEADER bitovi maski polya RGB BITMAPV3INFOHEADER RGBA4 BI JPEG OS22XBITMAPHEADER RLE 24 BITMAPV4INFOHEADER zobrazhennya JPEG dlya druku5 BI PNG BITMAPV4INFOHEADER PNG zobrazhennya dlya druku6 BI ALPHABITFIELDS Maski bitovogo polya RGBA lishe Windows CE 5 0 z NET 4 0 abo novishoyi versiyi11 BI CMYK zhodnogo tilki metafajl Windows CMYK12 BI CMYKRLE8 RLE 8 tilki Windows Metafile CMYK13 BI CMYKRLE4 RLE 4 tilki Windows Metafile CMYTablicya koloriv Redaguvati Tablicya koloriv palitra mistitsya u fajli zobrazhennya BMP bezposeredno pislya zagolovka fajlu BMP zagolovka DIB i pislya neobov yazkovih troh abo chotiroh bitovih masok yaksho vikoristovuyetsya zagolovok BITMAPINFOHEADER z parametrom BI BITFIELDS 12 bajt abo BI ALPHABITFIELDS 16 bajt Takim chinom jogo zmishennya ye rozmirom BITMAPFILEHEADER plyus rozmir zagolovka DIB plyus neobov yazkovi 12 16 bajt dlya troh abo chotiroh bitovih masok Primitka u Windows CE zagolovok BITMAPINFOHEADER mozhna vikoristovuvati z parametrom BI ALPHABITFIELDS v chleni biCompression Kilkist zapisiv u palitri dorivnyuye abo 2 n de n kilkist bitiv na piksel abo mensha kilkist zaznachena v zagolovku u formati zagolovka OS 2 BITMAPCOREHEADER pidtrimuyetsya lishe povnorozmirna palitra U bilshosti vipadkiv kozhen zapis u tablici koloriv zajmaye 4 bajti v poryadku sinogo zelenogo chervonogo 0x00 viklyuchennya div nizhche Ce indeksuyetsya v BITMAPINFOHEADER v chleni strukturi biBitCount Tablicya koloriv ce blok bajtiv tablicya v yakomu pererahovani kolori yaki vikoristovuyutsya zobrazhennyam Kozhen piksel v indeksovanomu kolorovomu zobrazhenni opisuyetsya kilkistyu bitiv 1 4 abo 8 sho ye indeksom odnogo koloru opisanogo v cij tablici Metoyu kolirnoyi palitri v indeksovanih bitovih zobrazhennyah ye informuvannya programi pro faktichnij kolir yakomu vidpovidaye kozhne z cih znachen indeksu Meta tablici koloriv v neindeksovanih ne paletizovanih rastrovih zobrazhennyah polyagaye v tomu shob pererahuvati kolori yaki vikoristovuyutsya rastrom dlya cilej optimizaciyi na pristroyah z obmezhenimi mozhlivostyami vidobrazhennya koloriv a takozh dlya polegshennya majbutnogo peretvorennya v rizni formati pikseliv i palitri Kolori v tablici koloriv zazvichaj vkazuyutsya u formati RGBA32 iz 4 bajtami na zapis Tablicya koloriv sho vikoristovuyetsya z OS 2 BITMAPCOREHEADER vikoristovuye format RGB24 iz 3 bajtami na zapis Dlya DIB zavantazhenih u pam yat tablicya koloriv mozhe dodatkovo skladatisya z 2 bajtovih zapisiv ci zapisi stanovlyat indeksi do potochnoyi realizovanoyi palitri zamist yavnih viznachen koloru RGB Microsoft ne zaboronyaye nayavnist dijsnoyi bitovoyi maski alfa kanalu v BITMAPV4HEADER i BITMAPV5HEADER dlya indeksovanih kolorovih zobrazhen 1bpp 4bpp i 8bpp sho vkazuye na te sho zapisi tablici koloriv takozh mozhut vkazuvati alfa komponent za dopomogoyu 8 8 8 0 8 0 8 format cherez chlen RGBQUAD rgbReserved Odnak deyaki versiyi dokumentaciyi Microsoft zaboronyayut cyu funkciyu vkazuyuchi sho chlen RGBQUAD rgbReserved povinen buti nulovim Yak zgaduvalosya vishe tablicya koloriv zazvichaj ne vikoristovuyetsya yaksho pikseli mayut format 16 bit na piksel 16 bpp i vishe zazvichaj u cih fajlah rastrovih zobrazhen nemaye zapisiv tablici koloriv Odnak dokumentaciya Microsoft na vebsajti MSDN vid 16 listopada 2010 r viznachaye sho dlya 16bpp i vishe tablicya koloriv mozhe buti prisutnim dlya zberigannya spisku koloriv priznachenih dlya optimizaciyi na pristroyah z obmezhenoyu mozhlivist kolorovogo vidobrazhennya a takozh vkazuye sho v takih vipadkah u cij tablici koloriv nemaye indeksovanih zapisiv palitri Ce mozhe zdatisya protirichchyam yaksho ne robiti riznici mizh obov yazkovimi zapisami palitri ta dodatkovim spiskom koloriv Pam yat pikseliv Redaguvati Biti sho predstavlyayut rastrovi pikseli upakovani v ryadki Rozmir kozhnogo ryadka okruglyuyetsya do kratnogo 4 bajtam 32 bitove DWORD shlyahom zapovnennya Dlya zobrazhen z visotoyu ponad 1 kilka dopovnenih ryadkiv zberigayutsya poslidovno utvoryuyuchi masiv pikseliv Pikselnij masiv rastrovi dani Redaguvati Masiv pikseliv yavlyaye soboyu blok 32 bitovih DWORD yakij opisuye zobrazhennya piksel za pikselem Zazvichaj pikseli zberigayutsya znizu vgoru pochinayuchi z livogo nizhnogo kuta perehodyachi zliva napravo a potim ryad za ryadkom znizu vgoru zobrazhennya Yaksho ne vikoristovuyetsya BITMAPCOREHEADER nestisneni rastrovi zobrazhennya Windows takozh mozhna zberigati zverhu vniz yaksho znachennya visoti zobrazhennya ye negativnim U originalnij OS 2 DIB yedinimi chotirma dopustimimi znachennyami glibini koloru buli 1 4 8 i 24 biti na piksel bpp Suchasni zagolovki DIB dozvolyayut vikoristovuvati pikselni formati z 1 2 4 8 16 24 i 32 bitami na piksel bpp GDI takozh dozvolyaye 64 bita na piksel Bajti zapovnennya ne obov yazkovo 0 mayut buti dodani do kincya ryadkiv shob zbilshiti dovzhinu ryadkiv do chotiroh bajtiv Koli masiv pikseliv zavantazhuyetsya v pam yat kozhen ryadok maye pochinatisya z adresi pam yati kratnoyi 4 Ce obmezhennya adresi zmishennya ye obov yazkovim lishe dlya masiviv pikseliv zavantazhenih u pam yat Dlya cilej zberigannya fajliv lishe rozmir kozhnogo ryadka maye buti kratnim 4 bajtam todi yak zmishennya fajlu mozhe buti dovilnim 24 bitove rastrove zobrazhennya z Width 1 matime 3 bajti danih na ryadok sinij zelenij chervonij i 1 bajt zapovnennya todi yak Width 2 matime 6 bajtiv danih i 2 bajti zapovnennya Width 3 matime 9 bajtiv danih i 3 bajti zapovnennya a Width 4 matime 12 bajtiv danih bez zapovnennya Stisnennya Redaguvati Indeksovani kolorovi zobrazhennya mozhut buti stisnuti za dopomogoyu 4 rozryadnogo abo 8 bitovogo algoritmu RLE abo Haffmana 1D Zobrazhennya OS 2 BITMAPCOREHEADER 2 24bpp mozhut buti stisnuti za dopomogoyu 24 bitnogo algoritmu RLE Zobrazhennya 16bpp i 32bpp zavzhdi zberigayutsya bez stisnennya Zauvazhte sho zobrazhennya bud yakoyi glibini koloru mozhna zberigati bez stisnennya yaksho ce potribno Pikselnij format Redaguvati Format 1 bit na piksel 1 bpp pidtrimuye 2 rizni kolori napriklad chornij i bilij Znachennya pikseliv zberigayutsya v kozhnomu biti prichomu pershij krajnij livij piksel u samomu znachushomu biti pershogo bajta Kozhen bit ye indeksom u tablicyu z 2 koloriv Nevstanovlenij bit bude posilatisya na pershij zapis tablici koloriv a vstanovlenij bit do ostannogo drugogo zapisu tablici koloriv Format 2 bit na piksel 2bpp pidtrimuye 4 rizni kolori i zberigaye 4 pikseli na 1 bajt krajnij livij piksel znahoditsya v dvoh najbilsh znachushih bitah lishe dlya Windows CE Kozhne znachennya pikselya ye 2 bitovim indeksom u tablici do 4 koloriv Format 4 bit na piksel 4bpp pidtrimuye 16 riznih koloriv i zberigaye 2 pikseli na 1 bajt prichomu krajnij livij piksel znahoditsya u bilsh znachnomu fragmenti Kozhne znachennya pikselya ye 4 bitovim indeksom u tablici do 16 koloriv Format 8 bit na piksel 8 bpp pidtrimuye 256 riznih koloriv i zberigaye 1 piksel na 1 bajt Kozhen bajt ye indeksom u tablicyu do 256 koloriv Format 16 bit na piksel 16 bpp pidtrimuye 65536 riznih koloriv i zberigaye 1 piksel na 2 bajtove WORD Kozhne SLOVO mozhe viznachati alfa chervonij zelenij ta sinij vibirki pikselya Format 24 bitnogo pikselya 24 bpp pidtrimuye 16 777 216 riznih koloriv i zberigaye znachennya 1 pikselya na 3 bajti Kozhne znachennya pikselya viznachaye chervoni zeleni ta sini zrazki pikselya 8 8 8 0 0 u notaciyi RGBAX Zokrema v poryadku sinij zelenij i chervonij 8 bit na kozhnu vibirku Format 32 bit na piksel 32bpp pidtrimuye 4 294 967 296 riznih koloriv i zberigaye 1 piksel na 4 bajtovij DWORD Kozhne DWORD mozhe viznachiti alfa chervonij zelenij ta sinij vibirki pikselya Shob virishiti neodnoznachnist togo yaki biti viznachayut yaki vibirki zagolovki DIB nadayut pevni znachennya za zamovchuvannyam a takozh konkretni BITFIELDS yaki ye bitovimi maskami yaki viznachayut nalezhnist pevnoyi grupi bitiv u pikseli do pevnogo kanalu Navedena nizhche diagrama viznachaye cej mehanizm Priklad 1 Redaguvati nbsp Zvernit uvagu sho rastrovi dani pochinayutsya z nizhnogo livogo kuta zobrazhennya Nizhche navedeno priklad rastrovogo zobrazhennya 2 2 pikselya 24 rozryadnogo zagolovok Windows DIB BITMAPINFOHEADER z pikselnij format RGB24 Zmishennya Rozmir Shistnadcyatkove znachennya Znachennya OpisZagolovok BMP0h 2 42 4D BM Pole identifikatora 42h 4h 2h 4 46 00 00 00 70 bajt 54 16 Rozmir fajlu BMP zagolovok 54 bajti 16 bajt danih 6h 2 00 00 Nevikoristanij Specifichne zastosuvannya8h 2 00 00 Nevikoristanij Specifichne zastosuvannyaAh 4 36 00 00 00 54 bajti 14 40 Zmishennya de mozhna znajti masiv pikseliv rastrovi dani Zagolovok DIBEh 4 28 00 00 00 40 bajt Kilkist bajtiv u zagolovku DIB z cogo momentu 12h 4 02 00 00 00 2 pikseli poryadok zliva napravo Shirina rastrovogo zobrazhennya v pikselyah16h 4 02 00 00 00 2 pikseli znizu vgoru Visota rastrovogo zobrazhennya v pikselyah Pozitivnij dlya poryadku pikseliv znizu vgoru 1Ah 2 01 00 1 ploshina Kilkist kolorovih ploshin sho vikoristovuyutsya1Ch 2 18 00 24 biti Kilkist bitiv na piksel1Eh 4 00 00 00 00 0 BI RGB stisnennya masivu pikseliv ne vikoristovuyetsya22h 4 10 00 00 00 16 bajt Rozmir neobroblenih rastrovih danih vklyuchayuchi zapovnennya 26h 4 13 0B 00 00 2835 pikseliv metr po gorizontali Rozdilna zdatnist druku zobrazhennya 72 DPI 39 3701 dyujma na metr daye 2834 64722Ah 4 13 0B 00 00 2835 pikseliv metr po vertikali2Eh 4 00 00 00 00 0 koloriv Kilkist koloriv u palitri32h 4 00 00 00 00 0 vazhlivih koloriv 0 oznachaye sho vsi kolori vazhliviPochatok masivu pikseliv rastrovi dani 36h 3 00 00 FF 0 0 255 Chervonij piksel 0 1 39h 3 FF FF FF 255 255 255 Bilij piksel 1 1 3Ch 2 00 00 0 0 Zapovnennya dlya 4 bajtovogo virivnyuvannya mozhe buti znachennyam vidminnim vid nulya 3Eh 3 FF 00 00 255 0 0 sinij piksel 0 0 41h 3 00 FF 00 0 255 0 Zelenij piksel 1 0 44h 2 00 00 0 0 Zapovnennya dlya 4 bajtovogo virivnyuvannya mozhe buti znachennyam vidminnim vid nulya Priklad 2 rastrovogo zobrazhennya 4 2 pikselya z koduvannyam 32 biti piksel Priklad 2 Redaguvati Zvernit uvagu sho rastrovi dani pochinayutsya z nizhnogo livogo kuta zobrazhennya Nizhche navedeno priklad 32 rozryadnogo rastrovogo zobrazhennya rozmirom 4 2 pikselya zi znachennyami neprozorosti v alfa kanali zagolovok Windows DIB BITMAPV4HEADER z pikselnim formatom ARGB32 Zmishennya Rozmir Shistnadcyatkove znachennya Znachennya OpisZagolovok BMP0h 2 42 4D BM Pole identifikatora 42h 4Dh 2h 4 9A 00 00 00 154 bajti 122 32 Rozmir fajlu BMP6h 2 00 00 Nevikoristanij Specifichne zastosuvannya8h 2 00 00 Nevikoristanij Specifichne zastosuvannyaAh 4 7A 00 00 00 122 bajti 14 108 Zmishennya de mozhna znajti masiv pikseliv rastrovi dani Zagolovok DIBEh 4 6C 00 00 00 108 bajt Kilkist bajtiv u zagolovku DIB z cogo momentu 12h 4 04 00 00 00 4 pikseli poryadok zliva napravo Shirina rastrovogo zobrazhennya v pikselyah16h 4 02 00 00 00 2 pikseli znizu vgoru Visota rastrovogo zobrazhennya v pikselyah1Ah 2 01 00 1 ploshina Kilkist kolorovih ploshin sho vikoristovuyutsya1Ch 2 20 00 32 biti Kilkist bitiv na piksel1Eh 4 03 00 00 00 3 BI BITFIELDS stisnennya masivu pikseliv ne vikoristovuyetsya22h 4 20 00 00 00 32 bajti Rozmir neobroblenih rastrovih danih vklyuchayuchi zapovnennya 26h 4 13 0B 00 00 2835 pikseliv metr po gorizontali Rozdilna zdatnist druku zobrazhennya 72 DPI 39 3701 dyujma na metr daye 2834 64722Ah 4 13 0B 00 00 2835 pikseliv metr po vertikali2Eh 4 00 00 00 00 0 koloriv Kilkist koloriv u palitri32h 4 00 00 00 00 0 vazhlivih koloriv 0 oznachaye sho vsi kolori vazhlivi36h 4 00 00 FF 00 00FF0000 u velikomu bajti Chervona bitova maska kanalu dijsna oskilki vkazano BI BITFIELDS 3Ah 4 00 FF 00 00 0000FF00 u velikomu ryadku Zelena bitova maska kanalu dijsna oskilki vkazano BI BITFIELDS 3Eh 4 FF 00 00 00 000000FF u velikomu bajti Blakitna maska kanalu dijsna oskilki vkazano BI BITFIELDS 42h 4 00 00 00 FF FF000000 u velikomu bajti bitova maska alfa kanalu46h 4 20 6E 69 57 malenkij ryadok Win LCS WINDOWS COLOR SPACE4Ah 24 god 24 godini 00 00 Kincevi tochki kolirnogo prostoru CIEXYZTRIPLE Ne vikoristovuyetsya dlya LCS Win abo sRGB 6Eh 4 00 00 00 00 0 Chervona Gama Ne vikoristovuyetsya dlya LCS Win abo sRGB 72h 4 00 00 00 00 0 Zelena Gama Ne vikoristovuyetsya dlya LCS Win abo sRGB 76h 4 00 00 00 00 0 Sinya gamma Ne vikoristovuyetsya dlya LCS Win abo sRGB Pochatok masivu pikseliv rastrovih danih 7Ah 4 FF 00 00 7F 255 0 0 127 Sinij alfa 127 piksel 1 0 7Eh 4 00 FF 00 7F 0 255 0 127 Zelenij alfa 127 piksel 1 1 82h 4 00 00 FF 7F 0 0 255 127 Chervonij alfa 127 piksel 1 2 86h 4 FF FF FF 7F 255 255 255 127 Bilij alfa 127 piksel 1 3 8Ah 4 FF 00 00 FF 255 0 0 255 Sinij alfa 255 piksel 0 0 8Eh 4 00 FF 00 FF 0 255 0 255 Zelenij alfa 255 piksel 0 1 92h 4 00 00 FF FF 0 0 255 255 Chervonij alfa 255 piksel 0 2 96h 4 FF FF FF FF 255 255 255 255 Bilij alfa 255 piksel 0 3 Primitki Redaguvati Shablon Cite IETF makelink IANA Considerations Windows Image Media Types sec 5 doi 10 17487 RFC7903 Shablon Cite IETF doctypes Proignorovano nevidomij parametr section url dovidka Proignorovano nevidomij parametr mode dovidka Pachghare V K 2005 12 Comprehensive Computer Graphics including C angl Laxmi Publications ISBN 978 81 7008 185 2 Arhiv originalu za 30 listopada 2021 Procitovano 30 listopada 2021 Image File Formats Guide What Is JPG GIF BMP EPS PCX XPS Master Bundles amer 5 zhovtnya 2021 Arhiv originalu za 30 listopada 2021 Procitovano 30 listopada 2021 A Beginners Guide to Bitmaps paulbourke net Arhiv originalu za 11 kvitnya 2022 Procitovano 30 listopada 2021 Bitmap image file extensions list www file extensions org angl Arhiv originalu za 30 listopada 2021 Procitovano 30 listopada 2021 Informaciya pro versiyi vzyata z dovidki po Microsoft Windows SDK jde v komplekti z Microsoft Visual Studio 2008 i Embarcadero RAD Studio 2010 rozdil Requirements v stattyah pro dani strukturi Div rozdili Requirements v stattyah BITMAPCOREHEADER Arhivovano 16 veresnya 2014 u Wayback Machine i BITMAPINFOHEADER Arhivovano 19 kvitnya 2014 u Wayback Machine stosovno doWindows Mobile 6 5 na MSDN Otrimano z https uk wikipedia org w index php title BMP amp oldid 38494617