Omówienie formatu BMP
Ten temat zawiera informacje na temat natywnego kodera BMP dostępnego za pośrednictwem składnika Windows Imaging (WIC).
Tożsamość kodeka
Poniższa tabela zawiera informacje dotyczące identyfikacji koderów.
Składnik | Opis |
---|---|
Nazwy formalne | Format mapy bitowej systemu Windows |
Rozszerzenia nazw plików | bmp, dib |
Typ MIME | image/bmp |
Obsługa specyfikacji | Specyfikacja BMP v5 |
W poniższej tabeli wymieniono identyfikatory GUID używane do identyfikacji natywnych komponentów kodera BMP.
Składnik | Przyjazna nazwa | GUID |
---|---|---|
Format kontenera | GUID_ContainerFormatBmp | 0af1d87e-fcfe-4188-bdeba7906471cbe3 |
Dekoder | CLSID_WICBmpDecoder | 6b462062-7cbf-400d-9fdb813ddd10f2778 |
Koder | CLSID_WICBmpEncoder | 69be8bb4-d66d-47c8-865aed1589433782 |
Kodowanie
Interfejs API kodowania WIC został zaprojektowany tak, aby był niezależny od kodera i dlatego kodowanie obrazów dla koderów z obsługą funkcji WIC jest zasadniczo takie samo. Aby uzyskać więcej informacji na temat kodowania obrazów przy użyciu API WIC, zobacz Kodowanie: omówienie.
Opcje kodera
Koderki z obsługą funkcji WIC różnią się na poziomie opcji kodowania. Opcje kodera odzwierciedlają możliwości kodera obrazu, a każdy koder natywny obsługuje zestaw tych opcji kodera. Opcje kodera mogą być podstawowymi opcjami obsługiwanymi przez WIC dostępnymi dla wszystkich kodeków obsługujących WIC (choć niekoniecznie są one wspierane) lub innymi opcjami specyficznymi dla kodeka, zaprojektowanymi przez kodek formatu obrazu. Aby zarządzać tymi opcjami kodowania podczas procesu kodowania, WIC używa interfejsu IPropertyBag2 . Aby uzyskać więcej informacji na temat korzystania z interfejsu IPropertyBag2 do kodowania WIC, zobacz Omówienie kodowania.
W poniższej tabeli wymieniono opcje kodera WIC obsługiwane przez natywny koder BMP.
Nazwa właściwości | VARTYPE | Zakres wartości | Wartość domyślna |
---|---|---|---|
EnableV5Header32bppBGRA | VT_BOOL | PRAWDA/WARUNEK_FAŁSZ | VARIANT_FALSE |
EnableV5Header32bppBGRA
Określa, czy dozwolone jest kodowanie danych w formacie pikseli GUID_WICPixelFormat32bppBGRA. Jeśli ta opcja zostanie ustawiona na VARIANT_TRUE, protokół BMP zostanie zapisany przy użyciu nagłówka BITMAPV5HEADER.
Wartość domyślna to VARIANT_FALSE.
Jeśli opcja kodera znajduje się na liście opcji IPropertyBag2, której kodek nie obsługuje, jest ignorowana.
Uwaga dotycząca 16-bitowych i 32-bitowych plików BMP systemu Windows koder-dekoder BMP ignoruje dowolny kanał alfa, ponieważ wiele starszych plików obrazów zawiera nieprawidłowe dane w tym dodatkowym kanale. Począwszy od systemu Windows 8, 32-bitowe pliki BMP systemu Windows zapisane przy użyciu BITMAPV5HEADER z prawidłową zawartością kanału alfa są odczytywane jako WICPixelFormat32bppBGRA
Dekodowanie
Interfejs API dekodowania WIC został zaprojektowany tak, aby był niezależny od kodera, a dekodowanie obrazów dla koderów z obsługą funkcji WIC jest zasadniczo takie samo. Aby uzyskać więcej informacji na temat dekodowania obrazów, zobacz Przegląd dekodowania. Aby uzyskać więcej informacji na temat używania zdekodowanych danych obrazu, zobacz Bitmap Sources Overview (Omówienie źródeł map bitowych).