Query di metadati in formato immagine nativo
Questo argomento offre una panoramica del linguaggio di query dei metadati query per la lettura e la scrittura di metadati supportati dalle immagini GIF, PNG, TIFF e JPEG. Include metadati specifici di ogni formato di immagine, nonché metadati supportati da più formati.
Questo argomento contiene le sezioni seguenti.
- prerequisiti
- dell'espressione dei criteri dei metadati delle foto
- formato di file specifici
- formato file metadati indipendenti
- argomenti correlati
Prerequisiti
Per comprendere questo argomento, è necessario avere familiarità con il sistema di metadati Windows Imaging Component (WIC), come descritto nella panoramica dei metadati di WiC WIC. È anche necessario avere familiarità con il linguaggio di query usato per leggere e scrivere metadati, come descritto in Panoramica del linguaggio di query dei metadati .
Espressione criteri metadati foto
Oltre a supportare il linguaggio di query dei metadati, WIC accetta anche nomi di proprietà canonici dal Windows Property System . WIC supporta un subset dello spazio dei nomi delle proprietà windows pertinente per i formati di immagine, come descritto in Criteri metadati foto. Una proprietà di Windows usata come query di metadati WIC viene definita espressione di criteri di metadati delle foto.
Ad esempio, l'espressione dei criteri di metadati foto per il flag di orientamento EXIF è:
In generale, le espressioni di criteri sono consigliate sulle query di metadati native per gli elementi di metadati di immagine comuni coperti dallo spazio dei nomi delle proprietà di Windows. Il linguaggio di query dei metadati è più adatto per i casi in cui è necessario l'accesso di basso livello a elementi di metadati di immagine specifici o per elementi di metadati personalizzati o avanzati non supportati dal sistema di proprietà windows. Per altre informazioni, vedere espressioni di criteri dei metadati delle foto.
Metadati specifici del formato di file
Le sezioni seguenti contengono tabelle che elencano le query di metadati disponibili per ogni tipo di file di immagine. Ogni tabella include le colonne seguenti:
- Percorso : percorso di query usato per recuperare l'elemento di metadati.
- Nome : nome dell'elemento di metadati.
- Tipo: tipo dell'elemento di metadati recuperato dal percorso della query. I metadati recuperati da WIC vengono restituiti sotto forma di PROPVARIANT, che segnala il tipo di dati usando l'enumerazione VARTYPE.on.
I percorsi di query vengono usati dall'API dei metadati wic per accedere ai metadati incorporati di un'immagine. Il codice di esempio seguente illustra l'uso di un IWICMetadataQueryReader per eseguire una query per il blocco di metadati IFD di un 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.
}
Metadati GIF
Il formato di immagine GIF (Graphics Interchange Format) supporta sia i metadati a livello globale che a livello di fotogramma. Le due sezioni seguenti forniscono i percorsi di query dei metadati disponibili per i metadati a livello di frame e globale di GIF.
Nota
Per un elenco completo dei metadati GIF insieme a informazioni più dettagliate, vedere lo standard GIF sul sito Web W3C.
Metadati globali
La tabella seguente fornisce i percorsi di query dei metadati disponibili che possono essere usati per accedere ai metadati GIF globali.
Sentiero | Nome | Digitare |
---|---|---|
/commentext o /[*]commentext dove * = 0 a N | Estensione commento | VT_UNKNOWN - Lettore/writer di query |
/commentext/TextEntry | VT_LPSTR | |
/logscrdesc | Descrizione della schermata logica | VT_UNKNOWN - Lettore/writer di query |
/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 o /[*]appext dove * = 0 a N | Estensione dell'applicazione | VT_UNKNOWN - Lettore/writer di query |
/appext/Application | VT_UI1 | VT_VECTOR | |
/appext/Data | VT_UI1 | VT_VECTOR |
Metadati dei frame
La tabella seguente fornisce i percorsi di query dei metadati disponibili che possono essere usati per accedere ai metadati GIF a livello di frame.
Sentiero | Nome | Digitare |
---|---|---|
/grctlext | Estensione del controllo grafico | VT_UNKNOWN - Lettore/writer di query |
/grctlext/Disposal | VT_UI1 | |
/grctlext/UserInputFlag | VT_BOOL | |
/grctlext/TransparencyFlag | VT_BOOL | |
/grctlext/Delay | VT_UI2 | |
/grctlext/TransparentColorIndex | VT_UI1 | |
/imgdesc | Descrittore di immagini | VT_UNKNOWN - Lettore/writer di query |
/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 |
Metadati PNG
Il formato di immagine PNG (Portable Network Graphics) supporta i metadati a livello di fotogramma.
Nota
Per un elenco completo dei metadati PNG insieme a informazioni più dettagliate, vedere il standard PNG sul sito Web W3C.
Metadati dei frame
La tabella seguente fornisce i percorsi di query dei metadati disponibili che possono essere usati per accedere ai metadati PNG a livello di frame.
Sentiero | Nome | Digitare |
---|---|---|
/tEXt o /[*]tEXt dove * = 0 a N | Blocco di testo | VT_UNKNOWN - lettore/writer di query tEXt |
/tEXt/{str=*} dove * = parola chiave di identificazione per il testo | VT_LPSTR | |
/Gama | Gama Chunk | VT_UNKNOWN - lettore/writer di query gAMA |
/gAMA/ImageGamma | VT_UI4 | |
/iTXt o /[*]iTXt dove * = 0 a N | Blocco IText | VT_UNKNOWN - Lettore/writer di query iTXt |
/iTXt/Keyword | VT_LPSTR | |
/iTXt/CompressionFlag | VT_UI1 | |
/iTXt/LanguageTag | LPSTR | |
/iTXt/TranslatedKeyword | LPWSTR | |
/iTXt/TextEntry | LPWSTR | |
/cHRM | Blocco HRM | VT_UNKNOWN - lettore/writer di query 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 Chuck | VT_UNKNOWN - lettore/writer di query sRGB |
/sRGB/RenderingIntent | VT_UI1 | |
/Ore | Blocco temporale | VT_UNKNOWN - lettore/writer di query tIME |
/tIME/Year | VT_UI2 | |
/tIME/Mese | VT_UI1 | |
/tIME/Day | VT_UI1 | |
/tIME/Ora | VT_UI1 | |
/tIME/Minuto | VT_UI1 | |
/tIME/Secondo | VT_UI1 | |
/bKGD | Blocco in background | VT_UNKNOWN - Lettore di query bKGB/writer |
/bKGD/BackgroundColor | VT_UI1, VT_UI2 o VT_UI2 | VT_VECTOR | |
/Hist | blocco hIST | VT_UNKNOWN - lettore/writer di query hIST |
/hIST/Frequencyes | VT_VECTOR | VT_UI2 | |
/iCCP | Blocco iCCP | VT_UNKNOWN - Lettore/writer di query iCCP |
/iCCP/ProfileName | VT_LPSTR | |
/iCCP/ProfileData | VT_VECTOR | VT_UI1 |
Metadati TIFF
Il formato di immagine TIFF (Tagged Image File Format) supporta i metadati a livello di fotogramma.
Nota
Per un elenco completo dei metadati TIFF insieme a informazioni più dettagliate, vedere lo standard TIFF.
Metadati dei frame
Nella tabella seguente vengono forniti i percorsi di query dei metadati disponibili che possono essere usati per accedere ai metadati TIFF a livello di frame.
Sentiero | Nome | Digitare |
---|---|---|
/ifd | 0 IFD | VT_UNKNOWN - Lettore/writer di query |
/ifd/{ushort=*} dove * = da 0 a 65535 | Voce IFD per ID | Variabile |
/ifd/thumb o /ifd/{ushort=330} | IFD anteprima | VT_UNKNOWN - Lettore/writer di query |
/ifd/xmp o /ifd/{ushort=700} | XMP | VT_UNKNOWN - Lettore/writer di query |
/ifd/exif o /ifd/{ushort=34665} | EXIF | VT_UNKNOWN - Lettore/writer di query |
/ifd/gps o /ifd/{ushort=34853} | GPS | VT_UNKNOWN - Lettore/writer di query |
/ifd/exif/interop o /ifd/exif/{ushort=40965} | Interoperabilità | VT_UNKNOWN - Lettore/writer di query |
/ifd/iptc o /ifd/{ushort=33723} | IPTC | VT_UNKNOWN - Lettore/writer di query |
/ifd/iptc/{str=*} dove * = parola chiave IPTC | Voce IPTC | Variabile |
/ifd/irb/8bimiptc/iptc | IPTC | VT_UNKNOWN - Lettore/writer di query |
/ifd/irb/8bimiptc/iptc/{str=*} | Voce IPTC | Variabile |
Metadati JPEG
Il formato di immagine JPEG supporta i metadati a livello di frame.
Nota
Per un elenco completo dei metadati JPEG insieme a informazioni più dettagliate, vedere standard EXIF JPEG.
Metadati dei frame
La tabella seguente fornisce i percorsi di query dei metadati disponibili che possono essere usati per accedere ai metadati JPEG a livello di frame.
Sentiero | Nome | Digitare |
---|---|---|
/app0 | App0 | VT_UNKNOWN - Lettore/Writer di query app0 |
/app0/{ushort=0} | Versione | VT_UI2 |
/app0/{ushort=1} | Unità | 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 - Lettore/writer di query App1 |
/app1/ifd o /app1/{ushort=0} | 0 IFD | VT_UNKNOWN - Lettore/writer di query IFD |
/app1/ifd/exif o /app1/ifd/{ushort=34665} | EXIF IFD | VT_UNKNOWN - Lettore/writer di query EXIF |
/app1/thumb o /app1/{ushort=1} | IFD anteprima | VT_UNKNOWN - Lettore/writer di query subIFD |
/app13 | App13 | VT_UNKNOWN - Lettore/writer di query App13 |
/app13/irb o /app13/{ushort=0} | IRB | VT_UNKNOWN - Lettore/writer di query IRB |
/app13/irb/{ulonglong=*} dove * = Identificatore IRB (vedere la specifica IRB) | Voce IRB | VT_UNKNOWN - Lettore/Writer di query sconosciuto |
/app13/irb/{ulonglong=*}/{} | Contenuto voce IRB | VT_BLOB |
/app13/irb/8bimiptc o /app13/irb/{ulonglong=61857348781060} | 8BIMIPTC | VT_UNKNOWN - Lettore/writer di query 8BIMIPTC |
/app13/irb/8bimiptc/iptc | IPTC | VT_UNKNOWN - Lettore/writer di query IPTC |
/app13/irb/8bimiptc/iptc/{str=*} | Voce IPTC | Variabile |
/app13/irb/8bimResInfo o /app13/irb/{ulonglong=61857348781037} | Informazioni sulla risoluzione 8BIM | VT_UNKNOWN - Lettore/Writer di query |
/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 | Commento JPEG | VT_UNKNOWN - Lettore/Writer di query di commento |
/com/TextEntry | LPSTR | |
/luminanza | Luminanza | VT_UNKNOWN - Lettore/Writer di query di luminanza |
/luminance/TableEntry | VT_UI1 | VT_VECTOR | |
/crominanza | Crominanza | VT_UNKNOWN - Lettore/Writer di query chrominance |
/chrominance/TableEntry | VT_UI1 | VT_VECTOR | |
/xmp | XMP | VT_UNKNOWN - Lettore/writer di query XMP |
Metadati indipendenti in formato file
Le sezioni seguenti contengono informazioni sui formati di metadati supportati da più formati di immagine. Ogni tabella include le colonne seguenti:
- percorso relativo : percorso della query usato per recuperare l'elemento di metadati, relativo al blocco di metadati.
- Nome : nome dell'elemento di metadati.
- Tipo: tipo dell'elemento di metadati recuperato dal percorso della query. I metadati recuperati da WIC vengono restituiti sotto forma di PROPVARIANT, che segnala il tipo di dati usando l'enumerazione VARTYPE.
Nota
Le tabelle qui forniscono solo il percorso relativo per accedere a un elemento di metadati all'interno del formato di metadati specifico. Per ottenere la query di metadati completi, aggiungere questo percorso relativo alla query del blocco di metadati per il formato di metadati specifico.
Ad esempio, per accedere al flag Orientation in un file JPEG, usare l'espressione seguente:
- /app1/ifd/{ushort=274}
In un file TIFF usare l'espressione seguente:
- /ifd/{ushort=274}
In questo esempio, si noti che diversi formati di immagine possono archiviare un blocco di metadati specifico in modo diverso e quindi la query di metadati completi per accedere a un determinato elemento di metadati può essere specifica del formato di immagine. Vedere la tabella di ogni formato per trovare la query di metadati appropriata per accedere a un blocco di metadati specifico.
Metadati IFD
IfD, o Image File Directory, è una struttura di dati definita nello standard TIFF che può contenere metadati di immagine. Identifica ogni elemento di metadati usando un tag di tipo ushort. JPEG, TIFF e JPEG-XR supportano i metadati IFD. Anche i formati di terze parti, come alcuni formati non elaborati della fotocamera, possono supportare i metadati IFD.
La tabella seguente fornisce percorsi di query sui metadati relativi per accedere ad alcuni elementi di metadati IFD di uso comune. La struttura dei dati IFD consente l'estendibilità di terze parti e questa tabella non è un elenco completo. Per altre informazioni, vedere lo standard TIFF.
Nota
Anche se JPEG e altri formati supportano la struttura dei dati IFD, potrebbero non usare tutti gli elementi di metadati definiti. Per altre informazioni, vedere lo standard di ogni formato.
Nota
Alcuni elementi di metadati nella tabella qui richiedono un'interpretazione aggiuntiva o informazioni da usare correttamente, vedere lo standard TIFF. Ad esempio, l'PhotometricInterpretation elemento di metadati restituisce un PROPVARIANT di tipo VT_UI2. Tuttavia, in base allo standard TIFF, viene interpretato come enumerazione. Per altre informazioni, vedere lo standard TIFF.
Percorso relativo | Nome | Digitare |
---|---|---|
/{ushort=256} | ImageWidth | VT_UI2 o VT_UI4 |
/{ushort=257} | ImageLength | VT_UI2 o VT_UI4 |
/{ushort=258} | BitsPerSample | VT_UI2 |
/{ushort=259} | Compressione | VT_UI2 |
/{ushort=262} | PhotometricInterpretation | VT_UI2 |
/{ushort=274} | Orientamento | 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} | Fare | VT_LPSTR |
/{ushort=272} | Modello | VT_LPSTR |
/{ushort=305} | Software | VT_LPSTR |
/{ushort=315} | Artista | VT_LPSTR |
/{ushort=33432} | Diritto d’autore | VT_LPSTR |
/{ushort=338} | ExtraCampionamento | VT_UI2 |
/{ushort=254} | NewSubfileType | VT_UI4 |
/{ushort=278} | RowsPerStrip | VT_UI2 o VT_UI4 |
/{ushort=279} | StripByteCounts | VT_VECTOR | VT_UI2 o VT_VECTOR | VT_UI4 |
/{ushort=273} | StripOffsets | VT_VECTOR | VT_UI2 o VT_VECTOR | VT_UI4 |
Metadati EXIF
I metadati EXIF vengono definiti come parte della specifica EXIF JPEG. I metadati EXIF si basano sulla struttura dei dati IFD come definito nello standard TIFF e forniscono attributi aggiuntivi, ad esempio informazioni sui dispositivi e attributi fotografici usati per creare l'immagine. Identifica ogni elemento di metadati usando un tag di tipo ushort. JPEG, TIFF e JPEG-XR supportano i metadati EXIF. I formati di terze parti, ad esempio alcuni formati non elaborati della fotocamera, possono supportare anche i metadati EXIF.
Nella tabella seguente vengono forniti i percorsi di query sui metadati relativi per accedere ad alcuni elementi di metadati EXIF di uso comune. La struttura dei dati EXIF consente l'estendibilità di terze parti e questa tabella non è un elenco completo; per altre informazioni, vedere lo standard EXIF.
Nota
Molti elementi di metadati EXIF sono definiti nello standard EXIF come tipo "RATIONAL" o "SRATIONAL". Un "RATIONAL" è costituito da un numeratore e un denominatore, entrambi numeri interi senza segno a 32 bit. Il numeratore è contenuto nei 32 bit alti e il denominatore nei 32 bit bassi. In WIC, questi vengono restituiti rispettivamente come PROPVARIANT con un tipo di VT_UI8 o VT_I8; il valore effettivo viene archiviato rispettivamente come ULARGE_INTEGER o LARGE_INTEGER. Per accedere al numeratore e al denominatore, leggere i membri HighPart e LowPart del valore ULARGE_INTEGER o LARGE_INTEGER.
Nota
Alcuni elementi di metadati nella tabella seguente richiedono un'interpretazione o informazioni aggiuntive per l'uso corretto. Ad esempio, l'elemento di metadati ColorSpace restituisce un VALORE PROPVARIANT di tipo VT_UI2. Tuttavia, secondo lo standard EXIF viene interpretato come enumerazione. Per altre informazioni, vedere lo standard EXIF.
Percorso relativo | Nome | Digitare |
---|---|---|
/{ushort=36864} | ExifVersion | VT_BLOB |
/{ushort=40960} | FlashpixVersion | VT_BLOB |
/{ushort=40961} | ColorSpace | VT_UI2 |
/{ushort=40962} | PixelXDimension | VT_UI2 o VT_UI4 |
/{ushort=40963} | PixelYDimension | VT_UI2 o 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} | SpectralSensitivity | VT_LPSTR |
/{ushort=34855} | PhotographicSensitivity | 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} | ISOSpeedLatitudeyyyy | 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} | LightSource | VT_UI2 |
/{ushort=37385} | Flash | VT_UI2 |
/{ushort=37386} | FocalLength | VT_UI8 |
/{ushort=37396} | SubjectArea | VT_VECTOR | VT_UI2 |
/{ushort=41483} | FlashAsto | 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} | Contrasto | VT_UI2 |
/{ushort=41993} | Saturazione | VT_UI2 |
/{ushort=41994} | Acutezza | VT_UI2 |
/{ushort=41995} | DeviceSettingDescription | VT_BLOB |
/{ushort=41996} | SubjectDistanceRange | VT_UI2 |
Metadati GPS
I metadati GPS contengono informazioni di georilevazione ed è definito come parte della specifica EXIF JPEG. Identifica ogni elemento di metadati usando un tag di tipo ushort. JPEG, TIFF e JPEG-XR supportano i metadati GPS; formati di terze parti, come alcuni formati non elaborati della fotocamera, possono supportare anche i metadati GPS.
La tabella seguente fornisce percorsi di query sui metadati relativi per accedere ad alcuni elementi di metadati GPS di uso comune. Questa tabella non è un elenco esaustivo; per altre informazioni, vedere lo standard EXIF.
Nota
Molti elementi di metadati GPS sono definiti nello standard EXIF come tipo "RATIONAL". Un "RATIONAL" è costituito da un numeratore e un denominatore, entrambi numeri interi senza segno a 32 bit. Il numeratore è contenuto nei 32 bit alti e il denominatore nei 32 bit bassi. In WIC, questi vengono restituiti come PROPVARIANT con un tipo di VT_UI8. Il valore effettivo viene archiviato come ULARGE_INTEGER. Per accedere al numeratore e al denominatore, leggere i membri HighPart e LowPart del valore ULARGE_INTEGER.
Nota
Alcuni elementi di metadati nella tabella qui richiedono un'interpretazione o informazioni aggiuntive per l'uso corretto. Ad esempio, l'elemento di metadati GPSLatitudeRef restituisce un PROPVARIANT di tipo VT_LPSTR. In base allo standard EXIF questa stringa è "N" o "S", che rappresenta la latitudine nord o meridionale. Per altre informazioni, vedere lo standard EXIF.
Percorso relativo | Nome | Digitare |
---|---|---|
{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 |
Metadati XMP
XMP è uno standard di metadati estendibile basato su XML. Gli elementi di metadati possono essere gerarchici e contenere strutture di dati complesse. JPEG, TIFF e JPEG-XR supportano i metadati XMP. Anche i formati di terze parti, come alcuni formati non elaborati della fotocamera, possono supportare i metadati XMP.
Lo standard XMP può essere ottenuto da: https://www.adobe.com/devnet/xmp.html.
XMP e consente alle entità di terze parti di pubblicare i propri schemi o spazi dei nomi, che consentono di definire nuovi elementi di metadati senza dover modificare lo standard XMP. Uno schema XMP è identificato in modo univoco da un URL, ma WIC fornisce un set di identificatori descrittivi per schemi noti.
Gli elementi di metadati XMP sono identificati da un nome stringa e da un identificatore di schema. Come procedura consigliata, ogni query di metadati XMP deve specificare sia lo schema che il nome. Se manca l'identificatore dello schema, JPEG tenterà di trovare la corrispondenza con il nome dei metadati in tutti gli spazi dei nomi presenti all'interno del pacchetto di metadati XMP.
Ad esempio, per ottenere la proprietà Rating come definito dallo schema XMP in un'immagine JPEG, usare la query seguente:
- /xmp/{wstr=https://ns.adobe.com/xap/1.0/}:Rating
La prima parte, "/xmp", recupera il lettore/writer di metadati XMP per l'immagine. "https://ns.adobe.com/xap/1.0/" è l'URL dello schema XMP, come definito nello standard XMP. L'URL è racchiuso in un'espressione di dati per consentire l'uso di caratteri come una barra (/). Infine, "Rating" è il nome effettivo dell'elemento di metadati definito dallo schema XMP ed è separato dall'identificatore dello schema da due punti (:).
In questo esempio WIC fornisce un identificatore descrittivo per lo schema XMP che può essere usato al posto dell'URL completo. È quindi possibile riscrivere la query precedente come segue:
- /xmp/xmp:Rating
wic fornisce prefissi descrittivi dello schema per gli schemi comunemente usati:
Se non esiste alcun prefisso dello schema descrittivo per uno schema specifico, ad esempio se un'immagine contiene metadati XMP usando uno schema personalizzato di terze parti, la query di metadati deve usare l'URL completo dello schema.
Argomenti correlati
-
concettuale
-
Panoramica componente Windows Imaging
-
Procedura: Codificare nuovamente un'immagine JPEG con metadati