Share via


Native Imageformat-Metadatenabfragen

Dieses Thema bietet eine Übersicht über die Metadatenabfragesprachenabfragen zum Lesen und Schreiben von Metadaten, die von GIF-, PNG-, TIFF- und JPEG-Bildern unterstützt werden. Sie enthält Metadaten, die für jedes Bildformat spezifisch sind, sowie Metadaten, die von mehreren Formaten unterstützt werden.

Dieses Thema enthält folgende Abschnitte:

Voraussetzungen

Um dieses Thema zu verstehen, sollten Sie mit dem WiC-Metadatensystem (Windows Imaging Component) vertraut sein, wie in der WIC-Metadatenübersicht beschrieben. Sie sollten auch mit der Abfragesprache vertraut sein, die zum Lesen und Schreiben von Metadaten verwendet wird, wie unter Übersicht über die Metadatenabfragesprache beschrieben.

Fotometadatenrichtlinienausdruck

Zusätzlich zur Unterstützung der Metadatenabfragesprache akzeptiert WIC auch kanonische Eigenschaftennamen aus dem Windows-Eigenschaftensystem. WIC unterstützt eine Teilmenge des Windows-Eigenschaftennamespaces, die für Bildformate relevant ist, wie unter Fotometadatenrichtlinien beschrieben. Eine Windows-Eigenschaft, die als WIC-Metadatenabfrage verwendet wird, wird als Fotometadatenrichtlinienausdruck bezeichnet.

Der Richtlinienausdruck der Fotometadaten für das EXIF-Ausrichtungsflag lautet beispielsweise:

Im Allgemeinen werden Richtlinienausdrücke gegenüber nativen Metadatenabfragen für allgemeine Bildmetadatenelemente empfohlen, die vom Windows-Eigenschaftennamespace abgedeckt werden. Die Metadatenabfragesprache eignet sich am besten für Fälle, in denen low-level-Zugriff auf bestimmte Bildmetadatenelemente erforderlich ist, oder für benutzerdefinierte oder erweiterte Metadatenelemente, die vom Windows-Eigenschaftensystem nicht unterstützt werden. Weitere Informationen finden Sie unter Fotometadatenrichtlinienausdrücke.

Dateiformatspezifische Metadaten

Die folgenden Abschnitte enthalten Tabellen, in denen die verfügbaren Metadatenabfragen für jeden Imagedateityp aufgeführt sind. Jede Tabelle enthält die folgenden Spalten:

  • Pfad : Der Abfragepfad, der zum Abrufen des Metadatenelements verwendet wird.
  • Name : Der Name des Metadatenelements.
  • Typ : Der Typ des Metadatenelements, das aus dem Abfragepfad abgerufen wird. Von WIC abgerufene Metadaten werden in Form von PROPVARIANT zurückgegeben, das den Datentyp mithilfe der VARTYPE-Enumeration.on meldet.

Die Abfragepfade werden von der WIC-Metadaten-API verwendet, um auf die eingebetteten Metadaten eines Bilds zuzugreifen. Der folgende Beispielcode veranschaulicht die Verwendung eines IWICMetadataQueryReader zum Abfragen des IFD-Metadatenblocks von 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-Metadaten

Das GIF-Bildformat (Graphics Interchange Format) unterstützt sowohl globale Metadaten als auch Metadaten auf Frameebene. In den folgenden beiden Abschnitten werden die Metadatenabfragepfade bereitgestellt, die für die globalen Metadaten und die Metadaten auf Frameebene von GIF verfügbar sind.

Hinweis

Eine vollständige Liste der GIF-Metadaten sowie ausführlichere Informationen finden Sie im GIF-Standard auf der W3C-Website.

 

Globale Metadaten

Die folgende Tabelle enthält die verfügbaren Metadatenabfragepfade, die für den Zugriff auf globale GIF-Metadaten verwendet werden können.

Pfad Name type
/commentext oder /[*]commentext where * = 0 to N Kommentarerweiterung VT_UNKNOWN : Ein Abfrageleser/-writer
/commentext/TextEntry VT_LPSTR
/logscrdesc Beschreibung des logischen Bildschirms VT_UNKNOWN : Ein Abfrageleser/-writer
/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 oder /[*]appext where * = 0 to N Anwendungserweiterung VT_UNKNOWN : Ein Abfrageleser/-writer
/appext/Application VT_UI1 | VT_VECTOR
/appext/Data VT_UI1 | VT_VECTOR

 

