This Project was developed by:
The aim of this project is to create a screen-grabbing utility capable of acquiring what is currently shown in a display, post-process it and make it available in one or more formats. The following features are included:
- Platform Support: The utility is compatible with multiple desktop operating systems, including Windows, macOS, and Linux.
- Selection Options: The utility allows the user to restrict the grabbed image to a custom area selected with a click and drag motion. The selected area may be further adjusted with subsequent interactions.
- Hotkey Support: The utility supports customizable hotkeys for quick screen grabbing. Users are able to set up their preferred shortcut keys.
- Output Format: The utility supports multiple output formats including .png, .jpg, .gif. It also support copying the screen grab to the clipboard.
- Annotation Tools: The utility has built-in annotation tools like shapes, arrows, text, and a color picker for highlighting or redacting parts of the screen grab.
- Delay Timer: The utility supports a delay timer function, allowing users to set up a screen grab after a specified delay.
- Save Options: The utility allows users to specify the default save location for screen grabs. It also supports automatic saving with predefined naming conventions.
- Multi-monitor Support: The utility is able to recognize and handle multiple monitors independently, allowing users to grab screens from any of the connected displays.
- screenshot crate: screenshots
- gui crates: egui
- hotkeys crate: global-hotkey
- image manipulation crates:
- text manipulation crate: rusttype
- error definition crate: thiserror
- home directory utility crate: home
- clipboard crate: arboard
arboard = "3.2.0"
egui = "0.22.0"
global-hotkey = "0.2.3"
home = "0.5.5"
image = "0.24.6"
imageproc = "0.23.0"
rusttype = "0.9.3"
screenshots = "0.7.0"
thiserror = "1.0.44"