WIC-API-Übersicht

Die Windows Imaging Component (WIC) bietet eine com-basierte Component-Objektmodell-API für die Verwendung in C und C++. Die WIC-API stellt eine Vielzahl von bildbezogenen Funktionen bereit, einschließlich:

  • Integrierte Codecs für die Standardwebbildformate.
  • Integrierte Unterstützung für Standardmetadatenformate.
  • Breite Palette der Pixelformatunterstützung.
  • Hohe Farbunterstützung; einschließlich 30-Bit-erweiterter Bereich, 30-Bit-Hohe Genauigkeit und 48-Bit-Hohe Genauigkeit und breite Pixelformate.
  • Erweiterbares Framework für Bildcodecs, Pixelformate und Metadatenformate.

Dieses Thema enthält die folgenden Themen.

WIC-Kopfzeilendateien

Die WIC-APIs werden in den folgenden Header- und IdL-Dateien (Interface Definition Language) definiert:

Datei BESCHREIBUNG
wincodec.h Definiert C- und C++-Versionen der primären WIC-APIs.
wincodec.idl Definiert die primären WIC-Schnittstellen.
wincodecsdk.h Definiert C- und C++-Versionen der Metadaten-WIC-APIs.
wincodecsdk.idl Definiert die WIC-Metadatenschnittstellen.
wincodec_proxy.h Definiert die WIC-Proxyexporte.

 

Um WIC zu verwenden, müssen Ihre Anwendungen wincodec.h und/oder wincodecsdk.h enthalten, je nachdem, welche API Ihre Anwendung benötigt.

Bibliotheksdateien

Die WIC-Bibliotheksdateien:

Datei BESCHREIBUNG
windowscodecs.lib Importbibliothek, die vom Windows Software Development Kit (SDK) bereitgestellt wird.
windowscodecs.dll Aktienimplementierungsbibliothek, die vom Betriebssystem bereitgestellt wird.

 

Um mit WIC-APIs zu verknüpfen, muss Ihre Anwendung windowscodec.lib als zusätzliche Linkerabhängigkeit einschließen.

Klassenfabriken

In der folgenden Tabelle werden die beiden COM-Klassenfabriken beschrieben, die WIC-APIs zum Erstellen von WIC-Komponenten bereitstellen.

Factory-Schnittstelle BESCHREIBUNG
IWICImagingFactory Primäre Klassenfabrik für die Anwendungsentwicklung mithilfe von WIC-Komponenten. Diese Fabrik erstellt Komponenten wie Bild-Decoder, Encoder und Datenströme.
IWICComponentFactory Klassenfabrik, die auf WIC-Komponentenentwickler ausgerichtet ist. Komponenten, die aus dieser Fabrik erstellt wurden, werden hauptsächlich in der Codec- und Metadatenhandlerentwicklung verwendet.

 

Um eine Klassenfabrik zu erstellen, verwenden Sie die CoCreateInstance-COM-Funktion . Im folgenden Beispiel wird die Erstellung der WIC-Imaging-Fabrik veranschaulicht.

// 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)
);

Abbildungskomponenten

Die WIC-APIs bieten verschiedene Arten von Abbildungskomponenten. In der folgenden Tabelle werden einige der allgemeinen WIC-Komponenten beschrieben. Eine vollständige Liste der verfügbaren Komponenten finden Sie unter WIC-Schnittstellen.

Komponententyp BESCHREIBUNG
Bitmap Stellt eine schreibbare Speicherdarstellung einer IWICBitmapSource dar.
Decoder Wird verwendet, um Bilddaten aus einem Datenstrom in ein Format zu entschlüsseln, das für die Bildverarbeitung nützlich ist.
Encoder Schreibt Bilddaten in einen Datenstrom.
Stream Wird verwendet, um Daten aus einer Datei, Netzwerkressource, einem Speicherblock und so weiter zu lesen und zu schreiben.
Formatkonverter Wird verwendet, um ein Pixelformat in ein anderes zu konvertieren.
Metadatenabfrageleser Wird verwendet, um Metadaten eines Bild- oder Bildrahmens zu lesen.
Metadatenabfrage-Writer Wird verwendet, um Metadaten in ein Bild oder einen Bildrahmen zu schreiben.

 

Weitere Informationen

Referenzen

Beispiele und Codebeispiele