chrome.system.display

描述 使用 chrome.system.display API 查询显示器的元数据。
可用版本 从 Chrome 30 开始支持。
权限 "system.display"

摘要

类型
Bounds
Insets
方法
getInfo chrome.system.display.getInfo(function callback)
setDisplayProperties chrome.system.display.setDisplayProperties(string id, object info, function callback)
事件
onDisplayChanged

类型

Bounds

属性
integer left

左上角的 X 坐标。

integer top

左上角的 Y 坐标。

integer width

显示器宽度,以像素为单位。

integer height

显示器高度,以像素为单位。

Insets

属性
integer left

与左边界之间的 x 轴距离。

integer top

与顶部边界之间的 y 轴距离。

integer right

与右边界之间的 x 轴距离。

integer bottom

与底部边界之间的 y 轴距离。

方法

getInfo

chrome.system.display.getInfo(function callback)

获取所有已连接显示设备的信息。

参数
function callback

callback 参数应该是一个如下形式的函数:

function(array of object displayInfo) {...};
array of object displayInfo

每一个对象的属性

string id

显示器的唯一标识符。

string name

用户友好的名称(例如“HP LCD monitor”)。

string mirroringSourceId

在显示单元上镜像的显示器标识符,如果没有镜像则设为空字符串。当前仅在 Chrome OS 上可用,在其他平台上为空字符串。

boolean isPrimary

如果是主显示器则为 true。

boolean isInternal

如果是内部显示器则为 true。

boolean isEnabled

如果显示器已启用则为 true。

double dpiX

沿着宽度方向每英寸的像素数目。

double dpiY

沿着高度方向每英寸的像素数目。

integer rotation

显示器相对与垂直位置顺时针转过的角度。目前仅在 Chrome OS 上可用,在其他平台上设置为 0。

Bounds bounds

显示器的逻辑范围。

Insets overscan

显示器在其屏幕范围内的位置。目前仅在 Chrome OS 上可用,在其他平台上为空。

Bounds workArea

显示器在显示器范围内的可用工作区域,该工作区域不包括保留给操作系统(例如任务栏与执行器)的显示区域。

setDisplayProperties

chrome.system.display.setDisplayProperties(string id, object info, function callback)

根据 info 中提供的信息更新 id 指定的显示器属性。如果失败会设置 runtime.lastError

参数
string id

显示器的唯一标识符。

object info

要更改的显示器属性的信息,只有在 info 中指定新值时属性才会更改。

string (可选)
mirroringSourceId

如果设置了该参数并且不为空,开始当前显示器与指定标识符的显示器之间的镜像(系统会确定镜像哪一个显示器)。如果设置了该参数并且为空,停止当前显示器与指定标识符的显示器之间的镜像(如果正在镜像)。设置了该参数后,不能设置其他参数。

boolean (可选)
isPrimary

如果设置为 true,使当前显示器变成主显示器。设置为 false 则不进行任何操作。

Insets (可选)
overscan

如果设置了该参数,将显示器的过扫描设置为指定值。注意,过扫描值不能为负,也不能大于屏幕大小的一半,内部显示器的过扫描值不能更改。该参数在 isPrimary 参数之后应用。

integer (可选)
rotation

如果设置了该参数,更新显示器的旋转角度,有效值包括 0、90、18、270,相对于显示器的垂直位置顺时针旋转。该参数在 overscan 参数之后应用。

integer (可选)
boundsOriginX

如果设置了该参数,更新显示器沿 x 轴方向的逻辑范围原点,如果设置了 boundsOriginY 的话与 boundsOriginY 同时应用。注意,更新显示器原点时可能会有一些约束,最终的范围原点可能与设置的不一样,最终的范围可以使用 getInfo 获取。范围原点在 rotation 之后应用,不能在主显示器上更改。注意,如果还设置了 isPrimary 就不能再设置范围原点值,因为首先应用 isPrimary 参数。

integer (可选)
boundsOriginY

如果设置了该参数,更新显示器沿 y 轴方向的逻辑范围原点。参见 boundsOriginX 参数的文档。

function (可选)
callback

该函数完成时调用的空函数,要想确定函数是否成功,可以查询 runtime.lastError

如果您指定了 callback 参数,它应该是一个如下形式的函数:

function() {...};

事件

onDisplayChanged

Fired when anything changes to the display configuration.

addListener

chrome.system.display.onDisplayChanged.addListener(function callback)
参数
function callback

callback 参数应该是一个如下形式的函数:

function() {...};