Skip to content

albemala/flutter_screen_capture

Repository files navigation

flutter_screen_capture

Pub

A plugin to capture the entire screen or part of it on desktop platforms.

macOS Windows Linux
Support

Usage

Capture the entire screen

final area = await ScreenCapture().captureEntireScreen();

Capture a specific area of the screen

final topLeftCorner = Rect.fromLTWH(0, 0, 100, 100);
final area = await ScreenCapture().captureScreenArea(topLeftCorner);

Capture a single pixel color

final color = await ScreenCapture().captureScreenColor(100, 100);

Widgets

There are 2 widgets you can use to see a live preview of a screen area or a pixel color. They both display what's under the mouse cursor.

Screen area preview:

SizedBox(
  width: 72,
  height: 72,
  child: ScreenAreaLiveView(areaSize: 72 / 4),
)

Color live preview:

SizedBox(
  width: 48,
  height: 48,
  child: ScreenColorLiveView(),
)

Advanced usage

See the example app for a complete usage example.

Current limitations

  • Linux is not supported yet.
  • Capturing on multiple screens is not supported yet.
  • Capturing on high-resolution screens (e.g. Retina displays) is not supported yet.

Support this project

Buy Me A Coffee

Other projects

🧰 exabox — Essential tools for developers: All the tools you need in one single app.

😃 Ejimo — Emoji and symbol picker

🗺️ WMap — Create beautiful, minimal, custom map wallpapers and backgrounds for your phone or tablet.

🎨 iro‿iro — Rearrange the colors to form beautiful patterns in this relaxing color puzzle game.

Credits

Created by @albemala (Twitter)