7个版本

0.3.1 2023年9月21日
0.3.0 2023年9月21日
0.2.1 2023年9月19日
0.2.0 2020年5月11日
0.1.2 2020年5月10日

#248 in 操作系统

MIT许可证

34KB
483

Rust对Linux帧缓冲区API的接口

Crate version

Crate license

Build

提供对Linux帧缓冲区API(linux/fb.h)的安全、Rust风格的包装。

在线文档

功能与范围

  • 发现并打开帧缓冲区设备
  • 从设备读取有用信息,例如
    • 显示尺寸,以像素和毫米为单位
    • 像素级布局(颜色通道,每像素字节数)
    • 虚拟显示尺寸,用于滚动,双缓冲等。
  • 修改虚拟尺寸,滚动偏移和每像素字节数(对于某些驱动程序,这允许在32位和16位模式之间切换)
  • 设置空白模式(开关屏幕)
  • 将设备映射到内存中(为您提供可写入的 &mut [u8] 切片)
  • 可选包装提供双缓冲表面,可以“翻转”

此软件包不处理以下内容

  • 任何类型的绘图(您将获得一个缓冲区,填充它取决于您)
  • 颜色表示和转换

入门

首先,请确保您有权访问您的帧缓冲区设备。您通常可以通过以root用户身份运行(绝对不推荐),或通过将您添加到 video 组来实现。

文档中提供了两个示例

  1. linuxfb::Framebuffer 文档 中访问、配置和使用帧缓冲区
  2. linuxfb::double::Buffer 文档 中使用可选的双缓冲实现

贡献

  • 上游源代码可以在 此处 找到
  • 如果它们符合软件包的范围,通常接受拉取请求

依赖项

~0–2MB
~38K SLoC