Comment obtenir des propriétés d’image (HTML)
[ Cet article est destiné aux développeurs Windows 8.x et Windows Phone 8.x qui créent des applications Windows Runtime. Si vous développez une application pour Windows 10, voir la Documentation ]
Cette rubrique explique comment utiliser un objet ImageProperties pour extraire des propriétés d’un fichier image.
Si vous ne possédez aucun objet BitmapDecoder ou si vous avez uniquement besoin de propriétés d’image couramment employées, nous vous recommandons alors d’utiliser la classe ImageProperties. La classe ImageProperties fournit des données de base, telles que le titre et la date de prise. Elle offre également un accès au système de propriétés Windows qui renferme un grand nombre de propriétés couramment employées. Pour plus d’informations, vous pouvez consulter l’espace de noms de propriétés Windows disponible dans Propriétés Windows.
Remarque Seules certaines propriétés sont prises en charge par les formats d’image et les codecs. Pour plus d’informations, voir Stratégies de métadonnées de photos.
Ce que vous devez savoir
Technologies
- Création de votre première application Windows Runtime en JavaScript
- Windows.Storage.FileProperties.ImageProperties
- Propriétés Windows
Prérequis
- Nous partons du principe que vous savez créer une application Windows Runtime de base en JavaScript. Pour plus d’informations, voir Création de votre première application Windows Runtime en JavaScript.
- Vous avez créé un objet StorageFile à partir de l’image. La rubrique Comment décoder une image vous guide à travers ce processus.
Instructions
Étape 1: Obtenir un objet fichier
Écrivez le début d’une fonction qui reçoit un objet StorageFile et déclarez des variables dans lesquelles stocker les propriétés que vous récupérez.
function GetImageProperties(file) {
var title;
var orientation;
var aperture;
Déclarez les variables à cette étape pour les conserver dans l’étendue.
Étape 2: Récupérer une propriété de base
L’objet StorageFile dispose d’un membre Properties qui offre un accès à des propriétés de contenu dans le fichier. Vous pouvez récupérer des propriétés d’image à l’aide de properties.getImagePropertiesAsync.
file.properties.getImagePropertiesAsync().then(function (imageProperties) {
Une fois l’objet ImageProperties à votre disposition, vous pouvez immédiatement accéder à des propriétés courantes, telles que le titre et le classement.
title = imageProperties.title;
Remarque Si l’image ne contient aucune propriété en particulier ou si son format ne prend pas en charge cette propriété, elle renvoie la valeur Null. Vous devez vérifier que chaque propriété existe avant de la récupérer.
Étape 3: Récupérer une propriété Windows
Vous pouvez demander une propriété Windows prise en charge, de manière asynchrone en transmettant une liste des noms des clés de propriété à imageProperties.retrievePropertiesAsync.
return imageProperties.retrievePropertiesAsync(["System.Photo.Orientation", “System.Photo.Aperture”]);
}).done(function (retrievedProperties) {
L’objet retrievedProperties est une collection de paires clé-valeur où chaque clé désigne le nom de la propriété Windows que vous avez demandée et la valeur désigne les données correspondantes. Lorsque vous appelez la fonction de recherche, celle-ci est synchrone. La fonction retrievePropertiesAsync gère le traitement.
orientation = retrievedProperties.lookup("System.Photo.Orientation");
aperture = retrievedProperties.lookup("System.Photo.Aperture");
Remarque Si l’image ne contient aucune propriété en particulier ou si son format ne prend pas en charge cette propriété, elle renvoie la valeur Null. Vous devez vérifier que chaque propriété existe avant de la récupérer.
Remarques
Vous pouvez utiliser la classe BitmapPropertiesView pour collecter des propriétés Windows, telles que ImageProperties. Cependant, cette classe offre un accès de niveau inférieur aux structures de métadonnées natives dans le fichier qui utilise le langage de requête de métadonnées WIC (Windows Imaging Component). Pour plus d’informations, voir Comment lire les métadonnées d’image.
Rubriques associées
Windows.Storage.FileProperties.ImageProperties