2 stable releases
new 2.1.0 | Feb 28, 2025 |
---|---|
2.0.0 | Feb 27, 2025 |
#903 in GUI
43 downloads per month
39KB
182 lines
tauri-plugin-screenshots
This plugin only works on tauri v2, if you need the v1 plugin, feel free to submit a PR!
Get screenshots of windows and monitors.
https://github.com/user-attachments/assets/0cc6e2ea-cf85-41ed-a809-078393a95c0f
Install
cargo add tauri-plugin-screenshots
You can install the JavaScript Guest bindings using your preferred JavaScript package manager:
pnpm add tauri-plugin-screenshots-api
Usage
src-tauri/src/lib.rs
pub fn run() {
tauri::Builder::default()
+ .plugin(tauri_plugin_screenshots::init())
.run(tauri::generate_context!())
.expect("error while running tauri application");
}
src-tauri/capabilities/default.json
{
...
"permissions": [
...
+ "screenshots:default"
]
}
Afterwards all the plugin's APIs are available through the JavaScript guest bindings:
import { getScreenshotableWindows } from "tauri-plugin-screenshots-api";
const windows = await getScreenshotableWindows();
console.log(windows); // xx/tauri-plugin-screenshots/window-1.png
Methods
Method | Description |
---|---|
getScreenshotableWindows |
Get all windows that can take screenshots. |
getScreenshotableMonitors |
Get all monitors that can take screenshots. |
getWindowScreenshot |
Get a screenshot of the window with the specified id. |
getMonitorScreenshot |
Get a screenshot of the monitors with the specified id. |
removeWindowScreenshot |
Remove locally stored window screenshots. |
removeMonitorScreenshot |
Remove locally stored monitor screenshots. |
clearScreenshots |
Remove all locally stored screenshots. |
Example
git clone https://github.com/ayangweb/tauri-plugin-screenshots.git
pnpm install
pnpm build
cd examples/tauri-app
pnpm install
pnpm tauri dev
Thanks
- Use xcap to get window and monitor screenshots.
Dependencies
~19–65MB
~1M SLoC