Интерфейс IWICFastMetadataEncoder (wincodec.h)

Предоставляет методы, используемые для редактирования метаданных на месте. Быстрый кодировщик метаданных позволяет добавлять и удалять метаданные в изображение без необходимости полностью перекодировать изображение.

Наследование

Интерфейс IWICFastMetadataEncoder наследуется от интерфейса IUnknown . IWICFastMetadataEncoder также имеет следующие типы элементов:

Методы

Интерфейс IWICFastMetadataEncoder содержит следующие методы.

 
IWICFastMetadataEncoder::Commit

Завершает изменения метаданных в потоке изображений.
IWICFastMetadataEncoder::GetMetadataQueryWriter

Извлекает модуль записи запросов метаданных для быстрого кодирования метаданных.

Комментарии

Для выполнения обновления метаданных на месте необходимо создать декодер, используя значение WICDecodeOptionsWICDecodeMetadataCacheOnDemand . При использовании параметра WICDecodeMetadataCacheOnLoad декодер освобождает файловый поток, необходимый для обновления метаданных.

Не все форматы метаданных поддерживают быстрое кодирование метаданных. Собственные обработчики метаданных, поддерживающие метаданные: IFD, Exif, XMP и GPS.

Если быстрый кодировщик метаданных завершается сбоем, для добавления метаданных необходимо будет полностью перекодировать изображение.

Примеры

Ниже показано, как получить быстрый кодировщик метаданных из кадра изображения и использовать его модуль записи запросов для записи элемента метаданных.

IWICFastMetadataEncoder *pFME = NULL;
IWICMetadataQueryWriter *pFMEQW = NULL;

hr = pFactory->CreateFastMetadataEncoderFromFrameDecode(pFrameDecode, &pFME);

if (SUCCEEDED(hr))
{
 	hr = pFME->GetMetadataQueryWriter(&pFMEQW);
}

if (SUCCEEDED(hr))
{
	 // Add additional metadata
 	PROPVARIANT value;

	 PropVariantInit(&value);

 	value.vt = VT_UI2;
	 value.uiVal = 99;
 	hr = pFMEQW->SetMetadataByName(L"/app1/ifd/{ushort=18249}", &value);

 	PropVariantClear(&value);
}

if (SUCCEEDED(hr))
{
	 hr = pFME->Commit();
}

Требования

   
Минимальная версия клиента Windows XP с пакетом обновления 2 (SP2), Windows Vista [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2008 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header wincodec.h