Общие сведения об API WIC

Компонент Windows Imaging Component (WIC) предоставляет API на основе модели COM для использования в C и C++. API WIC предоставляет разнообразные функции, связанные с образами, в том числе:

  • Встроенные кодеки для стандартных форматов веб-изображений.
  • Встроенная поддержка стандартных форматов метаданных.
  • Поддержка широкого диапазона поддерживаемых форматов пикселей.
  • Поддержка высокого цвета; включая 30-разрядный расширенный диапазон, 30-разрядную с высокой точностью и 48-разрядный формат пикселей с высокой точностью и шириной в один цвет.
  • Расширяемая платформа для кодеков изображений, форматов пикселей и форматов метаданных.

Этот раздел содержит следующие разделы.

Файлы заголовков WIC

API-интерфейсы WIC определяются в следующих файлах в заголовке и на языке IDL:

Файл Описание
винкодек. h Определяет версии основных API-интерфейсов WIC для C и C++.
винкодек. idl Определяет основные интерфейсы WIC.
винкодексдк. h Определяет версии API WIC метаданных в C и C++.
винкодексдк. idl Определяет интерфейсы метаданных WIC.
винкодек _ -прокси. h Определяет экспорты прокси-сервера WIC.

Чтобы использовать WIC, приложения должны включать винкодек. h и (или) винкодексдк. h в зависимости от того, какой API требуется приложению.

Файлы библиотек

Файлы библиотеки WIC:

Файл Описание
виндовскодекс. lib Библиотека импорта, предоставляемая пакетом средств разработки программного обеспечения (SDK) для Windows.
windowscodecs.dll Библиотека реализации акции, предоставляемая операционной системой.

Чтобы создать ссылку на API-интерфейсы WIC, приложение должно включать виндовскодек. lib в качестве дополнительной зависимости компоновщика.

Фабрики классов

В следующей таблице описаны две фабрики классов COM, которые API-интерфейсы WIC предоставляют для создания компонентов WIC.

Фабричный интерфейс Описание
IWICImagingFactory Основная фабрика классов для разработки приложений с помощью компонентов WIC. Эта фабрика создает такие компоненты, как декодеры изображений, кодировщики и потоки.
ивиккомпонентфактори Фабрика класса, предназначенная для разработчиков компонентов WIC. Компоненты, созданные из этой фабрики, в основном используются в коде кодеков и обработчика метаданных.

Чтобы создать любую фабрику класса, используйте функцию CoCreateInstance com. В следующем примере демонстрируется создание фабрики изображений 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)
);

Компоненты работы с образами

API-интерфейсы WIC предоставляют несколько типов компонентов работы с образами. В следующей таблице описаны некоторые распространенные компоненты WIC. Полный список доступных компонентов см. в разделе интерфейсы WIC.

Тип компонента Описание
Bitmap Представляет доступное для записи представление IWICBitmapSourceв памяти.
Показан Используется для декодирования данных изображения из потока в формат, который удобен для обработки изображений.
Кодировщик Записывает данные изображения в поток.
Stream Используется для чтения и записи данных из файла, сетевого ресурса, блока памяти и т. д.
Конвертер формата Используется для преобразования из одного формата пикселей в другой.
Средство чтения запросов метаданных Используется для чтения метаданных изображения или кадра изображения.
Модуль записи запросов метаданных Используется для записи метаданных в изображение или кадр изображения.

См. также:

Справочные материалы

Примеры и примеры кода