Framemetadaten

Die folgende Tabelle enthält die verfügbaren Metadatenabfragepfade, die für den Zugriff auf GIF-Metadaten auf Frameebene verwendet werden können.

Pfad Name type
/grctlext Grafiksteuerelementerweiterung VT_UNKNOWN – Abfrageleser/-writer
/grctlext/Disposal VT_UI1
/grctlext/UserInputFlag VT_BOOL
/grctlext/TransparencyFlag VT_BOOL
/grctlext/Delay VT_UI2
/grctlext/TransparentColorIndex VT_UI1
/imgdesc Bilddeskriptor VT_UNKNOWN – Abfrageleser/-writer
/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-Metadaten

Das PNG-Bildformat (Portable Network Graphics) unterstützt Metadaten auf Frameebene.

Hinweis

Eine vollständige Liste der PNG-Metadaten sowie ausführlichere Informationen finden Sie im PNG-Standard auf der W3C-Website.

 

Framemetadaten

Die folgende Tabelle enthält die verfügbaren Metadatenabfragepfade, die für den Zugriff auf PNG-Metadaten auf Frameebene verwendet werden können.

Pfad Name type
/tEXt oder /[*]tEXt, wobei * = 0 bis N Textblock VT_UNKNOWN – tEXt-Abfrageleser/-writer
/tEXt/{str=*} where * = identifizieren Schlüsselwort (keyword) für Text VT_LPSTR
/Gama Gama-Block VT_UNKNOWN : gAMA-Abfrageleser/-writer
/gAMA/ImageGamma VT_UI4
/iTXt oder /[*]iTXt, wobei * = 0 bis N IText-Block VT_UNKNOWN – iTXt-Abfrageleser/-writer
/iTXt/Schlüsselwort VT_LPSTR
/iTXt/CompressionFlag VT_UI1
/iTXt/LanguageTag LPSTR
/iTXt/TranslatedKeyword LPWSTR
/iTXt/TextEntry LPWSTR
/cHRM HRM-Block VT_UNKNOWN : cHRM-Abfrageleser/-writer
/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 Chuck VT_UNKNOWN – sRGB-Abfrageleser/-writer
/sRGB/RenderingIntent VT_UI1
/Zeit Zeitblock VT_UNKNOWN – tIME-Abfrageleser/-writer
/tIME/Jahr VT_UI2
/tIME/Monat VT_UI1
/tIME/Day VT_UI1
/tIME/Stunde VT_UI1
/tIME/Minute VT_UI1
/tIME/Sekunde VT_UI1
/bKGD Hintergrundblock VT_UNKNOWN – bKGB-Abfrageleser/-writer
/bKGD/BackgroundColor VT_UI1, VT_UI2 oder VT_UI2 | VT_VECTOR
/Hist hIST-Block VT_UNKNOWN – hIST-Abfrageleser/-writer
/hIST/Frequenzen VT_VECTOR | VT_UI2
/Iccp iCCP-Block VT_UNKNOWN : iCCP-Abfrageleser/-writer
/iCCP/ProfileName VT_LPSTR
/iCCP/ProfileData VT_VECTOR | VT_UI1

 

TIFF-Metadaten

Das TIFF-Bildformat (TIFF) unterstützt Metadaten auf Frameebene.

Hinweis

Eine vollständige Liste der TIFF-Metadaten sowie ausführlichere Informationen finden Sie im TIFF-Standard.

 

Framemetadaten

Die folgende Tabelle enthält die verfügbaren Metadatenabfragepfade, die für den Zugriff auf TIFF-Metadaten auf Frameebene verwendet werden können.

Pfad Name type
/Ifd 0 IFD VT_UNKNOWN : Ein Abfrageleser/-writer
/ifd/{ushort=*} wobei * = 0 bis 65535 IFD-Eintrag nach ID Variable
/ifd/thumb oder /ifd/{ushort=330} Miniaturansicht IFD VT_UNKNOWN : Ein Abfrageleser/-writer
/ifd/xmp oder /ifd/{ushort=700} XMP VT_UNKNOWN : Ein Abfrageleser/-writer
/ifd/exif oder /ifd/{ushort=34665} EXIF VT_UNKNOWN : Ein Abfrageleser/-writer
/ifd/gps oder /ifd/{ushort=34853} GPS VT_UNKNOWN : Ein Abfrageleser/-writer
/ifd/exif/interop oder /ifd/exif/{ushort=40965} Interop VT_UNKNOWN : Ein Abfrageleser/-writer
/ifd/iptc oder /ifd/{ushort=33723} IPTC VT_UNKNOWN : Ein Abfrageleser/-writer
/ifd/iptc/{str=*} where * = IPTC Schlüsselwort (keyword) IPTC-Eintrag Variable
/ifd/irb/8bimiptc/iptc IPTC VT_UNKNOWN : Ein Abfrageleser/-writer
/ifd/irb/8bimiptc/iptc/{str=*} IPTC-Eintrag Variable

 

JPEG-Metadaten

Das JPEG-Bildformat unterstützt Metadaten auf Frameebene.

Hinweis

Eine vollständige Liste der JPEG-Metadaten sowie ausführlichere Informationen finden Sie im EXIF JPEG-Standard.

 

Framemetadaten

Die folgende Tabelle enthält die verfügbaren Metadatenabfragepfade, die für den Zugriff auf JPEG-Metadaten auf Frameebene verwendet werden können.

Pfad Name type
/app0 App0 VT_UNKNOWN – App0-Abfrageleser/-writer
/app0/{ushort=0} Version VT_UI2
/app0/{ushort=1} Einheiten 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 App1 VT_UNKNOWN – App1-Abfrageleser/-writer
/app1/ifd oder /app1/{ushort=0} 0 IFD VT_UNKNOWN – IFD-Abfrageleser/-writer
/app1/ifd/exif oder /app1/ifd/{ushort=34665} EXIF IFD VT_UNKNOWN – EXIF-Abfrageleser/-writer
/app1/thumb oder /app1/{ushort=1} Miniaturansicht IFD VT_UNKNOWN– SubIFD-Abfrageleser/Writer
/app13 App13 VT_UNKNOWN – App13-Abfrageleser/-writer
/app13/irb oder /app13/{ushort=0} IRB1 VT_UNKNOWN – IRB-Abfrageleser/-writer
/app13/irb/{ulonglong=*} where * = IRB Identifier (siehe IRB-Spezifikation) IRB-Eintrag VT_UNKNOWN – Reader/Writer für unbekannte Abfragen
/app13/irb/{ulonglong=*}/{} IRB-Eintragsinhalte VT_BLOB
/app13/irb/8bimiptc oder /app13/irb/{ulonglong=61857348781060} 8BIMIPTC VT_UNKNOWN – 8BIMIPTC-Abfrageleser/-schreiber
/app13/irb/8bimiptc/iptc IPTC VT_UNKNOWN – IPTC-Abfrageleser/-schreiber
/app13/irb/8bimiptc/iptc/{str=*} IPTC-Eintrag Variable
/app13/irb/8bimResInfo oder /app13/irb/{ulonglong=61857348781037} 8BIM-Auflösungsinformationen VT_UNKNOWN – Abfrageleser/-schreiber
/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-Kommentar VT_UNKNOWN – Kommentarabfrageleser/-schreiber
/com/TextEntry LPSTR
/Leuchtdichte Luminance VT_UNKNOWN – Luminance Query Reader/Writer
/luminance/TableEntry VT_UI1 | VT_VECTOR
/Chrominanz Chrominance VT_UNKNOWN – Chrominance Query Reader/Writer
/chrominance/TableEntry VT_UI1 | VT_VECTOR
/Xmp XMP VT_UNKNOWN – XMP-Abfrageleser/-schreiber

 

Dateiformatunabhängige Metadaten

Die folgenden Abschnitte enthalten Informationen zu Metadatenformaten, die von mehreren Bildformaten unterstützt werden. Jede Tabelle enthält die folgenden Spalten:

  • Relativer Pfad : Der Abfragepfad, der zum Abrufen des Metadatenelements relativ zum Metadatenblock verwendet wird.
  • Name : Der Name des Metadatenelements.
  • Typ : Der Typ des Metadatenelements, das aus dem Abfragepfad abgerufen wird. Von WIC abgerufene Metadaten werden in Form von PROPVARIANT zurückgegeben, das den Datentyp mithilfe der VARTYPE-Enumeration meldet.

Hinweis

Die Hier aufgeführten Tabellen geben nur den relativen Pfad für den Zugriff auf ein Metadatenelement innerhalb des jeweiligen Metadatenformats an. Um die vollqualifizierte Metadatenabfrage abzurufen, fügen Sie diesen relativen Pfad an die Metadatenblockabfrage für das jeweilige Metadatenformat an.

 

Verwenden Sie beispielsweise den folgenden Ausdruck, um auf das Flag "Ausrichtung" in einer JPEG-Datei zuzugreifen:

  • /app1/ifd/{ushort=274}

Verwenden Sie in einer TIFF-Datei den folgenden Ausdruck:

  • /ifd/{ushort=274}

Beachten Sie in diesem Beispiel, dass verschiedene Bildformate einen bestimmten Metadatenblock unterschiedlich speichern können, sodass die vollqualifizierte Metadatenabfrage für den Zugriff auf ein bestimmtes Metadatenelement bildformatspezifisch sein kann. In der Tabelle der einzelnen Formate finden Sie die entsprechende Metadatenabfrage für den Zugriff auf einen bestimmten Metadatenblock.

IFD-Metadaten

Ein IFD oder Image File Directory ist eine im TIFF-Standard definierte Datenstruktur, die Bildmetadaten enthalten kann. Sie identifiziert jedes Metadatenelement mithilfe eines Tags vom Typ ushort. JPEG, TIFF und JPEG-XR unterstützen IFD-Metadaten. Formate von Drittanbietern, z. B. einige Raw-Formate der Kamera, unterstützen möglicherweise auch IFD-Metadaten.

Die tabelle enthält relative Metadatenabfragepfade für den Zugriff auf einige häufig verwendete IFD-Metadatenelemente. Die IFD-Datenstruktur ermöglicht die Erweiterbarkeit von Drittanbietern, und diese Tabelle ist keine vollständige Liste. Weitere Informationen finden Sie im TIFF-Standard.

Hinweis

Obwohl JPEG und andere Formate die IFD-Datenstruktur unterstützen, verwenden sie möglicherweise nicht alle von ihr definierten Metadatenelemente. Weitere Informationen finden Sie im Standard der einzelnen Formate.

 

Hinweis

Für bestimmte Metadatenelemente in der Tabelle hier sind zusätzliche Interpretationen oder Informationen erforderlich, damit sie ordnungsgemäß verwendet werden können, siehe TIFF-Standard. Das Metadatenelement PhotometricInterpretation gibt beispielsweise eine PROPVARIANT vom Typ VT_UI2 zurück. Gemäß dem TIFF-Standard wird sie jedoch als Enumeration interpretiert. Weitere Informationen finden Sie im TIFF-Standard.

 

Relativer Pfad Name type
/{ushort=256} ImageWidth VT_UI2 oder VT_UI4
/{ushort=257} ImageLength VT_UI2 oder VT_UI4
/{ushort=258} BitsPerSample VT_UI2
/{ushort=259} Komprimierung VT_UI2
/{ushort=262} PhotometricInterpretation VT_UI2
/{ushort=274} Ausrichtung 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} Datetime VT_LPSTR
/{ushort=270} ImageDescription VT_LPSTR
/{ushort=271} Make VT_LPSTR
/{ushort=272} Modell VT_LPSTR
/{ushort=305} Software VT_LPSTR
/{ushort=315} Künstler VT_LPSTR
/{ushort=33432} Copyright VT_LPSTR
/{ushort=338} ExtraSamples VT_UI2
/{ushort=254} NewSubfileType VT_UI4
/{ushort=278} RowsPerStrip VT_UI2 oder VT_UI4
/{ushort=279} StripByteCounts VT_VECTOR | VT_UI2 oder VT_VECTOR | VT_UI4
/{ushort=273} StripOffsets VT_VECTOR | VT_UI2 oder VT_VECTOR | VT_UI4

 

EXIF-Metadaten

EXIF-Metadaten werden als Teil der EXIF JPEG-Spezifikation definiert. EXIF-Metadaten basieren auf der IFD-Datenstruktur, wie sie im TIFF-Standard definiert ist, und stellen zusätzliche Attribute bereit, z. B. Informationen zu den Geräten und fotografischen Attributen, die zum Erstellen des Bilds verwendet werden. Sie identifiziert jedes Metadatenelement mithilfe eines Tags vom Typ ushort. JPEG, TIFF und JPEG-XR unterstützen EXIF-Metadaten. Formate von Drittanbietern, z. B. einige Raw-Formate für Kameras, unterstützen möglicherweise auch EXIF-Metadaten.

