Поделиться через


Запросы метаданных встроенных форматов изображений

В этом разделе представлен обзор запросов на языке метаданных для чтения и записи метаданных, поддерживаемых изображениями GIF, PNG, TIFF и JPEG. Он включает метаданные, относящиеся к каждому формату изображения, а также метаданные, поддерживаемые несколькими форматами.

В этом разделе содержатся следующие подразделы.

Предварительные требования

Чтобы понять эту статью, необходимо ознакомиться с системой метаданных компонента обработки образов Windows (WIC), как описано в разделе Общие сведения о метаданных WIC. Вы также должны быть знакомы с языком запросов, используемым для чтения и записи метаданных, как описано в статье Общие сведения о языке запросов метаданных.

Выражение политики метаданных фотографий

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

Например, выражение политики метаданных фотографии для флага ориентации EXIF:

Как правило, выражения политики рекомендуется использовать вместо собственных запросов метаданных для общих элементов метаданных изображений, которые охватываются пространством имен свойства Windows. Язык запросов метаданных лучше всего подходит для случаев, когда требуется низкоуровневый доступ к определенным элементам метаданных изображений, а также для пользовательских или расширенных элементов метаданных, которые не поддерживаются системой свойств Windows. Дополнительные сведения см. в разделе Выражения политики метаданных фотографий.

Метаданные формата файла

В следующих разделах содержатся таблицы, в которых перечислены доступные запросы метаданных для каждого типа файла изображения. Каждая таблица содержит следующие столбцы:

  • Путь — путь запроса, используемый для получения элемента метаданных.
  • Name — имя элемента метаданных.
  • Type — тип элемента метаданных, полученного из пути запроса. Метаданные, полученные WIC , возвращаются в виде PROPVARIANT, который сообщает тип данных с помощью перечисления VARTYPE.on.

Пути запросов используются API метаданных WIC для доступа к внедренным метаданным изображения. В следующем примере кода показано использование IWICMetadataQueryReader для запроса блока метаданных IFD JPEG.

// Not shown: image decoding 
IWICMetadataQueryReader *pQueryReader = NULL;
IWICMetadataQueryReader *pIFDReader = NULL;

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

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

Метаданные GIF

Формат изображения GIF поддерживает как глобальные метаданные, так и метаданные на уровне кадра. В следующих двух разделах приведены пути к запросам метаданных, доступные для глобальных метаданных GIF и метаданных уровня кадра.

Примечание

Полный список метаданных GIF и более подробные сведения см. в стандарте GIF на веб-сайте W3C.

 

Глобальные метаданные

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

Путь Имя Тип
/commentext или /[*]commentext, где * = от 0 до N Расширение комментариев VT_UNKNOWN — средство чтения или записи запросов
/commentext/TextEntry VT_LPSTR
/logscrdesc Описание логического экрана VT_UNKNOWN — средство чтения или записи запросов
/logscrdesc/Signature VT_UI1 | VT_VECTOR
/logscrdesc/Width VT_UI2
/logscrdesc/Height VT_UI2
/logscrdesc/GlobalColorTableFlag VT_BOOL.
/logscrdesc/ColorResolution VT_UI1
/logscrdesc/SortFlag VT_BOOL.
/logscrdesc/GlobalColorTableSize VT_UI1
/logscrdesc/BackgroundColorIndex VT_UI1
/logscrdesc/PixelAspectRatio VT_UI1
/appext или /[*]appext, где * = от 0 до N Расширение приложения VT_UNKNOWN — средство чтения или записи запросов
/appext/Application VT_UI1 | VT_VECTOR
/appext/Data VT_UI1 | VT_VECTOR

 

Метаданные кадра

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

Путь Имя Тип
/grctlext Расширение графического элемента управления VT_UNKNOWN — средство чтения и записи запросов
/grctlext/Disposal VT_UI1
/grctlext/UserInputFlag VT_BOOL.
/grctlext/TransparencyFlag VT_BOOL.
/grctlext/Delay VT_UI2
/grctlext/TransparentColorIndex VT_UI1
/imgdesc Дескриптор образа VT_UNKNOWN — средство чтения и записи запросов
/imgdesc/Left VT_UI2
/imgdesc/Top VT_UI2
/imgdesc/Width VT_UI2
/imgdesc/Height VT_UI2
/imgdesc/LocalColorTableFlag VT_BOOL.
/imgdesc/InterlaceFlag VT_BOOL.
/imgdesc/SortFlag VT_BOOL.
/imgdesc/LocalColorTableSize VT_UI1

 

Метаданные PNG

Формат изображения PNG поддерживает метаданные на уровне кадра.

Примечание

Полный список метаданных PNG, а также более подробные сведения см. в стандарте PNG на веб-сайте W3C.

 

Метаданные кадра

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

Путь Имя Тип
/tEXt или /[*]tEXt, где * = от 0 до N Фрагмент текста VT_UNKNOWN — средство чтения и записи запросов tEXt
/tEXt/{str=*} where * = идентификация ключевое слово для текста VT_LPSTR
/Gama Gama Chunk VT_UNKNOWN — средство чтения и записи запросов gAMA
/gAMA/ImageGamma VT_UI4
/iTXt или /[*]iTXt, где * = от 0 до N Блок IText VT_UNKNOWN — средство чтения и записи запросов iTXt
/iTXt/Keyword VT_LPSTR
/iTXt/CompressionFlag VT_UI1
/iTXt/LanguageTag LPSTR
/iTXt/TranslatedKeyword LPWSTR
/iTXt/TextEntry LPWSTR
/cHRM Блок управления персоналом VT_UNKNOWN — средство чтения и записи запросов cHRM
/cHRM/WhitePointX VT_UI4
/cHRM/WhitePointY VT_UI4
/cHRM/RedX VT_UI4
/cHRM/RedY VT_UI4
/cHRM/GreenX VT_UI4
/cHRM/GreenY VT_UI4
/cHRM/BlueX VT_UI4
/cHRM/BlueY VT_UI4
/Srgb sRGB Чак VT_UNKNOWN — средство чтения и записи запросов sRGB
/sRGB/RenderingIntent VT_UI1
/Время Блок времени VT_UNKNOWN — средство чтения и записи запросов tIME
/tIME/Year VT_UI2
/tIME/Month VT_UI1
/tIME/Day VT_UI1
/tIME/Hour VT_UI1
/tIME/Minute VT_UI1
/tIME/Second VT_UI1
/bKGD Блок фона VT_UNKNOWN — средство чтения и записи запросов bKGB
/bKGD/BackgroundColor VT_UI1, VT_UI2 или VT_UI2 | VT_VECTOR
/Исторических Фрагмент hIST VT_UNKNOWN — средство чтения и записи запросов hIST
/hIST/Частоты VT_VECTOR | VT_UI2
/iCCP Фрагмент iCCP VT_UNKNOWN — средство чтения и записи запросов iCCP
/iCCP/ProfileName VT_LPSTR
/iCCP/ProfileData VT_VECTOR | VT_UI1

 

Метаданные TIFF

Формат изображения TIFF поддерживает метаданные на уровне кадра.

Примечание

Полный список метаданных TIFF, а также более подробные сведения см. в стандарте TIFF.

 

Метаданные кадра

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

Путь Имя Тип
/Ifd 0 IFD VT_UNKNOWN — средство чтения или записи запросов
/ifd/{ushort=*}, где * = от 0 до 65535 Запись IFD по идентификатору Переменная
/ifd/thumb или /ifd/{ushort=330} Эскиз IFD VT_UNKNOWN — средство чтения или записи запросов
/ifd/xmp или /ifd/{ushort=700} XMP VT_UNKNOWN — средство чтения или записи запросов
/ifd/exif или /ifd/{ushort=34665} EXIF VT_UNKNOWN — средство чтения или записи запросов
/ifd/gps или /ifd/{ushort=34853} GPS VT_UNKNOWN — средство чтения или записи запросов
/ifd/exif/interop или /ifd/exif/{ushort=40965} Interop VT_UNKNOWN — средство чтения или записи запросов
/ifd/iptc или /ifd/{ushort=33723} IPTC VT_UNKNOWN — средство чтения или записи запросов
/ifd/iptc/{str=*}, где * = IPTC ключевое слово Запись IPTC Переменная
/ifd/irb/8bimiptc/iptc IPTC VT_UNKNOWN — средство чтения или записи запросов
/ifd/irb/8bimiptc/iptc/{str=*} Запись IPTC Переменная

 

