Antarmuka IWICMetadataQueryReader (wincodec.h)

Mengekspos metode untuk mengambil blok metadata dan item dari dekoder atau bingkai gambarnya menggunakan ekspresi kueri metadata.

Warisan

Antarmuka IWICMetadataQueryReader mewarisi dari antarmuka IUnknown . IWICMetadataQueryReader juga memiliki jenis anggota ini:

Metode

Antarmuka IWICMetadataQueryReader memiliki metode ini.

 
IWICMetadataQueryReader::GetContainerFormat

Mendapatkan format kontainer pembaca kueri metadata.
IWICMetadataQueryReader::GetEnumerator

Mendapatkan enumerator semua item metadata di lokasi relatif saat ini dalam hierarki metadata.
IWICMetadataQueryReader::GetLocation

Mengambil jalur saat ini relatif terhadap blok metadata akar.
IWICMetadataQueryReader::GetMetadataByName

Mengambil blok metadata atau item yang diidentifikasi oleh ekspresi kueri metadata.

Keterangan

Pembaca kueri metadata menggunakan ekspresi kueri metadata untuk mengakses metadata yang disematkan. Untuk informasi selengkapnya tentang bahasa kueri metadata, lihat Gambaran Umum Bahasa Kueri Metadata.

Manfaat pembaca kueri adalah kemampuan untuk mengakses item metadata dalam satu langkah.

Pembaca kueri juga menyediakan cara untuk melintasi seluruh set hierarki metadata dengan bantuan metode GetEnumerator . Namun, tidak disarankan untuk menggunakan metode ini karena IWICMetadataBlockReader dan IWICMetadataReader menyediakan cara yang lebih nyaman dan lebih murah.

Contoh

Kode berikut menunjukkan cara mendapatkan pembaca kueri dan menggunakannya untuk mengambil item metadata.

// Get the query reader
if (SUCCEEDED(hr))
{
    hr = pFrameDecode->GetMetadataQueryReader(&pQueryReader);
}

if (SUCCEEDED(hr))
{
    hr = pQueryReader->GetMetadataByName(L"/app1/ifd/{ushort=18249}", &value);
    PropVariantClear(&value);
}

Kode berikut menunjukkan cara mendapatkan pembaca kueri dan menggunakannya untuk mengambil blok metadata berlapis.

// Get the query reader
if (SUCCEEDED(hr))
{
    hr = pFrameDecode->GetMetadataQueryReader(&pQueryReader);
}

if (SUCCEEDED(hr))
{
    // Get the embedded IFD reader
    hr = pQueryReader->GetMetadataByName(L"/app1/ifd", &value);
    if (value.vt == VT_UNKNOWN)
    {
        hr = value.punkVal->QueryInterface(IID_IWICMetadataQueryReader, (void **)&pEmbedReader);
    }
    PropVariantClear(&value); // Clear value for new query
}

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows XP dengan SP2, Windows Vista [aplikasi desktop | Aplikasi UWP]
Server minimum yang didukung Windows Server 2008 [aplikasi desktop | Aplikasi UWP]
Target Platform Windows
Header wincodec.h

Lihat juga

Konseptual

Gambaran Umum Bahasa Kueri Metadata

Gambaran Umum Membaca dan Menulis Metadata Gambar

Gambaran Umum Metadata WIC