Die folgende Tabelle enthält relative Metadatenabfragepfade für den Zugriff auf einige häufig verwendete EXIF-Metadatenelemente. Die EXIF-Datenstruktur ermöglicht die Erweiterbarkeit von Drittanbietern, und diese Tabelle ist keine erschöpfende Liste. Weitere Informationen finden Sie im EXIF-Standard.

Hinweis

Viele EXIF-Metadatenelemente sind im EXIF-Standard als Typ "RATIONAL" oder "SRATIONAL" definiert. Ein "RATIONAL" besteht aus einem Zähler und Nenner, die beide 32-Bit-Ganzzahlen ohne Vorzeichen sind. Der Zähler ist in den hohen 32 Bits und der Nenner in den niedrigen 32 Bits enthalten. In WIC werden diese als PROPVARIANT mit einem Typ von VT_UI8 bzw. VT_I8 zurückgegeben. Der tatsächliche Wert wird als ULARGE_INTEGER bzw. LARGE_INTEGER gespeichert. Um auf den Zähler und Nenner zuzugreifen, lesen Sie die HighPart- und LowPart-Member des ULARGE_INTEGER- oder LARGE_INTEGER-Werts.

 

Hinweis

Bestimmte Metadatenelemente in der folgenden Tabelle erfordern zusätzliche Interpretationen oder Informationen, um sie ordnungsgemäß verwenden zu können. Das ColorSpace-Metadatenelement gibt beispielsweise eine PROPVARIANT vom Typ VT_UI2 zurück. Gemäß dem EXIF-Standard wird sie jedoch als Enumeration interpretiert. Weitere Informationen finden Sie im EXIF-Standard.

 

Relativer Pfad Name type
/{ushort=36864} ExifVersion VT_BLOB
/{ushort=40960} FlashpixVersion VT_BLOB
/{ushort=40961} Farbraum VT_UI2
/{ushort=40962} PixelXDimension VT_UI2 oder VT_UI4
/{ushort=40963} PixelYDimension VT_UI2 oder 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} Spektrale Sensitivität VT_LPSTR
/{ushort=34855} Fotografische Sensitivität 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} BrightnessValue VT_I8
/{ushort=37380} ExposureBiasValue VT_I8
/{ushort=37381} MaxApertureValue VT_UI8
/{ushort=37382} SubjectDistance VT_UI8
/{ushort=37383} MeteringMode VT_UI2
/{ushort=37384} Lichtquelle VT_UI2
/{ushort=37385} Blinken VT_UI2
/{ushort=37386} FocalLength VT_UI8
/{ushort=37396} SubjectArea VT_VECTOR | VT_UI2
/{ushort=41483} FlashEnergy 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} SceneType 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} Vergleichen Sie VT_UI2
/{ushort=41993} Sättigung VT_UI2
/{ushort=41994} Schärfe VT_UI2
/{ushort=41995} DeviceSettingDescription VT_BLOB
/{ushort=41996} SubjectDistanceRange VT_UI2

 

GPS-Metadaten

GPS-Metadaten enthalten Geolocationinformationen und sind als Teil der EXIF JPEG-Spezifikation definiert. Sie identifiziert jedes Metadatenelement mithilfe eines Tags vom Typ ushort. JPEG, TIFF und JPEG-XR unterstützen GPS-Metadaten. Formate von Drittanbietern, wie z. B. einige Raw-Kameraformate, unterstützen möglicherweise auch GPS-Metadaten.

Die folgende Tabelle enthält relative Metadatenabfragepfade für den Zugriff auf einige häufig verwendete GPS-Metadatenelemente. Diese Tabelle ist keine erschöpfende Liste. Weitere Informationen finden Sie im EXIF-Standard.

Hinweis

Viele GPS-Metadatenelemente sind im EXIF-Standard als Typ "RATIONAL" definiert. Ein "RATIONAL" besteht aus einem Zähler und Nenner, die beide 32-Bit-Ganzzahlen ohne Vorzeichen sind. Der Zähler ist in den hohen 32 Bits und der Nenner in den niedrigen 32 Bits enthalten. In WIC werden diese als PROPVARIANT mit einem Typ von VT_UI8 zurückgegeben. Der tatsächliche Wert wird als ULARGE_INTEGER gespeichert. Um auf den Zähler und Nenner zuzugreifen, lesen Sie die Elemente HighPart und LowPart des werts ULARGE_INTEGER.

 

