Share via


BitmapPropertiesView.GetPropertiesAsync(IIterable<String>) Méthode

Définition

Récupère de manière asynchrone une ou plusieurs propriétés bitmap.

public:
 virtual IAsyncOperation<BitmapPropertySet ^> ^ GetPropertiesAsync(IIterable<Platform::String ^> ^ propertiesToRetrieve) = GetPropertiesAsync;
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperation<BitmapPropertySet> GetPropertiesAsync(IIterable<winrt::hstring> const& propertiesToRetrieve);
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperation<BitmapPropertySet> GetPropertiesAsync(IEnumerable<string> propertiesToRetrieve);
function getPropertiesAsync(propertiesToRetrieve)
Public Function GetPropertiesAsync (propertiesToRetrieve As IEnumerable(Of String)) As IAsyncOperation(Of BitmapPropertySet)

Paramètres

propertiesToRetrieve

IIterable<String>

IEnumerable<String>

IIterable<Platform::String>

IIterable<winrt::hstring>

Collection de chaînes représentant les clés de propriété ou les requêtes demandées. Les chaînes valides incluent les propriétés Windows et les requêtes de métadonnées du composant d’acquisition d’images Windows.

Retours

Objet qui gère la récupération asynchrone des propriétés bitmap.

Implémente

M:Windows.Graphics.Imaging.IBitmapPropertiesView.GetPropertiesAsync(System.Collections.Generic.IEnumerable{System.String}) M:Windows.Graphics.Imaging.IBitmapPropertiesView.GetPropertiesAsync(System.Collections.Generic.IEnumerable{Platform::String}) M:Windows.Graphics.Imaging.IBitmapPropertiesView.GetPropertiesAsync(System.Collections.Generic.IEnumerable{winrt::hstring})
Attributs

Remarques

L’opération asynchrone produit une collection représentant les clés de propriété d’image demandées et leurs valeurs. Les valeurs sont stockées sous la forme BitmapTypedValue, qui contient à la fois les données réelles ainsi que le PropertyType des données.

Une image particulière ne peut contenir qu’une partie (ou aucune) des propriétés demandées. Dans ce cas, la collection n’aura que des paires clé-valeur pour les propriétés qui ont été trouvées dans l’image. Vous devez case activée pour l’existence de la propriété avant d’essayer d’obtenir des données à partir de celle-ci :

bitmapPropertiesView.getPropertiesAsync(["System.Title"]).done(function (retrievedProperties) {
  if (retrievedProperties.hasKey("System.Title")) {
	  	var titleProperty = retrievedProperties.lookup("System.Title");
	  	var title = titleProperty.value;
	 }
});

Interrogation d’un bloc de métadonnées

Si vous utilisez le langage de requête de métadonnées pour demander un bloc de métadonnées au lieu d’une propriété, la valeur retournée est un BitmapPropertiesView représentant les métadonnées de ce bloc. Vous pouvez demander toutes les métadonnées contenues dans le bloc à partir de BitmapPropertiesView :

// this is equivalent to directly requesting "/app1/ifd/{ushort=274}" from bitmapPropertiesView
bitmapPropertiesView.getPropertiesAsync(["/app1/ifd"]).done(function (retrievedProperties) {
	  // var ifdBlock is a BitmapPropertiesView
	  var ifdBlock = retrievedProperties.lookup("/app1/ifd").value;
	  return ifdBlock.getPropertiesAsync(["/{ushort=274}");
}).then(function (retrievedProperties) {
	  var orientation = retrievedProperties.lookup("/{ushort=274}").value;
});

Énumération de toutes les métadonnées d’un cadre

Vous pouvez demander tout le contenu d’un bloc de métadonnées, y compris les sous-blocs et les propriétés, en transmettant une collection vide (de longueur nulle) de chaînes. Cela produit une collection contenant chaque sous-bloc et chaque propriété dans l’étendue de BitmapPropertiesView . De cette façon, vous pouvez récupérer de manière itérative toutes les métadonnées contenues dans un cadre d’image.

bitmapPropertiesView.getPropertiesAsync([]).done(function (retrievedProperties) {
	  var iterator = retrievedProps.first();
	  while (iterator.hasCurrent) {
		  // iterator.current gives a key-value pair of string, BitmapTypedValue
		  // nextMetadataBlock is a BitmapPropertiesView containing the sub-block
		  var nextMetadataBlock = iterator.current.value.value;
		  iterator.moveNext();
	}
});

Si le format d’image ne prend pas en charge les métadonnées, il échoue avec hresult WINCODEC_ERR_UNSUPPORTEDOPERATION.

S’applique à

Voir aussi