Метаданные JPEG

Формат изображения JPEG поддерживает метаданные на уровне кадра.

Примечание

Полный список метаданных JPEG и более подробные сведения см. в стандарте EXIF JPEG.

 

Метаданные кадра

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

Путь Имя Тип
/app0 App0 VT_UNKNOWN — средство чтения и записи запросов App0
/app0/{ushort=0} Версия VT_UI2
/app0/{ushort=1} единиц(ы) VT_UI1
/app0/{ushort=2} DpiX VT_UI2
/app0/{ushort=3} DpiY VT_UI2
/app0/{ushort=4} Xthumbnail VT_UI1
/app0/{ushort=5} Ythumbnail VT_UI1
/app0/{ushort=6} ThumbnailData VT_BLOB
/app1 Приложение 1 VT_UNKNOWN — средство чтения и записи запросов App1
/app1/ifd или /app1/{ushort=0} 0 IFD VT_UNKNOWN — средство чтения и записи запросов IFD
/app1/ifd/exif или /app1/ifd/{ushort=34665} EXIF IFD VT_UNKNOWN — средство чтения и записи запросов EXIF
/app1/thumb или /app1/{ushort=1} Эскиз IFD VT_UNKNOWN — модуль чтения и записи запросов SubIFD
/app13 App13 VT_UNKNOWN — средство чтения и записи запросов App13
/app13/irb или /app13/{ushort=0} IRB VT_UNKNOWN — читатель/модуль записи запросов IRB
/app13/irb/{ulonglong=*}, где * = идентификатор IRB (см. спецификацию IRB) Запись IRB VT_UNKNOWN — неизвестный модуль чтения или записи запросов
/app13/irb/{ulonglong=*}/{} Содержимое записи IRB VT_BLOB
/app13/irb/8bimiptc или /app13/irb/{ulonglong=61857348781060} 8BIMIPTC VT_UNKNOWN — модуль чтения и записи запросов 8BIMIPTC
/app13/irb/8bimiptc/iptc IPTC VT_UNKNOWN — модуль чтения и записи запросов IPTC
/app13/irb/8bimiptc/iptc/{str=*} Запись IPTC Переменная
/app13/irb/8bimResInfo или /app13/irb/{ulonglong=61857348781037} Сведения о разрешении 8BIM VT_UNKNOWN — средство чтения и записи запросов
/app13/irb/8bimResInfo/PString VT_LPSTR
/app13/irb/8bimResInfo/HResolution VT_UI4
/app13/irb/8bimResInfo/VResolution VT_UI4
/app13/irb/8bimResInfo/WidthUnit VT_UI2
/app13/irb/8bimResInfo/HeightUnit VT_UI2
/app13/irb/8bimResInfo/HResolutionUnit VT_UI2
/app13/irb/8bimResInfo/VResolutionUnit VT_UI2
/Com Комментарий JPEG VT_UNKNOWN — читатель или модуль записи запроса комментариев
/com/TextEntry LPSTR
/Яркости Luminance VT_UNKNOWN — модуль чтения и записи запросов Luminance
/luminance/TableEntry VT_UI1 | VT_VECTOR
/Цветности Chrominance VT_UNKNOWN — средство чтения и записи запросов Chrominance
/chrominance/TableEntry VT_UI1 | VT_VECTOR
/Xmp XMP VT_UNKNOWN — средство чтения и записи запросов XMP

 

Независимые метаданные формата файла

В следующих разделах содержатся сведения о форматах метаданных, поддерживаемых несколькими форматами изображений. Каждая таблица содержит следующие столбцы:

  • Относительный путь — путь запроса, используемый для получения элемента метаданных относительно блока метаданных.
  • Name — имя элемента метаданных.
  • Type — тип элемента метаданных, полученного из пути запроса. Метаданные, полученные WIC , возвращаются в виде PROPVARIANT, который сообщает тип данных с помощью перечисления VARTYPE.

Примечание

Таблицы здесь предоставляют только относительный путь для доступа к элементу метаданных в определенном формате метаданных. Чтобы получить полный запрос метаданных, добавьте этот относительный путь к запросу блока метаданных для конкретного формата метаданных.

 

Например, чтобы получить доступ к флагу Orientation в JPEG-файле, используйте следующее выражение:

  • /app1/ifd/{ushort=274}

В TIFF-файле используйте следующее выражение:

  • /ifd/{ushort=274}

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

Метаданные IFD

IFD или image File Directory — это структура данных, определенная в стандарте TIFF, которая может содержать метаданные изображения. Он идентифицирует каждый элемент метаданных с помощью тега типа ushort. JPEG, TIFF и JPEG-XR поддерживают метаданные IFD. Сторонние форматы, как и некоторые необработанные форматы камеры, также могут поддерживать метаданные IFD.

В таблице ниже приведены относительные пути запросов метаданных для доступа к некоторым часто используемым элементам метаданных IFD. Структура данных IFD обеспечивает расширяемость сторонних производителей, и эта таблица не является исчерпывающим списком. Дополнительные сведения см. в разделе Стандарт TIFF.

Примечание

Хотя JPEG и другие форматы поддерживают структуру данных IFD, они могут не использовать все элементы метаданных, которые он определяет. Дополнительные сведения см. в стандарте каждого формата.

 

Примечание

Некоторые элементы метаданных в таблице здесь требуют дополнительной интерпретации или информации для правильного использования, см. в стандарте TIFF. Например, элемент метаданных PhotometricInterpretation возвращает PROPVARIANT типа VT_UI2. Однако в соответствии со стандартом TIFF он интерпретируется как перечисление. Дополнительные сведения см. в разделе Стандарт TIFF.

 

Относительный путь Имя Тип
/{ushort=256} ImageWidth VT_UI2 или VT_UI4
/{ushort=257} ImageLength VT_UI2 или VT_UI4
/{ushort=258} BitsPerSample VT_UI2
/{ushort=259} Сжатие VT_UI2
/{ushort=262} PhotometricInterpretation VT_UI2
/{ushort=274} Ориентация VT_UI2
/{ushort=277} SamplesPerPixel VT_UI2
/{ushort=284} PlanarConfiguration VT_UI2
/{ushort=530} YCbCrSubSampling VT_VECTOR | VT_UI2
/{ushort=531} YCbCrPositioning VT_UI2
/{ushort=282} XResolution VT_UI8
/{ushort=283} YResolution VT_UI8
/{ushort=296} ResolutionUnit VT_UI2
/{ushort=306} Дата и время VT_LPSTR
/{ushort=270} ImageDescription VT_LPSTR
/{ushort=271} Убедитесь, VT_LPSTR
/{ushort=272} Моделирование VT_LPSTR
/{ushort=305} Программное обеспечение VT_LPSTR
/{ushort=315} Художник VT_LPSTR
/{ushort=33432} Авторские права VT_LPSTR
/{ushort=338} Дополнительные примеры VT_UI2
/{ushort=254} NewSubfileType VT_UI4
/{ushort=278} RowsPerStrip VT_UI2 или VT_UI4
/{ushort=279} StripByteCounts VT_VECTOR | VT_UI2 или VT_VECTOR | VT_UI4
/{ushort=273} StripOffsets VT_VECTOR | VT_UI2 или VT_VECTOR | VT_UI4

 

Метаданные EXIF

Метаданные EXIF определяются как часть спецификации EXIF JPEG. Метаданные EXIF основаны на структуре данных IFD, определенной в стандарте TIFF, и предоставляют дополнительные атрибуты, такие как сведения об устройствах и фотографические атрибуты, используемые для создания изображения. Он идентифицирует каждый элемент метаданных с помощью тега типа ushort. JPEG, TIFF и JPEG-XR поддерживают метаданные EXIF. Сторонние форматы, например некоторые необработанные форматы камеры, также могут поддерживать метаданные EXIF.

В следующей таблице приведены относительные пути запросов метаданных для доступа к некоторым часто используемым элементам метаданных EXIF. Структура данных EXIF обеспечивает расширяемость сторонних производителей, и эта таблица не является исчерпывающим списком; Дополнительные сведения см. в стандарте EXIF.

Примечание

