ImageCapture: getPhotoSettings()-Methode
Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig, bevor Sie diese produktiv verwenden.
Die getPhotoSettings()
-Methode des ImageCapture
-Interfaces gibt ein Promise
zurück, das mit einem Objekt aufgelöst wird, das die aktuellen Fotoeinstellungen enthält.
Syntax
getPhotoSettings()
Parameter
Keine.
Rückgabewert
Ein Promise
, das mit einem Objekt aufgelöst wird, das die folgenden Eigenschaften enthält:
fillLightMode
-
Die Blitzeinstellung des Aufnahmengeräts, eine von
"auto"
,"off"
oder"flash"
. imageHeight
-
Die gewünschte Bildhöhe als Ganzzahl. Der Browser wählt den nächstgelegenen Höhenwert zu dieser Einstellung, wenn er nur diskrete Höhen unterstützt.
imageWidth
-
Die gewünschte Bildbreite als Ganzzahl. Der Browser wählt den nächstgelegenen Breitenwert zu dieser Einstellung, wenn er nur diskrete Breiten unterstützt.
redEyeReduction
-
Ein boolescher Wert, der angibt, ob die Rote-Augen-Reduktion verwendet werden soll, wenn sie verfügbar ist.
Ausnahmen
InvalidStateError
DOMException
-
Wird ausgelöst, wenn die
readyState
-Eigenschaft desMediaStreamTrack
, das im Konstruktor übergeben wird, nichtlive
ist. OperationError
DOMException
-
Wird ausgelöst, wenn die Operation aus irgendeinem Grund nicht abgeschlossen werden kann.
Beispiele
Das folgende Beispiel, entnommen aus Chromes Image Capture / Photo Resolution Sample, verwendet die Ergebnisse von getPhotoSettings()
, um die Größe eines Eingabebereichs zu ändern. Dieses Beispiel zeigt auch, wie das ImageCapture
-Objekt mithilfe eines MediaStreamTrack
erstellt wird, das von einem Gerät's MediaStream
abgerufen wird.
const input = document.querySelector('input[type="range"]');
let imageCapture;
navigator.mediaDevices
.getUserMedia({ video: true })
.then((mediaStream) => {
document.querySelector("video").srcObject = mediaStream;
const track = mediaStream.getVideoTracks()[0];
imageCapture = new ImageCapture(track);
return imageCapture.getPhotoCapabilities();
})
.then((photoCapabilities) => {
const settings = imageCapture.track.getSettings();
input.min = photoCapabilities.imageWidth.min;
input.max = photoCapabilities.imageWidth.max;
input.step = photoCapabilities.imageWidth.step;
return imageCapture.getPhotoSettings();
})
.then((photoSettings) => {
input.value = photoSettings.imageWidth;
})
.catch((error) => console.error("Argh!", error.name || error));
Spezifikationen
Specification |
---|
MediaStream Image Capture # dom-imagecapture-getphotosettings |
Browser-Kompatibilität
BCD tables only load in the browser