Serwisanci dostępni teraz · czynne całą dobę, także w weekendy i świętaWarszawa i okolice · dojazd bezpłatny
Darmowa diagnoza laptopa
Darmowa diagnoza laptopa
Dojazd do klienta bezpłatnie
Dojazd do klienta bezpłatnie
Laptopy zastępcze bezpłatnie
Laptopy zastępcze bezpłatnie
Odbiór i zwrot sprzętu bezpłatnie
Odbiór i zwrot sprzętu bezpłatnie

BMP

Termin Definicja
BMP

BMP to bezstratny format zapisu grafiki rastrowej, mogący być osadzany jako obraz w dokumentach biurowych.

Budowa pliku BMP i sposób zapisu obrazu

BMP, od angielskiego określenia Bitmap, jest formatem pliku przeznaczonym do przechowywania grafiki rastrowej. Obraz składa się z prostokątnej siatki pikseli, a każdy piksel ma przypisaną wartość koloru. W odróżnieniu od formatów wykorzystujących stratną kompresję, takich jak JPEG, podstawowy zapis BMP nie usuwa informacji o kolorach podczas zapisywania i ponownego otwierania pliku. Z tego powodu obraz zapisany jako BMP zachowuje wartości pikseli, ale plik może zajmować znacznie więcej miejsca niż odpowiadający mu obraz PNG lub JPEG.

Typowy plik BMP zawiera nagłówek pliku, nagłówek opisujący właściwości bitmapy, opcjonalną tablicę kolorów oraz właściwe dane pikseli. Klasyczny nagłówek pliku BITMAPFILEHEADER ma 14 bajtów i zawiera między innymi identyfikator formatu, rozmiar pliku oraz przesunięcie wskazujące początek danych obrazu. Często spotykany nagłówek informacji BITMAPINFOHEADER ma 40 bajtów i przechowuje szerokość, wysokość, liczbę płaszczyzn, głębię kolorów, rodzaj kompresji oraz rozmiar danych bitmapy. W systemach Windows stosowane są także nowsze warianty nagłówków, pozwalające między innymi opisywać maski kanałów koloru i przestrzeń barw.

Głębia kolorów, paleta i układ wierszy

BMP może zapisywać obrazy o różnych głębiach kolorów. Przy głębi 1 bit na piksel każdy piksel reprezentuje jeden z dwóch kolorów, a przy 4 lub 8 bitach na piksel wartość piksela jest indeksem w tablicy kolorów. W takich plikach znaczenie obrazu zależy zarówno od danych pikseli, jak i od palety zapisanej w pliku. Przy 24 bitach na piksel kolor jest zwykle przechowywany bezpośrednio jako trzy składowe: niebieska, zielona i czerwona. W praktyce kolejność BGR jest istotna podczas ręcznej analizy pliku, ponieważ nie odpowiada kolejności RGB używanej w wielu bibliotekach graficznych.

Warianty 16- i 32-bitowe mogą korzystać z masek określających położenie kanałów w słowie lub słowie podwójnym. W pliku 32-bitowym dodatkowy bajt nie musi automatycznie oznaczać poprawnie obsługiwanej przez każdy program przezroczystości; jego interpretacja zależy od nagłówka, masek i oprogramowania odczytującego bitmapę. Szerokość pojedynczego wiersza danych jest wyrównywana do granicy 4 bajtów. Oznacza to, że po zakończeniu pikseli wiersz może zawierać nieużywane bajty dopełniające. Pominięcie tego dopełnienia podczas odczytu powoduje przesunięcie kolejnych wierszy i widoczne zniekształcenie obrazu.

W klasycznym układzie dodatnia wartość wysokości oznacza bitmapę zapisaną od dołu do góry: pierwszy zapisany wiersz odpowiada dolnej części obrazu. Ujemna wysokość w odpowiednim nagłówku opisuje układ od góry do dołu, nazywany top-down. Ta różnica ma znaczenie przy konwersji BMP do innych formatów oraz przy programowaniu własnego dekodera. Błędne założenie dotyczące kierunku wierszy może odwrócić obraz pionowo, mimo że sam plik jest formalnie poprawny.

