Overview
ctdoshot runs as a status-bar application in macOS (LSUIElement = true), allowing instant access to high-precision screen capture, vector annotation tools, and on-device text recognition.
Capture Modes
Area region selection, active window highlight, full screen, last region, and scrolling stitch.
Annotation Suite
Arrows, text, step counters (1, 2, 3...), rectangles, pencil, crop, and pixelate blur.
On-Device OCR
Vision framework text recognition supporting English, Vietnamese, and Japanese.
Global Hotkeys
Carbon API global hotkey chords customizable from Preferences.
Installation & Build
1. Download Pre-built Release
Download ctdoshot-macOS-Universal.zip from GitHub Releases, unzip, and place ctdoshot.app in your /Applications folder.
2. Build from Source (Terminal CLI)
Clone the repository and run the build script:
git clone https://github.com/TIPC1110/ctdoshot.git
cd ctdoshot
# Build Universal Binary (arm64 + x86_64) via Terminal:
./scripts/package-app.sh --universal
open build/ctdoshot.app
Screen Recording Permission
Due to macOS security requirements, Screen Recording permission must be granted once for ctdoshot:
2. Enable ctdoshot.
3. Quit fully (⌘Q) and open
ctdoshot.app again.
Default Shortcuts
All global shortcuts can be customized in Preferences → Hotkeys.
| Action | Shortcut |
|---|---|
| Capture Area Region | ⇧⌘S |
| Capture Full Screen | ⇧⌘3 |
| Capture Active Window | ⇧⌘W |
| Capture Last Region | ⇧⌘L |
| Scrolling Capture | ⌥⇧⌘X |
| Quick OCR (Region to Clipboard) | ⌃⌥⌘O |
| History Gallery | ⇧⌘H |
Architecture & Rendering
ctdoshot uses a dual-rendering pipeline to guarantee performance and quality:
- SwiftUI Canvas: Interactive live tracking at 60fps while drawing.
- Core Graphics (CGContext): Pixel-perfect composite export on
NSBitmapImageRepto preserve full native Retina resolution.