Skip to content

Latest commit

 

History

11 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ZedSnap

ZedSnap is a standalone Windows screenshot tool. It captures the virtual desktop, supports region selection and annotation, copies the result to the clipboard, and can stitch vertically scrolling content. Excel range export is used when available.

The application is intentionally offline and has no runtime package dependency. It targets x86 .NET Framework 4 and Windows 7 SP1 through Windows 11. The x86 binary also runs under WoW64 on 64-bit Windows.

The Mosaic tool offers Color (default) and Black & white (grayscale) modes beside the block-size controls. Each drawn mosaic keeps its chosen mode.

Build

Run from Windows PowerShell:

powershell -NoProfile -ExecutionPolicy Bypass -File .\build.ps1

Outputs are written to artifacts\runtime:

  • zedsnap.exe
  • zedsnap.exe.config
  • zh\zedsnap.resources.dll

Direct launch waits 1.5 seconds before capturing so the user can switch windows. Use --delay=<milliseconds> to select a delay from 0 through 10000, --locale=<culture> to choose UI resources, and --watermark=<text> to set the initial watermark text. --route-targets enables Excel range routing before the normal capture UI.

Click the pushpin button before Scroll to pin the selected screenshot, including annotations, above other windows. Pins open centered on Ktalk's monitor when launched from Ktalk, or the capture monitor when launched directly. They display at original pixel size without Windows DPI enlargement; large images initially fit within 60% of the available screen. Drag to move and use the mouse wheel to zoom. The close button appears only while hovering over the image.

Right-click for Copy, Save as..., Close, Close all, and Restore original size. Copy and Save as... use the full-resolution image, regardless of zoom. Closing all targets ZedSnap pin windows only. Each pin is independent, so you can capture again while pins remain open. Pinning itself does not change the clipboard.

Saving a normal or scrolling capture closes ZedSnap after the file is saved. Cancelling the save dialog or a save failure leaves the capture open.

Exit code 0 means an image was copied to the clipboard, and 1 means the user cancelled or saved to a file without copying. When launched with --enable-forward, the toolbar also shows a send button. It copies the image and exits with code 4 so the host application can open its recipient picker. Other values indicate failure.

Test

powershell -NoProfile -ExecutionPolicy Bypass -File .\test.ps1

The suite checks localization fallback, adaptive scrolling, pixel-exact stitching, ambiguity rejection, capture limits, native scrollbar targeting and pointer parking, then builds and self-tests the executable. Interactive fixtures remain available through switches on tests\screenshot-scroll.test.ps1.

Integration contract

Hosts launch zedsnap.exe and consume the clipboard only after exit code 0. The supported arguments and exit codes above are the stable process boundary. Hosts should retain their own shortcut, window-hiding, import, and fallback logic.

ZedSnap limits stitched images to 24 million pixels, 30,000 rows, and 512 accepted segments. Uncertain joins are rejected instead of being silently merged.

See THIRD_PARTY_NOTICES.md for attribution of icon geometry.

OCR handoff

An embedding app can pass --ocr-output=<absolute PNG path> to enable the OCR action on the selection toolbar. The helper writes the rendered selection with create-new semantics and exits with code 3. The caller owns file cleanup and OCR processing. No clipboard image is written. Without this argument the OCR button is disabled. Ktalk passes it only on Windows 10/11 and uses its configured OCR engine. Code 0 remains clipboard capture; code 1 remains cancellation/save-only.

An embedding app can pass --capture-mode=ocr or --capture-mode=scroll to start that action immediately after a new region is selected. The default --capture-mode=screenshot leaves the selection toolbar open. OCR still requires --ocr-output; omit --route-targets for manual OCR selection.

About

An open-source screen capture tool for Windows.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages