27 个版本

0.5.1 2024 年 4 月 27 日
0.5.0 2024 年 3 月 5 日
0.4.9 2024 年 3 月 3 日
0.4.4 2023 年 12 月 22 日
0.3.2 2022 年 7 月 31 日

#328 in 图像

Download history 747/week @ 2024-05-03 679/week @ 2024-05-10 688/week @ 2024-05-17 586/week @ 2024-05-24 814/week @ 2024-05-31 862/week @ 2024-06-07 807/week @ 2024-06-14 1131/week @ 2024-06-21 606/week @ 2024-06-28 660/week @ 2024-07-05 649/week @ 2024-07-12 660/week @ 2024-07-19 1022/week @ 2024-07-26 1157/week @ 2024-08-02 969/week @ 2024-08-09 637/week @ 2024-08-16

3,923 每月下载量
18 个 crate 中使用 (6 个直接使用)

自定义许可证

26KB
587 代码行

display-info

跨平台获取 MacOS、Windows、Linux 的显示信息。类似于 electron 显示对象

示例

use display_info::DisplayInfo;
use std::time::Instant;

fn main() {
  let start = Instant::now();

  let display_infos = DisplayInfo::all().unwrap();
  for display_info in display_infos {
    println!("display_info {display_info:?}");
  }
  let display_info = DisplayInfo::from_point(100, 100).unwrap();
  println!("display_info {display_info:?}");
  println!("运行耗时: {:?}", start.elapsed());
}

DisplayInfo 结构体

  • id u32 - 与显示关联的唯一标识符。
  • name String - 显示的名称
  • raw_handle CGDisplay/HMONITOR/Output - 原生显示原始句柄
  • x i32 - 显示的 x 坐标。
  • y i32 - 显示的 y 坐标。
  • width u32 - 显示的像素宽度。
  • height u32 - 显示的像素高度。
  • rotation f32 - 可以是 0, 90, 180, 270,表示屏幕旋转的顺时针度数。
  • scale_factor f32 - 输出设备的像素缩放因子。
  • frequency f32 - 显示的刷新率。
  • is_primary bool - 是否是主屏幕

Linux 系统需求

在 Linux 上,您需要安装 libxcblibxrandr

Debian/Ubuntu

apt-get install libxcb1 libxrandr2

Alpine

apk add libxcb libxrandr

ArchLinux

pacman -S libxcb libxrandr

最低支持的 Windows 2000 Professional/Server

使用功能 gdi

依赖项

~0.1–40MB
~627K SLoC