ImageCapture: метод getPhotoSettings()
Экспериментально: Это экспериментальная технология .
Перед использованием в продакшене внимательно ознакомьтесь со таблицей совместимости браузеров.
Метод getPhotoSettings() интерфейса ImageCapture возвращает Promise, который разрешается объектом, содержащим текущие настройки фото.
Синтаксис
getPhotoSettings()
Параметры
Нет.
Возвращаемое значение
A Promise, который разрешается объектом, содержащим следующие свойства:
fillLightMode-
Настройка вспышки устройства захвата, одна из
"auto","off", или"flash". imageHeight-
Желаемая высота изображения в виде целого числа. Браузер выбирает ближайшее значение ширины к этому параметру, если поддерживаются только дискретные значения высоты.
imageWidth-
Желаемая ширина изображения в виде целого числа. Браузер выбирает ближайшее значение ширины к этому параметру, если поддерживаются только дискретные значения ширины.
redEyeReduction-
Логическое значение, указывающее, следует ли использовать функцию уменьшения эффекта красных глаз, если она доступна.
Исключения
-
InvalidStateErrorDOMException -
Выбрасывается, если свойство
readyStateобъектаMediaStreamTrack, переданного в конструктор, не равноlive. -
OperationErrorDOMException -
Выбрасывается, если операция не может быть выполнена по какой-либо причине.
Примеры
В следующем примере, взятом из примера Chrome Image Capture / Photo Resolution, результаты работы getPhotoSettings() используются для изменения размера входного ползунка. Этот пример также демонстрирует, как объект ImageCapture создается с использованием объекта MediaStreamTrack, полученного из потока медиа MediaStream устройства.
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));
Спецификации
Совместимость браузеров
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
getPhotoSettings |
61 | 79 | Нет | 46 | 17.4 | 61 | Нет | 43 | 17.4 | 8.0 | 61 |
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/ImageCapture/getPhotoSettings