Kompresja i zgodność z programami

Najczęściej spotykany zapis BMP wykorzystuje wartość BI_RGB, która w standardowym zastosowaniu oznacza brak kompresji. Format przewiduje jednak również mechanizmy kompresji RLE, w szczególności BI_RLE8 dla obrazów 8-bitowych oraz BI_RLE4 dla obrazów 4-bitowych. RLE, czyli kodowanie długości serii, przechowuje powtarzające się sekwencje zamiast zapisywać każdą wartość osobno. Jest to kompresja bezstratna, ale jej zastosowanie jest ograniczone do określonych głębi kolorów i nie zawsze daje mały plik.

Warianty wykorzystujące BI_BITFIELDS opisują kanały koloru za pomocą masek bitowych. Dzięki temu można precyzyjnie określić, które bity odpowiadają za czerwony, zielony, niebieski, a czasem także dodatkowy kanał. Zgodność takiego pliku zależy od programu, który go otwiera. Nie każda aplikacja interpretuje wszystkie odmiany nagłówków, palet, masek i kanału alfa w ten sam sposób. Plik może więc być poprawny według struktury BMP, a mimo to zostać otwarty z niewłaściwymi kolorami, bez przezroczystości albo z komunikatem o nieobsługiwanym wariancie.

BMP jest obsługiwany przez system Windows i wiele programów graficznych, edytorów dokumentów oraz bibliotek programistycznych. Bywa używany do prostych zrzutów ekranu, testów urządzeń wyświetlających, wymiany nieskompresowanych danych między aplikacjami oraz osadzania obrazu w dokumentach. Nie jest jednak dobrym wyborem do publikowania zdjęć w internecie, ponieważ przy dużych wymiarach i wysokiej głębi kolorów generuje duże pliki. Do zachowania bezstratnej jakości przy mniejszym rozmiarze częściej stosuje się PNG, o ile używane oprogramowanie prawidłowo obsługuje ten format.

Rozpoznawanie uszkodzeń i obsługa BMP w serwisie

Podczas diagnozowania problemu z plikiem BMP warto najpierw sprawdzić, czy plik rzeczywiście zaczyna się od sygnatury BM, czy jego deklarowany rozmiar odpowiada rozmiarowi odczytanemu z systemu plików oraz czy przesunięcie danych nie wykracza poza koniec pliku. Następnie można porównać szerokość, wysokość, głębię kolorów i typ kompresji z faktycznym układem danych. Niezgodność między tymi polami często wskazuje na niepełny zapis, uszkodzenie nagłówka albo błędną konwersję wykonaną przez program.

Objawami błędnej interpretacji BMP są między innymi pionowe odwrócenie obrazu, przesunięte kolory, ukośne pasy, przypadkowe zakłócenia w dolnej części grafiki oraz komunikat o nieprawidłowym formacie. Warto także sprawdzić, czy problem występuje w jednym programie, czy we wszystkich aplikacjach. Jeżeli bitmapa otwiera się poprawnie w jednym dekoderze, a nie w innym, przyczyną może być ograniczona obsługa konkretnego nagłówka lub kanału alfa, a nie fizyczne uszkodzenie danych. Przy plikach przenoszonych z nośnika, poczty lub aparatu należy dodatkowo zweryfikować, czy kopiowanie zakończyło się bez błędów i czy rozmiar pliku nie został zmieniony.

Warszawskie Pogotowie Komputerowe zajmuje się profesjonalną naprawą laptopów, komputerów PC i podzespołów, a w ramach diagnostyki może również sprawdzić problemy z otwieraniem, konwersją lub wyświetlaniem plików BMP. W praktyce analiza obejmuje ustalenie programu skojarzonego z rozszerzeniem, porównanie zachowania kilku aplikacji oraz ocenę, czy źródłem problemu jest sam plik, biblioteka graficzna, sterownik karty graficznej czy uszkodzenie systemu plików. Jeżeli plik jest częściowo uszkodzony, możliwość odzyskania obrazu zależy od zachowanych nagłówków, kompletności wierszy pikseli i dostępności kopii zapasowej.

+48 22 100 48 29Zadzwoń teraz · serwisant w 1 godzinę