Come recuperare le proprietà dell'immagine (HTML)
[ Questo articolo è rivolto agli sviluppatori per Windows 8.x e Windows Phone 8.x che realizzano app di Windows Runtime. Gli sviluppatori che usano Windows 10 possono vedere Documentazione aggiornata ]
Questo argomento illustra come usare un oggetto ImageProperties per recuperare le proprietà da un file immagine.
Se non hai un oggetto BitmapDecoder o ti servono solo proprietà per le immagini di uso comune, ti consigliamo di usare la classe ImageProperties. ImageProperties offre i dati di base, come il titolo e la data di acquisizione. Con questa classe è anche possibile accedere al sistema di proprietà di Windows che contiene molte proprietà di uso comune. Per altre info, lo spazio dei nomi completo delle proprietà di Windows è disponibile in Proprietà di Windows.
Nota Solo alcune proprietà sono supportate dai formati e dai codec di immagini. Per altre informazioni, vedi Criteri per i metadati fotografici.
Cosa sapere
Tecnologie
- Creazione della prima app di Windows Runtime in JavaScript
- Windows.Storage.FileProperties.ImageProperties
- Proprietà di Windows
Prerequisiti
- Presupponiamo che tu sappia come creare un'app di Windows Runtime di base con JavaScript. Per ulteriori informazioni, vedi Creazione della prima app di Windows Runtime in JavaScript.
- Hai creato un oggetto StorageFile dall'immagine. La procedura è descritta in Come decodificare un'immagine.
Istruzioni
Passaggio 1: Recuperare un oggetto file
Scrivi la parte iniziale di una funzione che riceve un oggetto StorageFile e dichiara le variabili in cui archiviare le proprietà recuperate.
function GetImageProperties(file) {
var title;
var orientation;
var aperture;
Dichiara le variabili per definirne l'ambito.
Passaggio 2: Recuperare una proprietà di base
StorageFile include un membro Properties che consente l'accesso alle proprietà correlate al contenuto nel file. Puoi recuperare le proprietà delle immagini con properties.getImagePropertiesAsync.
file.properties.getImagePropertiesAsync().then(function (imageProperties) {
Se hai l'oggetto ImageProperties puoi recuperare immediatamente alcune proprietà, come il titolo e la valutazione.
title = imageProperties.title;
Nota Se l'immagine non contiene una particolare proprietà o il formato dell'immagine non supporta tale proprietà, viene restituito Null. Devi verificare l'esistenza di ogni proprietà per poterla recuperare.
Passaggio 3: Recuperare una proprietà di Windows
Puoi anche richiedere in modo asincrono una proprietà di Windows supportata passando un elenco di nomi di chiavi di proprietà a imageProperties.retrievePropertiesAsync.
return imageProperties.retrievePropertiesAsync(["System.Photo.Orientation", “System.Photo.Aperture”]);
}).done(function (retrievedProperties) {
L'oggetto retrievedProperties è una raccolta di coppie chiave-valore in cui ogni chiave è il nome della proprietà di Windows richiesta e il valore è rappresentato dai dati corrispondenti. Quando chiami la funzione di ricerca, questa viene eseguita in modo sincrono. L'elaborazione viene gestita dalla funzione retrievePropertiesAsync.
orientation = retrievedProperties.lookup("System.Photo.Orientation");
aperture = retrievedProperties.lookup("System.Photo.Aperture");
Nota Se l'immagine non contiene una particolare proprietà o il formato dell'immagine non supporta tale proprietà, viene restituito Null. Devi verificare l'esistenza di ogni proprietà per poterla recuperare.
Osservazioni
Puoi usare BitmapPropertiesView per accedere alle proprietà di Windows, come ImageProperties. Otterrai tuttavia un livello di accesso più basso alle strutture dei metadati nativi nel file che usano il linguaggio di query dei metadati WIC. Per altre info, vedi Come leggere i metadati delle immagini.
Argomenti correlati
Esempio di creazione di immagini semplici
Windows.Storage.FileProperties.ImageProperties