Обзор API WIC
Компонент обработки изображений Windows (WIC) предоставляет API на основе модели компонентов (COM) для использования в C и C++. API WIC предоставляет различные функциональные возможности, связанные с изображениями, в том числе:
- Встроенные кодеки для стандартных форматов веб-изображений.
- Встроенная поддержка стандартных форматов метаданных.
- Широкий диапазон поддержки формата пикселей.
- Поддержка высоких цветовых разрешений; включая 30-битный расширенный диапазон, 30-битную высокую точность и 48-битную высокую точность с широким цветовым охватом.
- Расширяемая платформа для кодеков изображений, форматов пикселей и метаданных.
Этот раздел содержит следующие разделы.
- файлы заголовков WIC
- Файлы библиотеки
- Фабрики классов
- Компоненты визуализации
- см. также
Файлы заголовков WIC
API WIC определяются в следующих файлах заголовка и языка определения интерфейса (IDL):
Файл | Описание |
---|---|
wincodec.h | Определяет версии C и C++ основных API WIC. |
wincodec.idl | Определяет основные интерфейсы WIC. |
wincodecsdk.h | Определяет версии интерфейсов WIC метаданных для C и C++. |
wincodecsdk.idl | Определяет интерфейсы метаданных WIC. |
wincodec_proxy.h | Определяет экспорт прокси-сервера WIC. |
Для использования WIC ваше приложение должно содержать wincodec.h и/или wincodecsdk.h в зависимости от потребностей приложения.
Файлы библиотеки
Файлы библиотек WIC:
Файл | Описание |
---|---|
windowscodecs.lib | Библиотека импорта, предоставляемая пакетом средств разработки программного обеспечения Windows (SDK). |
windowscodecs.dll | Библиотека стандартной реализации, предоставляемая операционной системой. |
Чтобы связаться с API WIC, ваше приложение должно включать windowscodec.lib в качестве дополнительной зависимости компоновщика.
Фабрики классов
В следующей таблице описаны две классовые фабрики COM, предоставляемые API WIC для создания компонентов WIC.
Интерфейс фабрики | Описание |
---|---|
IWICImagingFactory | Фабрика базовых классов для разработки приложений с помощью компонентов WIC. Эта фабрика создает такие компоненты, как декодеры изображений, кодировщики и потоки. |
IWICComponentFactory | Фабрика классов, предназначенная для разработчиков компонентов WIC. Компоненты, созданные из этой фабрики, в основном используются в разработке кодека и обработчика метаданных. |
Чтобы создать любую фабрику классов, используйте функцию COM CoCreateInstance. Следующий пример иллюстрирует создание фабрики изображений 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 .
Тип компонента | Описание |
---|---|
растрового изображения | Представляет записываемое в памяти представление IWICBitmapSource. |
декодер | Используется для декодирование данных изображения из потока в формате, полезном для обработки изображений. |
кодировщик | Записывает данные изображения в поток. |
Stream | Используется для чтения и записи данных из файла, сетевого ресурса, блока памяти и т. д. |
конвертера форматов | Используется для преобразования из одного формата пикселей в другой. |
Чтение запроса метаданных | Используется для чтения метаданных изображения или кадра изображения. |
Автор запросов метаданных | Используется для записи метаданных в изображение или кадр изображения. |
См. также