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

Prérequis

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

Exemple d’image simple

Windows.Storage.FileProperties.ImageProperties

Comment décoder une image

Comment lire les métadonnées d’image

Propriétés Windows

Propriétés Windows prises en charge