Query di metadati per formati di immagine nativi
Questo argomento offre una panoramica delle query del linguaggio di query dei metadati per la lettura e la scrittura di metadati supportati da immagini GIF, PNG, TIFF e JPEG. Include metadati specifici di ogni formato di immagine, nonché metadati supportati da più formati.
In questo argomento sono contenute le sezioni seguenti.
- Prerequisiti
- Espressione criteri metadati foto
- Metadati specifici del formato di file
- Metadati indipendenti formato file
- Argomenti correlati
Prerequisiti
Per comprendere questo argomento, è necessario avere familiarità con il sistema di metadati Windows Imaging Component (WIC), come descritto in Panoramica dei metadati wic. È anche necessario avere familiarità con il linguaggio di query usato per leggere e scrivere metadati, come descritto in Panoramica del linguaggio di query sui metadati.
Espressione criteri metadati foto
Oltre a supportare il linguaggio di query dei metadati, WIC accetta anche nomi di proprietà canonici dal sistema di proprietà Windows. WIC supporta un subset dello spazio dei nomi delle proprietà Windows rilevante per i formati di immagine, come descritto in Criteri metadati foto. Una proprietà Di Windows utilizzata come query di metadati WIC viene definita espressione di criteri di metadati delle foto.
Ad esempio, l'espressione dei criteri dei metadati delle 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 è ideale 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 Photo Metadata Policy Expressions.For more information, see Photo Metadata Policy Expressions.
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:
- Path : percorso della query usato per recuperare l'elemento di metadati.
- Name : nome dell'elemento di metadati.
- Type : 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 oggetto IWICMetadataQueryReader per eseguire una query per il blocco di metadati IFD di 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 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 nel sito Web W3C.
Metadati globali
Nella tabella seguente vengono forniti i percorsi di query dei metadati disponibili che possono essere usati per accedere ai metadati GIF globali.
Percorso | Nome | Tipo |
---|---|---|
/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
Nella tabella seguente vengono forniti i percorsi di query dei metadati disponibili che possono essere usati per accedere ai metadati GIF a livello di frame.
Percorso | Nome | Tipo |
---|---|---|
/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 frame.
Nota
Per un elenco completo dei metadati PNG insieme a informazioni più dettagliate, vedere lo standard PNG nel sito Web W3C.
Metadati dei frame
Nella tabella seguente vengono forniti i percorsi di query dei metadati disponibili che possono essere usati per accedere ai metadati PNG a livello di frame.
Percorso | Nome | Tipo |
---|---|---|
/tEXt o /[*]tEXt dove * = da 0 a N | Blocco di testo | VT_UNKNOWN - Lettore/writer di query tEXt |
/tEXt/{str=*} dove * = identificazione della parola chiave per il testo | VT_LPSTR | |
/Gama | Gama Chunk | VT_UNKNOWN - lettore/writer di query gAMA |
/gAMA/ImageGamma | VT_UI4 | |
/iTXt o /[*]iTXt dove * = da 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 | |
/Tempo | Blocco di tempo | 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/Second | VT_UI1 | |
/bKGD | Blocco in background | VT_UNKNOWN - Lettore/writer di query bKGB |
/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 (Tag Image Format) supporta i metadati a livello di frame.
Nota
Per un elenco completo dei metadati TIFF insieme a informazioni più dettagliate, vedere lo standard TIFF.
Metadati dei frame
La tabella seguente fornisce i percorsi di query dei metadati disponibili che possono essere usati per accedere ai metadati TIFF a livello di frame.
Percorso | Nome | Tipo |
---|---|---|
/Ifd | 0 IFD | VT_UNKNOWN - Lettore di query/writer |
/ifd/{ushort=*} dove * = 0 a 65535 | Voce IFD in base all'ID | Variabile |
/ifd/thumb o /ifd/{ushort=330} | Miniatura IFD | VT_UNKNOWN - Lettore di query/writer |
/ifd/xmp o /ifd/{ushort=700} | XMP | VT_UNKNOWN - Lettore di query/writer |
/ifd/exif o /ifd/{ushort=34665} | EXIF | VT_UNKNOWN - Lettore di query/writer |
/ifd/gps o /ifd/{ushort=34853} | GPS | VT_UNKNOWN - Lettore di query/writer |
/ifd/exif/interoperabilità o /ifd/exif/{ushort=40965} | Interoperabilità | VT_UNKNOWN - Lettore di query/writer |
/ifd/iptc o /ifd/{ushort=33723} | IPTC | VT_UNKNOWN - Lettore di query/writer |
/ifd/iptc/{str=*} dove * = parola chiave IPTC | Voce IPTC | Variabile |
/ifd/irb/8bimiptc/iptc | IPTC | VT_UNKNOWN - Lettore di query/writer |
/ifd/irb/8bimiptc/iptc/{str=*} | Voce IPTC | Variabile |
Metadati JPEG
Il formato di immagine JPEG supporta i metadati a livello di cornice.
Nota
Per un elenco completo dei metadati JPEG insieme a informazioni più dettagliate, vedere lo 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.
Percorso | Nome | Tipo |
---|---|---|
/app0 | App0 | VT_UNKNOWN - Lettore query app0/writer |
/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} | MiniatureData | VT_BLOB |
/app1 | App1 | VT_UNKNOWN - Lettore query/writer app1 |
/app1/ifd o /app1/{ushort=0} | 0 IFD | VT_UNKNOWN - Lettore query IFD/Writer |
/app1/ifd/exif o /app1/ifd/{ushort=34665} | EXIF IFD | VT_UNKNOWN - Lettore query EXIF/Writer |
/app1/thumb o /app1/{ushort=1} | Miniatura IFD | VT_UNKNOWN - Lettore di query subIFD/Writer |
/app13 | App13 | VT_UNKNOWN - Lettore query/writer app13 |
/app13/irb o /app13/{ushort=0} | IRB | VT_UNKNOWN - Lettore query IRB/Writer |
/app13/irb/{ulonglong=*} dove * = Identificatore IRB (vedere specifica IRB) | Voce IRB | VT_UNKNOWN - Lettore/writer di query sconosciuto |
/app13/irb/{ulonglong=*}/{} | Contenuto della 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 | Luminance | VT_UNKNOWN - Lettore/writer di query di dominanza |
/luminance/TableEntry | VT_UI1 | VT_VECTOR | |
/Crominanza | Chrominance | VT_UNKNOWN - Lettore/writer di query chrominance |
/chrominance/TableEntry | VT_UI1 | VT_VECTOR | |
/Xmp | XMP | VT_UNKNOWN - Lettore/writer di query XMP |
Metadati indipendenti 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.
- Name : nome dell'elemento di metadati.
- Type : 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 di blocco dei 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
Un 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. I formati di terze parti, ad esempio alcuni formati non elaborati della fotocamera, possono supportare anche i metadati IFD.
La tabella seguente fornisce percorsi di query sui metadati relativi per accedere ad alcuni elementi di metadati IFD usati comunemente. 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
Sebbene JPEG e altri formati supportino 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, fare riferimento allo standard TIFF. Ad esempio, l'elemento di metadati PhotometricInterpretation 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 | Tipo |
---|---|---|
/{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} | Casa automobilistica | VT_LPSTR |
/{ushort=272} | Modellare | VT_LPSTR |
/{ushort=305} | Software | VT_LPSTR |
/{ushort=315} | Artista | VT_LPSTR |
/{ushort=33432} | Copyright | 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} | StripOffset | VT_VECTOR | VT_UI2 o VT_VECTOR | VT_UI4 |
Metadati EXIF
I metadati EXIF vengono definiti come parte della specifica JPEG EXIF. 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 sugli 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 dei metadati relativi per accedere ad alcuni elementi di metadati EXIF usati comunemente. La struttura dei dati EXIF consente l'estendibilità di terze parti e questa tabella non è un elenco esaustivo; per altre informazioni, vedere lo standard EXIF.
Nota
Molti elementi di metadati EXIF sono definiti nello standard EXIF come tipo "RATIONAL" o "SRATIONAL". Un oggetto "RATIONAL" è costituito da un numeratore e un denominatore, entrambi costituiti da interi senza segno a 32 bit. Il numeratore è contenuto negli alti 32 bit 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 aggiuntiva o informazioni da usare correttamente. Ad esempio, l'elemento di metadati ColorSpace restituisce un PROPVARIANT di tipo VT_UI2. Tuttavia, secondo lo standard EXIF viene interpretato come enumerazione. Per altre informazioni, vedere lo standard EXIF.
Percorso relativo | Nome | Tipo |
---|---|---|
/{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} | FotoSensitivity | 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} | ISOSpeedLatitudey | 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} | Si confronti | VT_UI2 |
/{ushort=41993} | Saturazione | VT_UI2 |
/{ushort=41994} | Nitidezza | VT_UI2 |
/{ushort=41995} | DeviceSettingDescription | VT_BLOB |
/{ushort=41996} | SubjectDistanceRange | VT_UI2 |
Metadati GPS
I metadati GPS contengono informazioni sulla georilevazione ed è definito come parte della specifica JPEG EXIF. Identifica ogni elemento di metadati usando un tag di tipo ushort. JPEG, TIFF e JPEG-XR supportano i metadati GPS; anche formati di terze parti, come alcuni formati non elaborati della fotocamera, possono supportare i metadati GPS.
Nella tabella seguente vengono forniti i percorsi di query dei 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 oggetto "RATIONAL" è costituito da un numeratore e un denominatore, entrambi costituiti da interi senza segno a 32 bit. Il numeratore è contenuto negli alti 32 bit 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 da usare correttamente. 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 | Tipo |
---|---|---|
{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 dei metadati possono essere gerarchici e contengono strutture di dati complesse. JPEG, TIFF e JPEG-XR supportano i metadati XMP. I formati di terze parti, come alcuni formati non elaborati della fotocamera, possono supportare anche 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 loro 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 dei metadati XMP vengono identificati da un nome stringa e da un identificatore dello schema. Come procedura consigliata, ogni query di metadati XMP deve specificare sia lo schema che il nome. Se l'identificatore dello schema manca, JPEG tenterà di corrispondere al 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 in avanti (/). Infine, "Rating" è il nome effettivo dell'elemento di metadati definito dallo schema XMP ed è separato dall'identificatore dello schema in base a due punti (:).
In questo esempio WIC fornisce un identificatore descrittivo per lo schema XMP che può essere usato al posto dell'URL completo. Quindi, la query precedente può essere riscritta come:
- /xmp/xmp:Rating
WIC offre prefissi di schema descrittivi per gli schemi comunemente usati:
Se non esiste un prefisso di schema descrittivo per uno schema specifico, ad esempio se un'immagine contiene metadati XMP usando uno schema di terze parti personalizzato, la query di metadati deve usare l'URL completo dello schema.
Argomenti correlati
-
Informazioni concettuali
-
Procedura: Codificare nuovamente un'immagine JPEG con metadati