Многие элементы метаданных EXIF определяются в стандарте EXIF как тип "RATIONAL" или "SRATIONAL". "RATIONAL" состоит из числителя и знаменателя, оба из которых являются 32-разрядными целыми числами без знака. Числитель содержится в высоких 32 битах, а знаменатель — в низких 32 битах. В WIC они возвращаются как PROPVARIANT с типом VT_UI8 или VT_I8 соответственно; фактическое значение сохраняется как ULARGE_INTEGER или LARGE_INTEGER соответственно. Чтобы получить доступ к числителю и знаменателю, прочтите элементы HighPart и LowPart ULARGE_INTEGER или LARGE_INTEGER значения.

 

Примечание

Некоторые элементы метаданных в приведенной ниже таблице требуют дополнительной интерпретации или информации для правильного использования. Например, элемент метаданных ColorSpace возвращает PROPVARIANT типа VT_UI2. Однако в соответствии со стандартом EXIF он интерпретируется как перечисление. Дополнительные сведения см. в стандарте EXIF.

 

Относительный путь Имя Тип
/{ushort=36864} ExifVersion VT_BLOB
/{ushort=40960} FlashpixVersion VT_BLOB
/{ushort=40961} ColorSpace VT_UI2
/{ushort=40962} PixelXDimension VT_UI2 или VT_UI4
/{ushort=40963} PixelYDimension VT_UI2 или VT_UI4
/{ushort=37500} MakerNote VT_BLOB
/{ushort=37510} UserComment VT_LPWSTR
/{ushort=36867} DateTimeOriginal VT_LPSTR
/{ushort=36868} DateTimeDigitized VT_LPSTR
/{ushort=42016} ImageUniqueID VT_LPSTR
/{ushort=42032} CameraOwnerName VT_LPSTR
/{ushort=42033} BodySerialNumber VT_LPSTR
/{ushort=42034} LensSpecification VT_VECTOR | VT_UI8
/{ushort=42035} LensMake VT_LPSTR
/{ushort=42036} LensModel VT_LPSTR
/{ushort=42037} LensSerialNumber VT_LPSTR
/{ushort=33434} ExposureTime VT_UI8
/{ushort=33437} FNumber VT_UI8
/{ushort=34850} ExposureProgram VT_UI2
/{ushort=34852} Спектральная чувствительность VT_LPSTR
/{ushort=34855} Фотографическая чувствительность VT_VECTOR | VT_UI2
/{ushort=34856} OECF VT_BLOB
/{ushort=34864} SensitivityType VT_UI2
/{ushort=34865} StandardOutputSensitivity VT_UI4
/{ushort=34866} RecommendedExposureIndex VT_UI4
/{ushort=34867} ISOSpeed VT_UI4
/{ushort=34868} ISOSpeedLatitudeyyy VT_UI4
/{ushort=34869} ISOSpeedLatitudezzz VT_UI4
/{ushort=37377} ShutterSpeedValue VT_I8
/{ushort=37378} ApertureValue VT_UI8
/{ushort=37379} Значение яркости VT_I8
/{ushort=37380} ExposureBiasValue VT_I8
/{ushort=37381} MaxApertureValue VT_UI8
/{ushort=37382} SubjectDistance VT_UI8
/{ushort=37383} MeteringMode VT_UI2
/{ushort=37384} LightSource VT_UI2
/{ushort=37385} Мигание VT_UI2
/{ushort=37386} FocalLength VT_UI8
/{ushort=37396} SubjectArea VT_VECTOR | VT_UI2
/{ushort=41483} FlashИмея VT_UI8
/{ushort=41484} SpatialFrequencyResponse VT_BLOB
/{ushort=41486} FocalPlaneXResolution VT_UI8
/{ushort=41487} FocalPlaneYResolution VT_UI8
/{ushort=41488} FocalPlaneResolutionUnit VT_UI2
/{ushort=41492} SubjectLocation VT_VECTOR | VT_UI2
/{ushort=41493} ExposureIndex VT_UI8
/{ushort=41495} SensingMethod VT_UI2
/{ushort=41728} FileSource VT_BLOB
/{ushort=41729} Тип сцены VT_BLOB
/{ushort=41730} CFAPattern VT_BLOB
/{ushort=41985} CustomRendered VT_UI2
/{ushort=41986} ExposureMode VT_UI2
/{ushort=41987} WhiteBalance VT_UI2
/{ushort=41988} DigitalZoomRatio VT_UI8
/{ushort=41989} FocalLengthIn35mmFilm VT_UI2
/{ushort=41990} SceneCaptureType VT_UI2
/{ushort=41991} GainControl VT_UI8
/{ushort=41992} Контраст VT_UI2
/{ushort=41993} Насыщенность VT_UI2
/{ushort=41994} Резкость VT_UI2
/{ushort=41995} DeviceSettingDescription VT_BLOB
/{ushort=41996} SubjectDistanceRange VT_UI2

 

