다음을 통해 공유


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