Hinweis

Bestimmte Metadatenelemente in der Tabelle erfordern zusätzliche Interpretationen oder Informationen, um sie ordnungsgemäß zu verwenden. Das Metadatenelement GPSLatitudeRef gibt beispielsweise eine PROPVARIANT vom Typ VT_LPSTR zurück. Gemäß dem EXIF-Standard ist diese Zeichenfolge entweder "N" oder "S", was den nördlichen oder südlichen Breitengrad darstellt. Weitere Informationen finden Sie im EXIF-Standard.

 

Relativer Pfad Name type
{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-Metadaten

XMP ist ein XML-basierter, erweiterbarer Metadatenstandard. Metadatenelemente können hierarchisch sein und komplexe Datenstrukturen enthalten. JPEG, TIFF und JPEG-XR unterstützen XMP-Metadaten. Formate von Drittanbietern, z. B. einige Raw-Formate der Kamera, unterstützen möglicherweise auch XMP-Metadaten.

Der XMP-Standard kann von abgerufen werden: https://www.adobe.com/devnet/xmp.html.

XMP und ermöglicht Drittanbieterentitäten, ihre eigenen Schemas oder Namespaces zu veröffentlichen, sodass sie neue Metadatenelemente definieren können, ohne den XMP-Standard ändern zu müssen. Ein XMP-Schema wird durch eine URL eindeutig identifiziert, aber WIC stellt eine Reihe von benutzerfreundlichen Bezeichnern für bekannte Schemas bereit.

XMP-Metadatenelemente werden durch einen Zeichenfolgennamen und einen Schemabezeichner identifiziert. Als bewährte Methode sollte jede XMP-Metadatenabfrage sowohl das Schema als auch den Namen angeben. Wenn der Schemabezeichner fehlt, versucht JPEG, den Metadatennamen für alle Namespaces im XMP-Metadatenpaket abzugleichen.

Verwenden Sie beispielsweise die folgende Abfrage, um die Rating-Eigenschaft abzurufen, wie sie durch das XMP-Schema in einem JPEG-Bild definiert ist:

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

Im ersten Teil "/xmp" wird der XMP-Metadatenleser/-writer für das Bild abgerufen. "https://ns.adobe.com/xap/1.0/" ist die URL des XMP-Schemas, wie im XMP-Standard definiert. Die URL ist in einen Datenausdruck eingeschlossen, um die Verwendung von Zeichen wie einem Schrägstrich (/) zu ermöglichen. Schließlich ist "Rating" der tatsächliche Name des Metadatenelements, wie er durch das XMP-Schema definiert wird, und er wird vom Schemabezeichner durch einen Doppelpunkt (:)) getrennt.

In diesem Beispiel stellt WIC einen benutzerfreundlichen Bezeichner für das XMP-Schema bereit, der anstelle der vollständigen URL verwendet werden kann. Daher kann die vorherige Abfrage wie folgt umgeschrieben werden:

  • /xmp/xmp:Bewertung

WIC bietet benutzerfreundlichen Schemapräfixe für die folgenden häufig verwendeten Schemas:

Schemapräfix Schema-URL Link zum Standard
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/ Personen Tagging– Übersicht
MP https://ns.microsoft.com/photo/1.2/ Personen Tagging– Übersicht
MPRI https://ns.microsoft.com/photo/1.2/t/RegionInfo\# Personen Tagging– Übersicht
MPReg https://ns.microsoft.com/photo/1.2/t/Region\# Personen Tagging– Übersicht

 

Wenn für ein bestimmtes Schema kein benutzerfreundliches Schemapräfix vorhanden ist, z. B. wenn ein Bild XMP-Metadaten mit einem benutzerdefinierten Drittanbieterschema enthält, sollte die Metadatenabfrage die vollständige Schema-URL verwenden.

Konzept

Übersicht über die Windows-Bildverarbeitungskomponente

Übersicht über WIC-Metadaten

Übersicht über die Metadaten-Abfragesprache

Metadatenerweiterbarkeit – Übersicht

Vorgehensweise: Erneutes Codieren eines JPEG-Bilds mit Metadaten