Описание
Используйте API system.display для запроса метаданных дисплея.
Разрешения
system.display Типы
ActiveState
Перечисление, указывающее, обнаружен ли дисплей и используется ли он системой. Дисплей считается «неактивным», если он не обнаружен системой (возможно, отключен или считается отключенным из-за спящего режима и т. д.). Это состояние используется, например, для сохранения текущего состояния дисплея, когда все остальные дисплеи отключены.
Перечисление
"активный" «неактивный»
Bounds
Характеристики
- высота
число
Высота дисплея в пикселях.
- левый
число
Координата x верхнего левого угла.
- вершина
число
Координата Y верхнего левого угла.
- ширина
число
Ширина дисплея в пикселях.
DisplayLayout
Характеристики
- идентификатор
нить
Уникальный идентификатор дисплея.
- компенсировать
число
Смещение дисплея вдоль соединенного края. 0 означает, что выровнены самые верхние или самые левые углы.
- parentId
нить
Уникальный идентификатор родительского элемента отображения. Если это корневой элемент, поле пустое.
- позиция
Позиция этого элемента относительно родительского элемента. Для корневого элемента это значение будет проигнорировано.
DisplayMode
Характеристики
- deviceScaleFactor
число
Масштабный коэффициент устройства в режиме отображения.
- высота
число
Высота в режиме отображения в пикселях, не зависящих от устройства (видимых пользователю).
- высотаВНативныхПикселях
число
Высота в режиме отображения в пикселях.
- isInterlaced
логический необязательный
Chrome 74+Если режим чересстрочный, то значение равно true, если не указан.
- isNative
логический
Возвращает true, если режим соответствует собственному режиму дисплея.
- выбрано
логический
Возвращает true, если в данный момент выбран режим отображения.
- refreshRate
число
Chrome 67+Частота обновления экрана в герцах.
- uiScale
число необязательно
Устарело с версии Chrome 70.Используйте
displayZoomFactorКоэффициент масштабирования пользовательского интерфейса в режиме отображения.
- ширина
число
Ширина в режиме отображения в пикселях, не зависящих от устройства (видимых пользователю).
- widthInNativePixels
число
Ширина в режиме отображения в собственных пикселях.
DisplayProperties
Характеристики
- boundsOriginX
число необязательно
Если задано, обновляет начало логических границ дисплея вдоль оси X. Применяется вместе с
boundsOriginY. По умолчанию используется текущее значение, если не задано и заданоboundsOriginY. Обратите внимание, что при обновлении начала координат дисплея будут применяться некоторые ограничения, поэтому окончательное начало координат может отличаться от заданного. Окончательные границы можно получить с помощьюgetInfo. Начало координат нельзя изменить на основном дисплее. - boundsOriginY
число необязательно
Если задано, обновляет начало логических границ дисплея вдоль оси Y. См. документацию по параметру
boundsOriginX. - displayMode
DisplayMode (необязательно)
Chrome 52+Если задано, режим отображения обновляется до режима, соответствующего этому значению. Если другие параметры недопустимы, это изменение не будет применено. Если режим отображения недопустим, он не будет применен, и будет установлена ошибка, но остальные свойства будут применены.
- displayZoomFactor
число необязательно
Chrome 65+Если задано, обновляет масштаб, связанный с дисплеем. Этот масштаб выполняет перекомпоновку и перерисовку, что обеспечивает более высокое качество масштабирования, чем простое попиксельное увеличение.
- isPrimary
логический необязательный
Если установлено значение true, дисплей становится основным. Если установлено значение false, ничего не происходит. Примечание: если установлено значение true, дисплей считается основным для всех остальных свойств (например,
isUnifiedможет быть задано, а bounds origin — нет). - isUnified
логический необязательный
Chrome 59+Только для ChromeOS. Если установлено значение true, режим отображения переключается на единый рабочий стол (подробнее см.
enableUnifiedDesktop). Если установлено значение false, режим единого рабочего стола будет отключен. Это справедливо только для основного дисплея. Если параметр mirroringSourceId указан, его указывать не следует, а другие свойства будут игнорироваться. Если этот параметр не указан, он не оказывает никакого эффекта. - mirroringSourceId
строка необязательный
Устарело с версии Chrome 68.Используйте
setMirrorMode.Только для ChromeOS. Если задано и не пусто, включает зеркальное отображение только для этого дисплея. В противном случае отключает зеркальное отображение для всех дисплеев. Это значение должно указывать идентификатор исходного дисплея для зеркального отображения, который не должен совпадать с идентификатором, переданным в setDisplayProperties. Если задано, никакие другие свойства устанавливаться не могут.
- пересканирование
Вставки необязательны
Если задано, устанавливает значения пересканирования для дисплея равными указанным значениям. Обратите внимание, что значения пересканирования не могут быть отрицательными или превышать половину размера экрана. Значение пересканирования нельзя изменить на встроенном мониторе.
- вращение
число необязательно
Если задано, обновляет поворот дисплея. Допустимые значения: [0, 90, 180, 270]. Поворот устанавливается по часовой стрелке относительно вертикального положения дисплея.
DisplayUnitInfo
Характеристики
- активное состояниеChrome 117+
Активно, если дисплей обнаружен и используется системой.
- доступные параметры отображения ZoomFactors
число[]
Chrome 67+Список значений коэффициента масштабирования, которые можно установить для отображения.
- границы
Логические границы дисплея.
- displayZoomFactor
число
Chrome 65+Соотношение между текущим и стандартным масштабированием дисплея. Например, значение 1 соответствует 100% масштабированию, а значение 1,5 — 150% масштабированию.
- dpiX
число
Количество пикселей на дюйм вдоль оси X.
- dpiY
число
Количество пикселей на дюйм по оси Y.
- edid
Эдид необязателен
Chrome 67+Примечание: Эта функция доступна только для приложений ChromeOS Kiosk и веб-интерфейса.
- hasTouchSupport
логический
Chrome 57+Возвращает true, если к этому дисплею подключено устройство сенсорного ввода.
- идентификатор
нить
Уникальный идентификатор дисплея.
- включено
логический
Возвращает true, если этот дисплей включен.
- isPrimary
логический
Верно, если это основной дисплей.
- isUnified
логический
Chrome 59+Это справедливо для всех дисплеев в режиме унифицированного рабочего стола. См. документацию по параметру
enableUnifiedDesktop. - mirroringDestinationIds
нить[]
Chrome 64+Только для ChromeOS. Идентификаторы дисплеев, на которые дублируется изображение с исходного дисплея. Пусто, если дублирование не выполняется. Для всех дисплеев будет установлено одно и то же значение. Не должно включать
mirroringSourceId. - mirroringSourceId
нить
Только для ChromeOS. Идентификатор зеркалируемого дисплея, если функция зеркального отображения включена, в противном случае — пустое значение. Этот параметр будет установлен для всех дисплеев (включая зеркалируемый).
- режимы
DisplayMode []
Chrome 52+Список доступных режимов отображения. Текущий режим будет иметь значение isSelected=true. Доступно только в ChromeOS. На других платформах будет установлено пустое значение в виде массива.
- имя
нить
Удобное для пользователя название (например, "ЖК-монитор HP").
- пересканирование
Отступы дисплея находятся в пределах границ экрана. В настоящее время отображаются только в ChromeOS. На других платформах отступы будут установлены на пустые значения.
- вращение
число
Поворот дисплея по часовой стрелке в градусах относительно вертикального положения. В настоящее время доступен только в ChromeOS. На других платформах будет установлен на 0. Значение -1 будет интерпретироваться как автоматический поворот, когда устройство находится в физическом состоянии планшета.
- рабочая зона
Рабочая область, доступная для использования на экране, находится в пределах границ дисплея. Рабочая область не включает области экрана, зарезервированные для операционной системы, например, панель задач и панель запуска.
Edid
Характеристики
- manufacturerId
нить
Трехсимвольный код производителя. См. раздел 3.4.1, стр. 21. Требуется в версии 1.4.
- продуктId
нить
2-байтовый код, присвоенный производителем, раздел 3.4.2, страница 21. Требуется в версии 1.4.
- год производства
число
Год выпуска, раздел 3.4.4, страница 22. Требуется в версии 1.4.
GetInfoFlags
Характеристики
- singleUnified
логический необязательный
Если установлено значение true, функция
getInfoвернет только одинDisplayUnitInfoв режиме унифицированного рабочего стола (см.enableUnifiedDesktop). По умолчанию — false.
Insets
Характеристики
- нижний
число
Расстояние по оси Y от нижней границы.
- левый
число
Расстояние по оси x от левой границы.
- верно
число
Расстояние по оси x от правой границы.
- вершина
число
Расстояние по оси Y от верхней границы.
LayoutPosition
Положение при компоновке, то есть край родительского элемента, к которому прикреплен дисплей.
Перечисление
"вершина" "верно" "нижний" "левый"
MirrorMode
Режим зеркального отображения, то есть различные способы зеркального отображения одного экрана на других экранах.
Перечисление
"выключенный" "нормальный" "смешанный"
Указывает режим по умолчанию (расширенный или унифицированный рабочий стол).
Указывает, что изображение с основного дисплея будет дублироваться на всех остальных дисплеях.
Указывает, что изображение с указанного исходного дисплея будет дублироваться на указанные целевые дисплеи. Все остальные подключенные дисплеи будут отображаться в расширенном виде.
MirrorModeInfo
Характеристики
- mirroringDestinationIds
строка[] необязательный
Отображаются идентификаторы целевого объекта зеркалирования. Это справедливо только для «смешанного» режима.
- mirroringSourceId
строка необязательный
Идентификатор дисплея источника зеркалирования. Это значение действительно только для режима «смешанный».
- режим
Режим зеркального отображения, который следует установить.
Point
Характеристики
- х
число
Координата x точки.
- й
число
Y-координата точки.
TouchCalibrationPair
Характеристики
- displayPoint
Координаты точки отображения.
- точка контакта
Координаты точки касания, соответствующей точке отображения.
TouchCalibrationPairQuad
Характеристики
- пара1
Первая пара точек касания и дисплея необходима для калибровки сенсорного экрана.
- пара2
Для калибровки сенсорного экрана необходима вторая пара точек касания и отображения.
- пара3
Для калибровки сенсорного экрана необходима третья пара точек касания и отображения.
- пара4
Для калибровки сенсорного экрана необходима четвертая пара точек касания и отображения.
Методы
clearTouchCalibration()
chrome.system.display.clearTouchCalibration(
id: string,
): void
Сбрасывает калибровку сенсорного экрана и возвращает его в состояние по умолчанию, удаляя все связанные с дисплеем данные калибровки сенсорного экрана.
Параметры
- идентификатор
нить
Уникальный идентификатор дисплея.
completeCustomTouchCalibration()
chrome.system.display.completeCustomTouchCalibration(
pairs: TouchCalibrationPairQuad,
bounds: Bounds,
): void
Задает пары параметров калибровки сенсорного экрана для дисплея. Эти pairs будут использоваться для калибровки сенсорного экрана дисплея с id , вызываемым в методе startCustomTouchCalibration(). Всегда вызывайте startCustomTouchCalibration перед вызовом этого метода. Если уже выполняется другая калибровка сенсорного экрана, это вызовет ошибку.
Параметры
Пары точек, используемые для калибровки дисплея.
- границы
Границы дисплея во время калибровки сенсорного экрана. Значения
bounds.leftиbounds.topигнорируются.
enableUnifiedDesktop()
chrome.system.display.enableUnifiedDesktop(
enabled: boolean,
): void
Включает/отключает функцию единого рабочего стола. Если включено во время активного зеркального отображения, режим рабочего стола не изменится до тех пор, пока зеркальное отображение не будет отключено. В противном случае режим рабочего стола немедленно переключится на единый. ПРИМЕЧАНИЕ: Эта функция доступна только для приложений ChromeOS Kiosk и веб-интерфейса.
Параметры
- включено
логический
Возвращает true, если необходимо включить унифицированный рабочий стол.
getDisplayLayout()
chrome.system.display.getDisplayLayout(): Promise<DisplayLayout[]>
Запрашивает информацию о расположении элементов на всех дисплеях. ПРИМЕЧАНИЕ: Эта функция доступна только для приложений ChromeOS Kiosk и веб-интерфейса.
Возвраты
Promise< DisplayLayout []>
Chrome 91+Обещание, которое выполняется по результатам.
getInfo()
chrome.system.display.getInfo(
flags?: GetInfoFlags,
): Promise<DisplayUnitInfo[]>
Запрашивает информацию обо всех подключенных устройствах отображения.
Параметры
- флаги
GetInfoFlags (необязательно)
Chrome 59+Параметры, влияющие на способ возврата информации.
Возвраты
Promise< DisplayUnitInfo []>
Chrome 91+Обещание, которое выполняется по результатам.
overscanCalibrationAdjust()
chrome.system.display.overscanCalibrationAdjust(
id: string,
delta: Insets,
): void
Корректирует текущие значения перекрытия для дисплея. Как правило, это означает либо перемещение дисплея вдоль оси (например, левая и правая стороны имеют одинаковое значение), либо масштабирование вдоль оси (например, верхняя и нижняя части имеют противоположные значения). Каждый вызов Adjust суммируется с предыдущими вызовами после Start.
Параметры
- идентификатор
нить
Уникальный идентификатор дисплея.
- дельта
Величина, на которую следует изменить значения вставки пересканирования.
overscanCalibrationComplete()
chrome.system.display.overscanCalibrationComplete(
id: string,
): void
Выполните полную настройку перекрытия изображения на дисплее, сохранив текущие значения и скрыв наложение.
Параметры
- идентификатор
нить
Уникальный идентификатор дисплея.
overscanCalibrationReset()
chrome.system.display.overscanCalibrationReset(
id: string,
): void
Сбрасывает значения параметров перекрытия для дисплея до последнего сохраненного значения (т.е. до вызова функции Start).
Параметры
- идентификатор
нить
Уникальный идентификатор дисплея.
overscanCalibrationStart()
chrome.system.display.overscanCalibrationStart(
id: string,
): void
Запускает калибровку пересканирования для дисплея. При этом на экране отобразится наложение с указанием текущих значений пересканирования. Если калибровка пересканирования для дисплея id уже выполняется, эта функция сбросит калибровку.
Параметры
- идентификатор
нить
Уникальный идентификатор дисплея.
setDisplayLayout()
chrome.system.display.setDisplayLayout(
layouts: DisplayLayout[],
): Promise<void>
Задайте макет для всех дисплеев. Для всех дисплеев, не включенных в список, будет использоваться макет по умолчанию. Если макет перекрывает другие элементы или является недействительным по другим причинам, он будет скорректирован до допустимого макета. После определения макета будет запущено событие onDisplayChanged. ПРИМЕЧАНИЕ: Эта функция доступна только для приложений ChromeOS Kiosk и веб-интерфейса.
Параметры
- макеты
Информация о расположении элементов интерфейса, необходимая для всех дисплеев, кроме основного.
Возвраты
Обещание<пустота>
Chrome 91+Промис, который разрешается по завершении функции.
setDisplayProperties()
chrome.system.display.setDisplayProperties(
id: string,
info: DisplayProperties,
): Promise<void>
Обновляет свойства дисплея, указанного id , в соответствии с информацией, предоставленной в info . В случае ошибки будет установлено значение runtime.lastError . ПРИМЕЧАНИЕ: Эта функция доступна только для приложений ChromeOS Kiosk и веб-интерфейса.
Параметры
- идентификатор
нить
Уникальный идентификатор дисплея.
- информация
Информация о свойствах отображения, которые следует изменить. Свойство будет изменено только в том случае, если для него указано новое значение в
info.
Возвраты
Обещание<пустота>
Chrome 91+Промис, который разрешается по завершении функции.
setMirrorMode()
chrome.system.display.setMirrorMode(
info: MirrorModeInfo,
): Promise<void>
Устанавливает режим отображения в указанный режим зеркального отображения. Каждый вызов сбрасывает состояние по сравнению с предыдущими вызовами. Вызов setDisplayProperties() завершится ошибкой для целевых дисплеев зеркального отображения. ПРИМЕЧАНИЕ: Эта функция доступна только для приложений ChromeOS Kiosk и веб-интерфейса.
Параметры
- информация
Информация о режиме зеркального отображения, которая должна применяться к режиму отображения.
Возвраты
Обещание<пустота>
Chrome 91+Промис, который разрешается по завершении функции.
showNativeTouchCalibration()
chrome.system.display.showNativeTouchCalibration(
id: string,
): Promise<boolean>
Отображает встроенный интерфейс калибровки сенсорного экрана для дисплея с id соответствующим идентификатору дисплея. На экране появится всплывающее окно с необходимыми инструкциями по дальнейшим действиям. Функция обратного вызова будет вызвана только в случае успешной калибровки. Если калибровка не удастся, будет выдана ошибка.
Параметры
- идентификатор
нить
Уникальный идентификатор дисплея.
Возвраты
Promise<boolean>
Chrome 91+Обещание, которое информирует вызывающего абонента о завершении калибровки сенсорного экрана. Логическое значение указывает, была ли калибровка успешной или нет.
startCustomTouchCalibration()
chrome.system.display.startCustomTouchCalibration(
id: string,
): void
Запускает пользовательскую калибровку сенсорного экрана. Эту функцию следует вызывать при использовании пользовательского интерфейса для сбора данных калибровки. Если уже выполняется другая калибровка сенсорного экрана, это вызовет ошибку.
Параметры
- идентификатор
нить
Уникальный идентификатор дисплея.
События
onDisplayChanged
chrome.system.display.onDisplayChanged.addListener(
callback: function,
)
Срабатывает при любых изменениях в конфигурации дисплея.
Параметры
- перезвонить
функция
Параметр
callbackвыглядит следующим образом:() => void