Mô tả
Dùng API system.display
để truy vấn siêu dữ liệu hiển thị.
Quyền
system.display
Loại
ActiveState
Một giá trị enum cho biết liệu hệ thống có phát hiện và sử dụng màn hình hay không. Màn hình được coi là "không hoạt động" nếu không được hệ thống phát hiện (có thể bị ngắt kết nối hoặc bị coi là đã ngắt kết nối do chế độ ngủ, v.v.). Ví dụ: Trạng thái này được dùng để duy trì màn hình hiện có khi tất cả các màn hình bị ngắt kết nối.
Enum
"đang hoạt động"
"không hoạt động"
Bounds
Thuộc tính
-
độ cao
số
Chiều cao của màn hình tính bằng pixel.
-
trái
số
Toạ độ x của góc trên bên trái.
-
trên cùng
số
Toạ độ y của góc trên bên trái.
-
chiều rộng
số
Chiều rộng của màn hình tính bằng pixel.
DisplayLayout
Thuộc tính
-
id
string
Giá trị nhận dạng duy nhất của màn hình.
-
bù trừ
số
Độ lệch của màn hình dọc theo cạnh được kết nối. 0 cho biết các góc trên cùng hoặc ngoài cùng bên trái được căn chỉnh.
-
parentId
string
Giá trị nhận dạng duy nhất của màn hình mẹ. Để trống nếu đây là thư mục gốc.
-
position
Vị trí bố cục của màn hình này so với thành phần mẹ. Tham số này sẽ bị bỏ qua đối với thư mục gốc.
DisplayMode
Thuộc tính
-
deviceScaleFactor
số
Hệ số tỷ lệ của thiết bị ở chế độ hiển thị.
-
độ cao
số
Chiều cao của chế độ hiển thị, tính bằng pixel (hiển thị người dùng) độc lập với thiết bị.
-
heightInNativePixels
số
Chiều cao của chế độ hiển thị tính bằng pixel gốc.
-
isInterlaced
boolean không bắt buộc
Chrome 74 trở lên"True" nếu chế độ này là chế độ xen kẽ, "false" nếu không cung cấp.
-
isNative
boolean
Đúng nếu chế độ này là chế độ gốc của màn hình.
-
isSelected
boolean
Đúng nếu chế độ hiển thị đang được chọn.
-
refreshRate
số
Chrome 67 trở lênTốc độ làm mới chế độ hiển thị tính bằng hetz.
-
uiScale
số không bắt buộc
Không dùng nữa kể từ Chrome 70Sử dụng
displayZoomFactor
Hệ số tỷ lệ của giao diện người dùng của chế độ hiển thị.
-
chiều rộng
số
Chiều rộng của chế độ hiển thị tính bằng pixel độc lập với thiết bị (người dùng nhìn thấy).
-
widthInNativePixels
số
Chiều rộng của chế độ hiển thị tính bằng pixel gốc.
DisplayProperties
Thuộc tính
-
boundsOriginX
số không bắt buộc
Nếu được đặt, hãy cập nhật nguồn gốc giới hạn logic của màn hình dọc theo trục x. Được áp dụng cùng với
boundsOriginY
. Giá trị mặc định là giá trị hiện tại nếu không được đặt và giá trịboundsOriginY
được đặt. Lưu ý rằng khi cập nhật gốc hiển thị, một số điều kiện ràng buộc sẽ được áp dụng, do đó nguồn gốc giới hạn cuối cùng có thể khác với gốc được đặt. Bạn có thể truy xuất các giới hạn cuối cùng bằng cách sử dụnggetInfo
. Bạn không thể thay đổi nguồn gốc của giới hạn trên màn hình chính. -
boundsOriginY
số không bắt buộc
Nếu được đặt, hãy cập nhật nguồn gốc giới hạn logic của màn hình dọc theo trục y. Hãy xem tài liệu về tham số
boundsOriginX
. -
displayMode
DisplayMode không bắt buộc
Chrome 52 trở lênNếu được đặt, hãy cập nhật chế độ hiển thị thành chế độ khớp với giá trị này. Nếu các thông số khác không hợp lệ, thông số này sẽ không được áp dụng. Nếu chế độ hiển thị không hợp lệ, chế độ này sẽ không được áp dụng và hệ thống sẽ đặt lỗi nhưng vẫn áp dụng các thuộc tính khác.
-
displayZoomFactor
số không bắt buộc
Chrome 65 trở lênNếu được đặt, hãy cập nhật mức thu phóng được liên kết với màn hình. Tính năng thu phóng này thực hiện việc bố cục lại và tô màu lại, do đó dẫn đến việc thu phóng có chất lượng tốt hơn so với chỉ thực hiện phóng to pixel theo pixel.
-
là chính
boolean không bắt buộc
Nếu bạn đặt chính sách này thành true, thì màn hình sẽ được đặt làm màn hình chính. Không hoạt động nếu được đặt thành false. Lưu ý: Nếu được đặt, màn hình sẽ được coi là màn hình chính cho tất cả các thuộc tính khác (tức là có thể đặt
isUnified
nhưng không thể đặt giới hạn gốc). -
isUnified
boolean không bắt buộc
Chrome 59 trở lênChỉ dành cho ChromeOS. Nếu bạn đặt chính sách này thành true, hãy thay đổi chế độ hiển thị thành màn hình hợp nhất (xem
enableUnifiedDesktop
để biết chi tiết). Nếu bạn đặt chính sách này thành false, chế độ màn hình hợp nhất sẽ bị tắt. Giá trị này chỉ hợp lệ với màn hình chính. Nếu được cung cấp, thì bạn không được cung cấp quy trình phản chiếuSourceId và các thuộc tính khác sẽ bị bỏ qua. Điều này không có hiệu lực nếu không được cung cấp. -
mirroringSourceId
chuỗi không bắt buộc
Không dùng nữa kể từ Chrome 68Sử dụng
setMirrorMode
.Chỉ dành cho ChromeOS. Nếu bạn đặt chính sách này và không để trống, chỉ bật tính năng phản chiếu cho màn hình này. Nếu không, hãy tắt tính năng phản chiếu cho tất cả màn hình. Giá trị này phải chỉ ra mã của màn hình nguồn để phản chiếu và không được giống với mã nhận dạng được truyền vào setDisplayProperties. Nếu đã đặt, thì không thể đặt thuộc tính nào khác.
-
quét quá mức
Phần lồng ghép không bắt buộc
Nếu được đặt, hãy đặt phần lồng ghép quá mức quét của màn hình thành các giá trị đã cho. Lưu ý rằng giá trị quét quá mức không được là số âm hoặc lớn hơn một nửa kích thước của màn hình. Không thể thay đổi quá trình quét quá mức trên màn hình trong.
-
xoay
số không bắt buộc
Nếu được đặt, hệ thống sẽ cập nhật chế độ xoay của màn hình. Giá trị pháp lý là [0, 90, 180, 270]. Xoay được đặt theo chiều kim đồng hồ, tương ứng với vị trí dọc của màn hình.
DisplayUnitInfo
Thuộc tính
-
activeStateChrome 117 trở lên
Đang hoạt động nếu màn hình được hệ thống phát hiện và sử dụng.
-
availableDisplayZoomFactors
số[]
Chrome 67 trở lênDanh sách các giá trị hệ số thu phóng có thể được đặt để hiển thị.
-
ranh giới
Giới hạn logic của màn hình.
-
displayZoomFactor
số
Chrome 65 trở lênTỷ lệ giữa mức thu phóng hiện tại và mức thu phóng mặc định của màn hình. Ví dụ: giá trị 1 tương đương với mức thu phóng 100% và giá trị 1,5 tương đương với mức thu phóng 150%.
-
dpiX
số
Số pixel mỗi inch dọc theo trục x.
-
dpiY
số
Số pixel mỗi inch dọc theo trục y.
-
biên tập viên
Edid không bắt buộc
Chrome 67 trở lênLƯU Ý: Tính năng này chỉ dành cho ứng dụng Kiosk Chrome OS và Giao diện người dùng web.
-
hasTouchSupport
boolean
Chrome 57 trở lênĐúng nếu màn hình này liên kết với thiết bị nhập cảm ứng.
-
id
string
Giá trị nhận dạng duy nhất của màn hình.
-
isEnabled
boolean
Đúng nếu màn hình này được bật.
-
là chính
boolean
Đúng nếu đây là màn hình chính.
-
isUnified
boolean
Chrome 59 trở lênĐúng cho tất cả màn hình khi ở chế độ màn hình hợp nhất. Xem tài liệu về
enableUnifiedDesktop
. -
mirroringDestinationIds
chuỗi[]
Chrome 64 trở lênChỉ dành cho ChromeOS. Giá trị nhận dạng của màn hình mà màn hình nguồn đang được phản chiếu tới. Trống nếu không có màn hình nào được phản chiếu. Giá trị này sẽ được đặt thành cùng một giá trị cho tất cả các màn hình. Giá trị này không được bao gồm
mirroringSourceId
. -
mirroringSourceId
string
Chỉ dành cho ChromeOS. Giá trị nhận dạng của màn hình đang được phản chiếu nếu tính năng phản chiếu được bật, nếu không thì sẽ trống. Giá trị này sẽ được đặt cho tất cả các màn hình (bao gồm cả màn hình được phản chiếu).
-
chế độChrome 52 trở lên
Danh sách các chế độ hiển thị hiện có. Chế độ hiện tại sẽ có isSelected=true. Chỉ hoạt động trên ChromeOS. Sẽ được đặt thành một mảng trống trên các nền tảng khác.
-
tên
string
Tên thân thiện với người dùng (ví dụ: "màn hình LCD HP").
-
quét quá mức
Các phần lồng ghép của màn hình nằm trong giới hạn của màn hình. Hiện chỉ hiển thị trên ChromeOS. Sẽ được đặt thành các phần lồng ghép trống trên các nền tảng khác.
-
xoay
số
Độ xoay của màn hình theo chiều kim đồng hồ so với vị trí dọc. Hiện chỉ hiển thị trên ChromeOS. Sẽ được đặt thành 0 trên các nền tảng khác. Giá trị -1 sẽ được hiểu là tự động xoay khi thiết bị ở trạng thái máy tính bảng vật lý.
-
workArea
Khu vực làm việc có thể sử dụng của màn hình trong giới hạn hiển thị. Khu vực làm việc không bao gồm các khu vực màn hình dành riêng cho hệ điều hành, chẳng hạn như thanh tác vụ và trình chạy.
Edid
Thuộc tính
-
manufacturerId
string
Mã gồm 3 ký tự của nhà sản xuất. Xem phần 3.4.1 trang 21. Bắt buộc trong phiên bản 1.4.
-
productId
string
Mã 2 byte do nhà sản xuất chỉ định, Sec. 3.4.2 trang 21. Bắt buộc trong phiên bản 1.4.
-
yearOfManufacture
số
Năm của nhà sản xuất, Sec. 3.4.4 trang 22. Bắt buộc trong phiên bản 1.4.
GetInfoFlags
Thuộc tính
-
singleUnified
boolean không bắt buộc
Nếu bạn đặt chính sách này thành true, thì chỉ
getInfo
sẽ chỉ trả về mộtDisplayUnitInfo
khi ở chế độ màn hình hợp nhất (xemenableUnifiedDesktop
). Giá trị mặc định là false.
Insets
Thuộc tính
-
dưới cùng
số
Khoảng cách trục y tính từ giới hạn dưới.
-
trái
số
Khoảng cách trục x tính từ giới hạn bên trái.
-
phải
số
Khoảng cách trục x tính từ giới hạn bên phải.
-
trên cùng
số
Khoảng cách trục y tính từ giới hạn trên.
LayoutPosition
Vị trí bố cục, tức là cạnh của thành phần mẹ gắn màn hình.
Enum
"trên cùng"
"phải"
"dưới cùng"
"trái"
MirrorMode
Chế độ phản chiếu, tức là các cách khác nhau để phản chiếu một màn hình sang màn hình khác.
Enum
"tắt"
Chỉ định chế độ mặc định (máy tính mở rộng hoặc máy tính hợp nhất).
"normal"
Chỉ định rằng màn hình nguồn mặc định sẽ được phản chiếu sang tất cả các màn hình khác.
"mixed"
Chỉ định rằng màn hình nguồn được chỉ định sẽ được phản chiếu sang màn hình đích đã cung cấp. Tất cả các màn hình đã kết nối khác sẽ được mở rộng.
MirrorModeInfo
Thuộc tính
-
mirroringDestinationIds
string[] không bắt buộc
Mã của đích đến phản chiếu sẽ xuất hiện. Giá trị này chỉ hợp lệ đối với trường "hỗn hợp".
-
mirroringSourceId
chuỗi không bắt buộc
Mã của màn hình nguồn phản chiếu. Giá trị này chỉ hợp lệ đối với trường "hỗn hợp".
-
chế độ
Chế độ phản chiếu mà bạn nên đặt.
Point
Thuộc tính
-
x
số
Toạ độ x của điểm.
-
y
số
Toạ độ y của điểm.
TouchCalibrationPair
Thuộc tính
-
displayPoint
Toạ độ của điểm hiển thị.
-
touchPoint
Toạ độ của điểm tiếp xúc tương ứng với điểm hiển thị.
TouchCalibrationPairQuad
Thuộc tính
-
pair1
Cần có cặp điểm chạm và điểm hiển thị đầu tiên để hiệu chỉnh cảm ứng.
-
pair2
Cần có cặp điểm chạm và điểm hiển thị thứ hai để hiệu chỉnh cảm ứng.
-
pair3
Cần có cặp điểm chạm và điểm hiển thị thứ ba để hiệu chỉnh cảm ứng.
-
pair4
Cần có cặp điểm chạm và điểm hiển thị thứ tư để hiệu chỉnh cảm ứng.
Phương thức
clearTouchCalibration()
chrome.system.display.clearTouchCalibration(
id: string,
)
Đặt lại hoạt động hiệu chỉnh cảm ứng cho màn hình và đưa màn hình trở về trạng thái mặc định bằng cách xoá mọi dữ liệu hiệu chỉnh cảm ứng liên quan đến màn hình.
Tham số
-
id
string
Giá trị nhận dạng duy nhất của màn hình.
completeCustomTouchCalibration()
chrome.system.display.completeCustomTouchCalibration(
pairs: TouchCalibrationPairQuad,
bounds: Bounds,
)
Đặt các cặp hiệu chỉnh cảm ứng cho một màn hình. pairs
này sẽ được dùng để hiệu chỉnh màn hình cảm ứng cho màn hình với id
được gọi trong startCustomTouchCalibration(). Luôn gọi startCustomTouchCalibration
trước khi gọi phương thức này. Nếu đang trong quá trình hiệu chỉnh cảm ứng khác, hệ thống sẽ báo lỗi.
Tham số
-
Các cặp điểm dùng để hiệu chỉnh màn hình.
-
ranh giới
Các ranh giới của màn hình khi thực hiện hiệu chỉnh cảm ứng. Các giá trị
bounds.left
vàbounds.top
sẽ bị bỏ qua.
enableUnifiedDesktop()
chrome.system.display.enableUnifiedDesktop(
enabled: boolean,
)
Bật/tắt tính năng màn hình hợp nhất. Nếu bạn bật tính năng phản chiếu trong khi tính năng phản chiếu đang hoạt động, thì chế độ máy tính sẽ không thay đổi cho đến khi tính năng phản chiếu bị tắt. Nếu không, chế độ máy tính để bàn sẽ chuyển sang chế độ hợp nhất ngay lập tức. LƯU Ý: Tính năng này chỉ dành cho ứng dụng Kiosk Chrome OS và Giao diện người dùng web.
Tham số
-
đang bật
boolean
Đúng nếu bật màn hình hợp nhất.
getDisplayLayout()
chrome.system.display.getDisplayLayout(
callback?: function,
)
Yêu cầu thông tin bố cục cho tất cả màn hình. LƯU Ý: Tính năng này chỉ dành cho ứng dụng Kiosk Chrome OS và Giao diện người dùng web.
Tham số
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:(layouts: DisplayLayout[]) => void
-
bố cục
-
Giá trị trả về
-
Promise<DisplayLayout[]>
Chrome 91 trở lênLời hứa chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.
getInfo()
chrome.system.display.getInfo(
flags?: GetInfoFlags,
callback?: function,
)
Yêu cầu thông tin cho tất cả thiết bị hiển thị đi kèm.
Tham số
-
flags
GetInfoFlags không bắt buộc
Chrome 59 trở lênCác tuỳ chọn ảnh hưởng đến cách thông tin được trả về.
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:(displayInfo: DisplayUnitInfo[]) => void
-
displayInfo
-
Giá trị trả về
-
Promise<DisplayUnitInfo[]>
Chrome 91 trở lênLời hứa chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.
overscanCalibrationAdjust()
chrome.system.display.overscanCalibrationAdjust(
id: string,
delta: Insets,
)
Điều chỉnh phần lồng ghép quét quá mức hiện tại cho màn hình. Thông thường, thao tác này nên di chuyển màn hình dọc theo một trục (ví dụ: trái + phải có cùng giá trị) hoặc điều chỉnh theo tỷ lệ dọc theo một trục (ví dụ: trên cùng + dưới cùng có các giá trị đối nhau). Mỗi lệnh gọi Adjust được tích luỹ từ các lệnh gọi trước đó kể từ khi Bắt đầu.
Tham số
-
id
string
Giá trị nhận dạng duy nhất của màn hình.
-
delta
Số lượng để thay đổi các phần lồng ghép quét quá mức.
overscanCalibrationComplete()
chrome.system.display.overscanCalibrationComplete(
id: string,
)
Hoàn tất điều chỉnh quét quá mức cho màn hình bằng cách lưu các giá trị hiện tại và ẩn lớp phủ.
Tham số
-
id
string
Giá trị nhận dạng duy nhất của màn hình.
overscanCalibrationReset()
chrome.system.display.overscanCalibrationReset(
id: string,
)
Đặt lại các phần lồng ghép quét quá mức của một màn hình về giá trị được lưu gần đây nhất (tức là trước khi gọi Bắt đầu).
Tham số
-
id
string
Giá trị nhận dạng duy nhất của màn hình.
overscanCalibrationStart()
chrome.system.display.overscanCalibrationStart(
id: string,
)
Bắt đầu hiệu chỉnh quét quá mức cho màn hình. Thao tác này sẽ hiển thị một lớp phủ trên màn hình cho biết phần lồng ghép quét quá mức hiện tại. Nếu quá trình hiệu chỉnh quét quá mức cho màn hình id
đang diễn ra, thao tác này sẽ đặt lại hiệu chỉnh.
Tham số
-
id
string
Giá trị nhận dạng duy nhất của màn hình.
setDisplayLayout()
chrome.system.display.setDisplayLayout(
layouts: DisplayLayout[],
callback?: function,
)
Đặt bố cục cho tất cả các màn hình. Mọi màn hình không được đưa vào sẽ sử dụng bố cục mặc định. Nếu một bố cục chồng chéo hoặc không hợp lệ thì bố cục đó sẽ được điều chỉnh thành bố cục hợp lệ. Sau khi bố cục được phân giải, sự kiện onDisplayChanged sẽ được kích hoạt. LƯU Ý: Tính năng này chỉ dành cho ứng dụng Kiosk Chrome OS và Giao diện người dùng web.
Tham số
-
bố cục
Thông tin bố cục, bắt buộc đối với tất cả các màn hình ngoại trừ màn hình chính.
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:() => void
Giá trị trả về
-
Lời hứa<vô hiệu>
Chrome 91 trở lênLời hứa chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.
setDisplayProperties()
chrome.system.display.setDisplayProperties(
id: string,
info: DisplayProperties,
callback?: function,
)
Cập nhật các thuộc tính cho màn hình do id
chỉ định, theo thông tin được cung cấp trong info
. Nếu không thành công, runtime.lastError
sẽ được đặt. LƯU Ý: Tính năng này chỉ dành cho ứng dụng Kiosk Chrome OS và Giao diện người dùng web.
Tham số
-
id
string
Giá trị nhận dạng duy nhất của màn hình.
-
info
Thông tin về các thuộc tính hiển thị cần được thay đổi. Một thuộc tính sẽ chỉ được thay đổi nếu bạn chỉ định giá trị mới cho thuộc tính đó trong
info
. -
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:() => void
Giá trị trả về
-
Lời hứa<vô hiệu>
Chrome 91 trở lênLời hứa chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.
setMirrorMode()
chrome.system.display.setMirrorMode(
info: MirrorModeInfo,
callback?: function,
)
Đặt chế độ hiển thị thành chế độ phản chiếu được chỉ định. Mỗi cuộc gọi sẽ đặt lại trạng thái từ các cuộc gọi trước đó. Lệnh gọi setDisplayProperties() sẽ không thành công cho màn hình đích phản chiếu. LƯU Ý: Tính năng này chỉ dành cho ứng dụng Kiosk Chrome OS và Giao diện người dùng web.
Tham số
-
info
Thông tin của chế độ phản chiếu sẽ được áp dụng cho chế độ hiển thị.
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:() => void
Giá trị trả về
-
Lời hứa<vô hiệu>
Chrome 91 trở lênLời hứa chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.
showNativeTouchCalibration()
chrome.system.display.showNativeTouchCalibration(
id: string,
callback?: function,
)
Hiển thị trải nghiệm người dùng hiệu chỉnh cảm ứng gốc cho màn hình với id
dưới dạng mã hiển thị. Thao tác này sẽ hiển thị một lớp phủ trên màn hình cùng với hướng dẫn bắt buộc về cách tiếp tục. Lệnh gọi lại sẽ chỉ được gọi trong trường hợp hiệu chỉnh thành công. Nếu quá trình hiệu chỉnh không thành công, hệ thống sẽ báo lỗi.
Tham số
-
id
string
Giá trị nhận dạng duy nhất của màn hình.
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:(success: boolean) => void
-
thành công
boolean
-
Giá trị trả về
-
Promise<boolean>
Chrome 91 trở lênLời hứa chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.
startCustomTouchCalibration()
chrome.system.display.startCustomTouchCalibration(
id: string,
)
Bắt đầu hiệu chỉnh cảm ứng tuỳ chỉnh cho màn hình. Lệnh này sẽ được gọi khi bạn sử dụng trải nghiệm người dùng tuỳ chỉnh để thu thập dữ liệu hiệu chỉnh. Nếu đang trong quá trình hiệu chỉnh cảm ứng khác, hệ thống sẽ báo lỗi.
Tham số
-
id
string
Giá trị nhận dạng duy nhất của màn hình.
Sự kiện
onDisplayChanged
chrome.system.display.onDisplayChanged.addListener(
callback: function,
)
Được kích hoạt khi có bất kỳ thay đổi nào đối với cấu hình hiển thị.
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:() => void