Метаданные GPS

Метаданные GPS содержат сведения о географическом расположении и определяются как часть спецификации EXIF JPEG. Он идентифицирует каждый элемент метаданных с помощью тега типа ushort. JPEG, TIFF и JPEG-XR поддерживают метаданные GPS; сторонние форматы, как и некоторые необработанные форматы камеры, также могут поддерживать метаданные GPS.

В следующей таблице приведены относительные пути запросов метаданных для доступа к некоторым часто используемым элементам метаданных GPS. Эта таблица не является исчерпывающим списком; Дополнительные сведения см. в стандарте EXIF.

Примечание

Многие элементы метаданных GPS определены в стандарте EXIF как тип "RATIONAL". "RATIONAL" состоит из числителя и знаменателя, оба из которых являются 32-разрядными целыми числами без знака. Числитель содержится в старших 32 битах, а знаменатель — в низких 32 бита. В WIC они возвращаются как PROPVARIANT с типом VT_UI8. Фактическое значение сохраняется как ULARGE_INTEGER. Чтобы получить доступ к числительу и знаменателю, считайте элементы HighPart и LowPart ULARGE_INTEGER значения.

 

Примечание

Некоторые элементы метаданных в приведенной здесь таблице требуют дополнительной интерпретации или информации для правильного использования. Например, элемент метаданных GPSLatitudeRef возвращает PROPVARIANT типа VT_LPSTR. В соответствии со стандартом EXIF эта строка имеет значение "N" или "S", представляющее северную или южную широту. Дополнительные сведения см. в стандарте EXIF.

 

Относительный путь Имя Тип
{ushort=0} GPSVersionID VT_VECTOR | VT_UI1
{ushort=1} GPSLatitudeRef VT_LPSTR
{ushort=2} GPSLatitude VT_VECTOR | VT_UI8
{ushort=3} GPSLongitudeRef VT_LPSTR
{ushort=4} GPSLongitude {ushort=4} GPSLongitude VT_VECTOR | VT_UI8
{ushort=5} GPSAltitudeRef VT_UI1
{ushort=6} GPSAltitude VT_UI8
{ushort=7} GPSTimeStamp VT_VECTOR | VT_UI8
{ushort=8} GPSSatellites VT_LPSTR
{ushort=9} GPSStatus VT_LPSTR
{ushort=10} GPSMeasureMode VT_LPSTR
{ushort=11} GPSDOP VT_UI8
{ushort=12} GPSSpeedRef VT_LPSTR
{ushort=13} GPSSpeed VT_UI8
{ushort=14} GPSTrackRef VT_LPSTR
{ushort=15} GPSTrack VT_UI8

 

Метаданные XMP

XMP — это расширяемый стандарт метаданных на основе XML. Элементы метаданных могут быть иерархическими и содержать сложные структуры данных. JPEG, TIFF и JPEG-XR поддерживают метаданные XMP. Сторонние форматы, как и некоторые необработанные форматы камеры, также могут поддерживать метаданные XMP.

Стандарт XMP можно получить по следующим сведениям: https://www.adobe.com/devnet/xmp.html.

XMP и позволяет сторонним сущностям публиковать собственные схемы или пространства имен, которые позволяют им определять новые элементы метаданных без необходимости изменять стандарт XMP. Схема XMP однозначно идентифицируется URL-адресом, но WIC предоставляет набор понятных идентификаторов для хорошо известных схем.

Элементы метаданных XMP идентифицируются строковым именем, а также идентификатором схемы. Рекомендуется, чтобы в каждом запросе метаданных XMP указывались как схема, так и имя. Если идентификатор схемы отсутствует, JPEG попытается сопоставить имя метаданных во всех пространствах имен, присутствующих в пакете метаданных XMP.

