grim:轻量级Wayland截图工具指南
grim Grab images from a Wayland compositor 项目地址: https://gitcode.com/gh_mirrors/gri/grim
项目介绍
grim是一款专为Wayland设计的图像捕捉工具,由emersion开发并维护。它允许用户从Wayland compositor中捕获屏幕截图,支持多种操作如全屏抓取、指定输出设备抓图、区域截图乃至选择窗口等。这个MIT许可下的开源项目已经迁移至SourceHrt,但仍可在GitHub上找到其历史档案。
项目快速启动
安装依赖
在开始之前,确保你的系统已安装以下依赖项:
- meson 构建系统
- wayland相关库
- pixman
- libpng
- libjpeg(可选,用于JPEG格式的截图)
编译与安装
-
克隆仓库:
git clone https://github.com/emersion/grim.git
-
进入项目目录,并设置构建环境:
cd grim meson build
-
编译并安装:
ninja -C build sudo ninja -C build install # 如果想全局安装
或者直接运行编译后的二进制文件位于build/grim
。
使用示例
-
全屏截图:
grim
-
指定输出设备:
grim -o DP-1.png
-
区域截图:
grim -g "10x20+300+400" screenshot.png
-
通过Slurp选取区域:
grim -g "$(slurp)"
-
截图并复制到剪贴板:
grim - | wl-copy
应用案例与最佳实践
在日常工作中,grim可以与其它Wayland环境下的工具如Swapy或SwayWM结合,实现高效的桌面操作。例如,通过脚本自动化定期截取显示器状态,或是作为自动化测试的一部分来验证GUI的状态。
与Sway整合示例
获取并在当前焦点显示器上截图:
grim -o "$(swaymsg -t get_outputs | jq -r '.[] | select(.focused) | .name')" screenshot.jpg
典型生态项目
虽然grim本身是一个较为独立的工具,但在Wayland生态系统中,它可以与各种窗口管理器如Sway、以及辅助工具如Slurp紧密合作,提供无缝的用户体验。例如,使用Slurp进行可视化选择截图区域,与grim集成,实现了高度用户友好的交互模式。此外,对于开发者而言,grim的简单API和轻量特性也使得它成为集成到定制化桌面环境中的理想选择。
通过上述指导,您可以轻松地开始使用grim进行截图操作,无论是日常办公还是自动化测试,grim都是一个高效且强大的工具。别忘了探索更多的自定义选项和与之搭配使用的其他开源组件,以提升您的效率和体验。
grim Grab images from a Wayland compositor 项目地址: https://gitcode.com/gh_mirrors/gri/grim