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 搭配 SP2、Windows Vista [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 Windows Server 2008 [傳統型應用程式 |UWP 應用程式]
目標平台 Windows
標頭 wincodec.h