Capture any part of your screen, extract text with OCR and translate it instantly.
This is a lightweight Windows desktop tool built for one fast workflow:
- Select an area on screen.
- Run OCR on the captured image.
- Translate the extracted text.
No tab switching, no copy-paste between multiple apps.
preview:
intro.mp4
- Global hotkey capture from anywhere in Windows
- In-memory OCR pipeline (no temporary screenshot files required)
- Instant translation using Google Translate (default)
- Translator architecture ready for additional providers
- Copy and save actions for fast output handling
- Desktop executable build with PyInstaller
| Shortcut | Action |
|---|---|
| Ctrl+Alt+T | Capture area and translate |
| Ctrl+Alt+C | Copy output |
| Ctrl+Alt+S | Save output to file |
- The app starts and requests Administrator permission on Windows.
- Global hotkeys are registered using the keyboard library.
- You capture a region with the snipping overlay.
- OCR extracts text using Tesseract.
- The selected translator returns translated output to the UI.
| Layer | Technology |
|---|---|
| Desktop bridge | Eel |
| OCR | Tesseract + pytesseract |
| Screen capture | mss + tkinter |
| Translation | requests + Google endpoint |
| Hotkeys | keyboard |
| Packaging | PyInstaller |
- Windows
- Python 3.10+
- Tesseract OCR installed
- Recommended installer: https://github.com/UB-Mannheim/tesseract/wiki
pip install -r requirements.txtpython main.pyNote: On startup, Windows may show a UAC prompt so global hotkeys can work system-wide.
python build.pyTo improve user trust for downloaded binaries:
- Build with safer defaults:
python build.py- Upload these generated metadata files from
dist/with your release assets:
main.zip(or your custom zip name)RELEASE-SHA256.txtRELEASE-NOTES-TEMPLATE.mdSIGNING-COMMAND-TEMPLATE.txt
- In release notes, include checksum verification steps (PowerShell):
Get-FileHash .\ScreenOCRTranslator.exe -Algorithm SHA256- Prefer code-signed binaries for fewer SmartScreen warnings.
SIGNING-COMMAND-TEMPLATE.txtcontains ready-to-editsigntoolexamples.
Yes, it is possible, but build must run on macOS.
- Windows build produces Windows binaries only.
- For macOS users, build on a Mac machine (or macOS CI runner) with the same source code.
- Typical macOS output is
.app(and optionally.dmg/.zip). - To avoid Gatekeeper warnings on macOS, use Apple Developer code signing and notarization.
Suggested release assets:
ScreenOCRTranslator-win-x64.zip(built on Windows)ScreenOCRTranslator-macos-arm64.zip(built on Apple Silicon Mac)ScreenOCRTranslator-macos-x64.zip(built on Intel Mac)
This repository includes a workflow at .github/workflows/release-build.yml that:
- Builds standalone ZIP assets for Windows and macOS
- Generates per-platform SHA256 checksum files
- Uploads assets automatically when a Release is published
- Open screen_translator/translator.py.
- Create a class that extends BaseTranslator.
- Implement translate.
- Register the class in TRANSLATORS.
The UI list is populated dynamically.
This project is licensed under the MIT License.