Например, чтобы получить свойство Rating в соответствии со схемой XMP в изображении JPEG, используйте следующий запрос:

  • /xmp/{wstr=https://ns.adobe.com/xap/1.0/}:Rating

Первая часть, "/xmp", извлекает средство чтения или записи метаданных XMP для изображения. "https://ns.adobe.com/xap/1.0/" — это URL-адрес схемы XMP, как определено в стандарте XMP. URL-адрес заключен в выражение данных, позволяющее использовать символы, такие как косая черта (/). Наконец, "Rating" — это фактическое имя элемента метаданных, определенное схемой XMP, и оно отделяется от идентификатора схемы двоеточием (:).

В этом примере WIC предоставляет понятный идентификатор для схемы XMP, которую можно использовать вместо полного URL-адреса. Таким образом, предыдущий запрос можно переписать следующим образом:

  • /xmp/xmp:Rating

WIC предоставляет понятные префиксы схемы для следующих часто используемых схем:

Префикс схемы URL-адрес схемы Ссылка на стандарт
Rdf https://www.w3.org/1999/02/22-rdf-syntax-ns# https://www.w3.org/TR/REC-rdf-syntax/
dc https://purl.org/dc/elements/1.1/ https://www.adobe.com/devnet/xmp.html
Xmp https://ns.adobe.com/xap/1.0/ https://www.adobe.com/devnet/xmp.html
xmpidq https://ns.adobe.com/xmp/Identifier/qual/1.0/ https://www.adobe.com/devnet/xmp.html
xmpRights https://ns.adobe.com/xap/1.0/rights/ https://www.adobe.com/devnet/xmp.html
xmpMM https://ns.adobe.com/xap/1.0/mm/ https://www.adobe.com/devnet/xmp.html
xmpBJ https://ns.adobe.com/xap/1.0/bj/ https://www.adobe.com/devnet/xmp.html
xmpTPg https://ns.adobe.com/xap/1.0/t/pg/ https://www.adobe.com/devnet/xmp.html
pdf https://ns.adobe.com/pdf/1.3/ https://www.adobe.com/devnet/xmp.html
Photoshop https://ns.adobe.com/photoshop/1.0/ https://www.adobe.com/devnet/xmp.html
tiff https://ns.adobe.com/tiff/1.0/ https://www.adobe.com/devnet/xmp.html
Exif https://ns.adobe.com/exif/1.0/ https://www.adobe.com/devnet/xmp.html
stDim https://ns.adobe.com/xap/1.0/sType/Dimensions# https://www.adobe.com/devnet/xmp.html
xapGImg https://ns.adobe.com/xap/1.0/g/img/ https://www.adobe.com/devnet/xmp.html
stEvt https://ns.adobe.com/xap/1.0/sType/ResourceEvent# https://www.adobe.com/devnet/xmp.html
stRef https://ns.adobe.com/xap/1.0/sType/ResourceRef# https://www.adobe.com/devnet/xmp.html
stVer https://ns.adobe.com/xap/1.0/sType/Version# https://www.adobe.com/devnet/xmp.html
stJob https://ns.adobe.com/xap/1.0/sType/Job# https://www.adobe.com/devnet/xmp.html
Aux https://ns.adobe.com/exif/1.0/aux/ https://www.adobe.com/devnet/xmp.html
Crs https://ns.adobe.com/camera-raw-settings/1.0/ https://www.adobe.com/devnet/xmp.html
xmpDM https://ns.adobe.com/xmp/1.0/DynamicMedia/ https://www.adobe.com/devnet/xmp.html
Iptc4xmpCore https://iptc.org/std/Iptc4xmpCore/1.0/xmlns/ https://www.iptc.org/cms/site/index.html?channel=CH0099
MicrosoftPhoto https://ns.microsoft.com/photo/1.0/ Общие сведения о Люди расстановки тегов
MP https://ns.microsoft.com/photo/1.2/ Общие сведения о Люди расстановки тегов
ИММС https://ns.microsoft.com/photo/1.2/t/RegionInfo\# Общие сведения о Люди расстановки тегов
MPReg https://ns.microsoft.com/photo/1.2/t/Region\# Общие сведения о Люди расстановки тегов

 

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

Основные понятия

Общие сведения о компоненте обработки образов Windows

Общие сведения о метаданных WIC

Общие сведения о языке запросов метаданных

Общие сведения о расширяемости метаданных

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