Udostępnij za pośrednictwem


Omówienie interfejsu API WIC

Składnik Windows Imaging (WIC) udostępnia interfejs API bazujący na modelu obiektowym COM, do użycia w językach C i C++. Interfejs API WIC udostępnia różne funkcje związane z obrazami, w tym:

  • Wbudowane kodecze dla standardowych formatów obrazów internetowych.
  • Wbudowana obsługa standardowych formatów metadanych.
  • Obsługa szerokiego zakresu formatów pikseli.
  • Obsługa koloru wysokiej jakości; w tym 30-bitowy rozszerzony zakres, 30-bitowa wysoka precyzja oraz 48-bitowe formaty pikseli z wysoką precyzją i szeroką gamą.
  • Rozszerzalna struktura dla koderów obrazów, formatów pikseli i formatów metadanych.

Ten temat zawiera następujące tematy.

Pliki nagłówkowe WIC

Interfejsy API WIC są definiowane w następujących plikach nagłówka i języka IDL (Interface Definition Language):

Plik Opis
wincodec.h Definiuje wersje C i C++ podstawowych interfejsów API WIC.
wincodec.idl Definiuje podstawowe interfejsy WIC.
wincodecsdk.h Definiuje wersje C i C++ metadanych WIC API.
wincodecsdk.idl Definiuje interfejsy metadanych WIC.
wincodec_proxy.h Definiuje eksporty serwera proxy WIC.

 

Aby korzystać z funkcji WIC, aplikacje muszą zawierać pliki wincodec.h i/lub wincodecsdk.h, w zależności od interfejsu API wymaganego przez aplikację.

Pliki biblioteczne

Pliki biblioteki WIC:

Plik Opis
windowscodecs.lib Zaimportuj bibliotekę udostępnioną przez zestaw Sdk (Software Development Kit) systemu Windows.
windowscodecs.dll Standardowa biblioteka implementacji oferowana przez system operacyjny.

 

Aby połączyć się z interfejsami API WIC, aplikacja musi uwzględniać plik windowscodec.lib jako dodatkową zależność konsolidatora łączenia.

Fabryki klas

W poniższej tabeli opisano dwie fabryki klas COM, które zapewniają interfejsy API WIC dla tworzenia składników WIC.

Interfejs fabryki Opis
IWICImagingFactory Podstawowa klasa fabryczna na potrzeby tworzenia aplikacji przy użyciu składników WIC. Ta fabryka tworzy składniki, takie jak dekodatory obrazów, kodery i strumienie.
IWICComponentFactory Fabryka klas przeznaczona dla twórców komponentów WIC. Składniki utworzone z tej fabryki są używane głównie w programach koderskich i programach obsługi metadanych.

 

Aby utworzyć jedną z fabryk klas, użyj funkcji CoCreateInstance COM. W poniższym przykładzie pokazano tworzenie fabryki obrazów WIC.

// Initialize COM
CoInitialize(NULL);

// The factory pointer
IWICImagingFactory *pFactory = NULL;

// Create the COM imaging factory
HRESULT hr = CoCreateInstance(
    CLSID_WICImagingFactory,
    NULL,
    CLSCTX_INPROC_SERVER,
    IID_PPV_ARGS(&pFactory)
);

Składniki obrazu

Interfejsy API WIC udostępniają kilka typów składników obrazu. W poniższej tabeli opisano niektóre typowe składniki WIC. Aby uzyskać pełną listę dostępnych składników, zobacz interfejsy WIC.

Typ składnika Opis
Bitmap Mapa bitowa Reprezentuje możliwą do zapisu reprezentację w pamięci IWICBitmapSource.
dekoder Służy do dekodowania danych obrazu ze strumienia do formatu przydatnego do przetwarzania obrazów.
enkoder Zapisuje dane obrazu do strumienia.
Strumień Służy do odczytywania i zapisywania danych z pliku, zasobu sieciowego, bloku pamięci itd.
Konwerter formatów Służy do konwertowania z jednego formatu pikseli na inny.
czytnika zapytań metadanych Służy do odczytywania metadanych obrazu lub ramki obrazu.
Autor zapytań metadanych Służy do zapisywania metadanych w obrazie lub ramce obrazu.

 

Zobacz też

bibliografia

Próbki i przykłady kodu