BitmapPropertiesView.GetPropertiesAsync(IIterable<String>) Methode

Definition

Ruft asynchron eine oder mehrere Bitmapeigenschaften ab.

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)

Parameter

propertiesToRetrieve

IIterable<String>

IEnumerable<String>

IIterable<Platform::String>

IIterable<winrt::hstring>

Eine Auflistung von Zeichenfolgen, die die angeforderten Eigenschaftenschlüssel oder Abfragen darstellen. Gültige Zeichenfolgen umfassen Windows-Eigenschaften und Metadatenabfragen der Windows-Imageerstellungskomponente.

Gibt zurück

Objekt, das den asynchronen Abruf der Bitmapeigenschaften verwaltet.

Implementiert

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})
Attribute

Hinweise

Der asynchrone Vorgang erzeugt eine Auflistung, die die angeforderten Imageeigenschaftenschlüssel und deren Werte darstellt. Die Werte werden als BitmapTypedValue gespeichert, das sowohl die tatsächlichen Daten als auch den PropertyType der Daten enthält.

Ein bestimmtes Bild darf nur einige (oder keine) der angeforderten Eigenschaften enthalten. In diesem Fall enthält die Auflistung nur Schlüssel-Wert-Paare für die Eigenschaften, die im Bild gefunden wurden. Sie müssen überprüfen, ob die Eigenschaft vorhanden ist, bevor Sie versuchen, Daten von ihr abzurufen:

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

Abfragen eines Metadatenblocks

Wenn Sie die Metadatenabfragesprache verwenden, um einen Metadatenblock anstelle einer Eigenschaft anzufordern, ist der zurückgegebene Wert ein BitmapPropertiesView , der die Metadaten in diesem Block darstellt. Sie können alle Metadaten, die im Block enthalten sind, über BitmapPropertiesView anfordern:

// 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;
});

Auflisten aller Metadaten in einem Frame

Sie können den gesamten Inhalt eines Metadatenblocks anfordern, einschließlich Unterblöcken und Eigenschaften, indem Sie eine leere Sammlung von Zeichenfolgen (länge null) übergeben. Dadurch wird eine Auflistung erzeugt, die jeden Unterblock und jede Eigenschaft innerhalb des Bereichs von BitmapPropertiesView enthält. Auf diese Weise können Sie alle Metadaten, die in einem Bildrahmen enthalten sind, iterativ abrufen.

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();
	}
});

Wenn das Bildformat keine Metadaten unterstützt, schlägt es mit HRESULT-WINCODEC_ERR_UNSUPPORTEDOPERATION fehl.

Gilt für:

Weitere Informationen