So wird’s gemacht: Abrufen von Bildeigenschaften (HTML)
[ Dieser Artikel richtet sich an Windows 8.x- und Windows Phone 8.x-Entwickler, die Windows-Runtime-Apps schreiben. Wenn Sie für Windows 10 entwickeln, finden Sie weitere Informationen unter neueste Dokumentation ]
Veranschaulicht die Verwendung eines ImageProperties-Objekts zum Abrufen der Eigenschaften einer Bilddatei.
Wenn Sie kein BitmapDecoder-Objekt haben oder ausschließlich allgemeine Bildeigenschaften benötigen, sollten Sie die ImageProperties-Klasse verwenden. Mit ImageProperties erhalten Sie grundlegende Daten wie Titel und Aufnahmedatum. Sie erteilt weiterhin Zugriff auf das Windows-Eigenschaftssystem, das viele häufig verwendete Eigenschaften enthält. Weitere Informationen erhalten Sie im vollständigen Windows-Eigenschaftsnamespace unter: Windows-Eigenschaften.
Hinweis Die Bildformate und Codecs unterstützen nicht alle Eigenschaften. Weitere Informationen finden Sie unter Richtlinien zu Fotometadaten.
Wissenswertes
Technologien
- Erstellen Ihrer ersten Windows-Runtime-App mit JavaScript
- Windows.Storage.FileProperties.ImageProperties
- Windows-Eigenschaften
Voraussetzungen
- Es wird vorausgesetzt, dass Sie eine einfache Windows-Runtime-App mit JavaScript erstellen können. Weitere Informationen finden Sie unter Erstellen Ihrer ersten Windows-Runtime-App mit JavaScript.
- Sie haben ein StorageFile-Objekt aus dem Bild erstellt. Unter Decodieren von Bildern wird dieser Vorgang erläutert.
Anweisungen
Schritt 1: Abrufen eines Dateiobjekts
Schreiben Sie den Anfang einer Funktion, die ein StorageFile-Objekt empfängt. Deklarieren Sie außerdem Variablen, in denen die abgerufenen Eigenschaften gespeichert werden.
function GetImageProperties(file) {
var title;
var orientation;
var aperture;
Deklarieren Sie die Variablen hier, um den Bereich beizubehalten.
Schritt 2: Abrufen einer grundlegenden Eigenschaft
StorageFile verfügt über einen Properties-Member, der den Zugriff auf inhaltsbezogene Eigenschaften der Datei bereitstellt. Sie können Bildverarbeitungseigenschaften mit properties.getImagePropertiesAsync abrufen.
file.properties.getImagePropertiesAsync().then(function (imageProperties) {
Wenn Sie über das ImageProperties-Objekt verfügen, können Sie einige gängige Eigenschaften wie den Titel und die Bewertung unmittelbar abrufen.
title = imageProperties.title;
Hinweis Wenn das Bild eine bestimmte Eigenschaft nicht enthält oder das Bildformat diese Eigenschaft nicht unterstützt, wird NULL zurückgegeben. Sie müssen überprüfen, ob die einzelnen Eigenschaften vorhanden sind, bevor Sie sie abrufen.
Schritt 3: Abrufen einer Windows-Eigenschaft
Sie können weiterhin eine unterstützte Windows-Eigenschaft asynchron abrufen, indem Sie eine Liste von Eigenschaftsschlüsselnamen an imageProperties.retrievePropertiesAsync übergeben.
return imageProperties.retrievePropertiesAsync(["System.Photo.Orientation", “System.Photo.Aperture”]);
}).done(function (retrievedProperties) {
Beim retrievedProperties-Objekt handelt es sich um eine Auflistung von Schlüssel-Wert-Paaren, bei denen die Schlüssel die Namen der Windows-Eigenschaften darstellen, die Sie angefordert haben. Der Wert steht dabei für die entsprechenden Daten. Wenn Sie die Nachschlagefunktion aufrufen, ist diese synchron. Die retrievePropertiesAsync-Funktion behandelt die Verarbeitung.
orientation = retrievedProperties.lookup("System.Photo.Orientation");
aperture = retrievedProperties.lookup("System.Photo.Aperture");
Hinweis Wenn das Bild eine bestimmte Eigenschaft nicht enthält oder das Bildformat diese Eigenschaft nicht unterstützt, wird NULL zurückgegeben. Sie müssen überprüfen, ob die einzelnen Eigenschaften vorhanden sind, bevor Sie sie abrufen.
Anmerkungen
Sie können BitmapPropertiesView verwenden, um Windows-Eigenschaften abzurufen, wie z. B. ImageProperties. Sie erhalten dadurch jedoch weniger Zugriff auf systemeigene Metadatenstrukturen in der Datei mit der WIC-Metadatenabfragesprache. Weitere Informationen finden Sie unter So wird's gemacht: Lesen von Bildverarbeitungs-Metadaten.
Verwandte Themen
Einfaches Beispiel für die Bildverarbeitung
Windows.Storage.FileProperties.ImageProperties