macOS-style screen capture for Windows.
Press Shift+F1, drag a region, and the image is already on your clipboard. Pick an action from the toolbar that appears right at your selection — copy, save, edit, OCR, GIF, pin — or just drag the floating thumbnail straight into any app as a real file.
Native. Offline. No account, no tracking. GPL-3.0.
Most Windows capture tools make you fish a file out of a folder, or they copy a file path to the clipboard when you actually wanted the image. wsnap treats the two things people do with a screenshot every day — paste it and drag it somewhere — as first-class:
- The capture is on your clipboard as an image the instant you release the mouse. Paste it anywhere with
Ctrl+V. - The floating thumbnail is a real, draggable file. Drop it into Slack, a chat, an editor, an email — and it stays put so you can drop it again somewhere else.
Everything else — a precise frozen-screen overlay, a pixel loupe with HEX color readout, an annotation editor, on-device OCR, GIF recording, scrolling capture — is built around that core in one consistent dark UI, running quietly from the tray.
- Capture → floating thumbnail → drag-and-drop. Thumbnails stack at the bottom-right, up to a configurable number.
- Clipboard-first. Click = copy the image; auto-copy on capture (optional) so it's ready before you even click.
Ctrl+Click= copy the file path. - Action toolbar at your selection — Copy · Save · Edit · OCR · GIF · Pin (keys
C / Enter / E / T / G / P,Escto cancel). - Precise overlay. Freezes the screen, brightens only your selection (punch-through dim), shows live W×H, and a magnifier loupe with pixel coordinates and the HEX color under the cursor. Physical-pixel cursor grab — correct on mixed-DPI multi-monitor setups.
- Color picker (eyedropper). Click any pixel →
#RRGGBBcopied. - Annotation editor — arrow, line, rectangle, ellipse, pen, highlighter, text, numbered steps, mosaic / blur redaction, crop. Pick thickness and color, select / move / delete objects (
V), undo and redo, undoable crop, copy to clipboard (Ctrl+C),Shiftto constrain (45° / square). Keyboard-driven. - Great on-device OCR (KO + EN). PaddleOCR PP-OCRv5 models on ONNX Runtime — accurate on mixed Korean/English, code, and UI text. Free, fully offline, no language pack required (models ship inside the exe).
- Many capture modes — region · full screen · click-to-capture a window (auto-detected) · repeat last region · delayed (3 / 5s).
- Capture history gallery. Browse every saved capture as thumbnails → re-drag, copy, edit, or delete (to Recycle Bin).
- Filename templates —
{app},{title},{date},{seq},{w},{h}tokens (the foreground app / window title are captured at grab time). - Pin to keep a thumbnail (disables auto-dismiss and promotes the file out of
%TEMP%). - GIF recording · scrolling capture · clipboard-image detection.
- One dark design system across the overlay, editor, and settings — including dark DWM title bars.
- Lean tray resident. Idle memory was cut hard in 1.2.4 (single-digit working set / ~85 MB committed); the OCR engine loads lazily and releases after use, so OCR doesn't tax the idle footprint.
- Optional sharing. Imgur upload (bring your own Client-ID) from the thumbnail.
Windows 10/11, x64.
Package managers
# Scoop
scoop install https://raw.githubusercontent.com/openwong2kim/wsnap/main/packaging/scoop/wsnap.json
# winget (once the manifest is accepted into winget-pkgs)
winget install openwong2kim.wsnapDirect download — grab the latest from Releases:
wsnap-setup-x.y.z.exe— installer (Start Menu shortcut, optional run-at-startup)wsnap-vx.y.z-win-x64.zip— portable single.exe, no install
wsnap is not code-signed yet, so Windows SmartScreen may show an "unknown publisher" prompt — click More info → Run anyway. (OSS code signing is wired up and pending; see
SIGNING.md.)
- Launch — no window appears, just a tray icon.
- Press Shift+F1 (or double-click the tray icon) and drag a region.
- The thumbnail at the bottom-right:
- Left-click drag → hand off the file (stays available to drag again elsewhere)
- Click → copy the file path
- Hover buttons → Edit / Text (OCR) / ✕
- Right-click drag (sideways) → flick it away
- Leave it → auto-dismisses after your configured delay
- Tray menu: Capture · OCR region · GIF record · Scrolling capture · Clear all · Settings · Quit.
Settings: save folder, hotkey rebinding, auto-dismiss delay, max thumbnails shown,
run at startup, intercept Win+Shift+S, history (date folders), clipboard detection,
telemetry (opt-in), upload.
Requires the .NET 8 SDK (or 9) with the Windows Desktop workload. The project targets
net8.0-windows10.0.19041.0 for WinRT projection availability.
The Korean OCR model lives in models/v5/ and is embedded into the exe at build time.
To (re)download it:
pwsh -File tools\fetch-ocr-models.ps1Run, publish a single self-contained exe, and build the installer:
dotnet run --project Wsnap.csproj # run from source
pwsh -File publish.ps1 # -> publish\wsnap.exe (single file)
ISCC.exe installer.iss # -> dist\wsnap-setup-x.y.z.exe (Inno Setup 6)| File | Role |
|---|---|
App.cs |
Entry point · tray · capture modes · action routing · single instance |
Theme.cs |
Shared design system (color · type · control styles · dark title bars) |
Icons.cs |
Vector line icons (font-independent) |
ImageClipboard.cs |
Multi-format image clipboard (DIB + PNG + FileDrop, with retry) |
HotkeyHook.cs |
Global keyboard hook (custom hotkey + Win+Shift+S toggle) |
CaptureOverlay.cs |
Capture overlay (freeze · dim · W×H · loupe · action toolbar · Capture/OCR/Region/ColorPick) |
ScreenGrab.cs |
Screen pixel grab + Bitmap→BitmapSource |
CaptureStore.cs |
Save-location / history policy + pin promotion |
ThumbnailWindow.cs |
Floating thumbnail stack (copy · save · edit · OCR · folder · share · pin · delete) |
HistoryWindow.cs |
Capture history gallery (thumbnail grid · drag-out · re-edit · delete) |
EditorWindow.cs |
Annotation editor (11 tools · redo · undoable crop · copy to clipboard) |
Ocr.cs |
PaddleOCR PP-OCRv5 (ONNX / RapidOcrNet) wrapper — Korean rec model, lazy load + idle release |
GifRecorder.cs / GifWriter.cs |
GIF recording + delay/loop encoding |
ScrollCapture.cs |
Scrolling capture (overlap stitching) |
ClipboardWatcher.cs |
Clipboard image detection |
Uploader.cs |
Imgur upload |
Settings.cs / SettingsWindow.cs |
Settings model · UI (dark cards) |
AutoStart.cs / SingleInstance.cs / CrashLog.cs / Toast.cs |
Tray-resident infrastructure |
- OCR: PP-OCRv5 models are embedded in the exe — no language pack needed. The first recognition is slightly slower (engine warm-up), then fast; the engine is released after a short idle. Rotated text isn't de-skewed (screenshots are assumed upright).
- Scrolling capture is best-effort — solid on text and web pages, weaker on smooth-scroll / parallax content.
- Privacy: no tracking. Telemetry is opt-in and local-log only (
%APPDATA%\wsnap\wsnap.log). - Code signing is recommended before wide distribution to avoid SmartScreen — see
SIGNING.md/ROADMAP.md.
GPL-3.0-only. © 2026 openwong2kim and wsnap contributors.
OCR is powered by RapidOcrNet and
PaddleOCR PP-OCRv5 models on ONNX Runtime.
Bundled third-party components and their licenses (all permissive / GPL-3.0-compatible) are
listed in THIRD-PARTY-NOTICES.md.
See ROADMAP.md for detailed status and CHANGELOG.md for release history.
