IWICFastMetadataEncoder 介面 (wincodec.h)
公開用於就地中繼資料編輯的方法。 快速的中繼資料編碼器可讓您新增和移除影像的中繼資料,而不需要完全重新編碼影像。
繼承
IWICFastMetadataEncoder介面繼承自IUnknown介面。 IWICFastMetadataEncoder 也有下列類型的成員:
方法
IWICFastMetadataEncoder介面具有這些方法。
IWICFastMetadataEncoder::Commit 完成影像資料流程的中繼資料變更。 |
IWICFastMetadataEncoder::GetMetadataQueryWriter 擷取中繼資料查詢寫入器以進行快速中繼資料編碼。 |
備註
必須使用 WICDecodeOptions 值 WICDecodeMetadataCacheOnDemand 來建立解碼器,才能執行就地中繼資料更新。 使用 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 |