What Tex Does
Tex is a capture tool with an attached annotation canvas. A few smaller tools — OCR, screen recorder, color picker, QR generator and barcode scanner — hang off the same window and share the same capture pipeline.
Everything flows through the MainWindow. That window is both:
- the command surface (toolbar buttons, hotkey host, tray-menu target), and
- the edit surface (annotation canvas, sharing actions).
Three Phases
Every workflow in Tex fits into the same three phases:
Capture ─► Annotate ─► Share
(acquire) (mark up) (save / copy / email / pin / OCR)
A phase can be skipped. You can capture and immediately save (no annotation), or load a historical image from the history window (no re-capture). OCR and barcode scanning attach to the capture phase output without going through annotation.
In-Memory First
A freshly-captured image does not touch disk on its own:
- The image is placed onto the
MainWindowcanvas. - It is optionally auto-copied to the clipboard (
Capture.CopyToClipboard, default on). - It is added to the in-memory capture history (
ICaptureHistoryService).
Images only hit disk when:
- You explicitly Save (image file) or the app shuts down (flushes history to
%APPDATA%\Tex\capture_history.jsonifHistory.PersistToDiskis on). - A screen recording is produced — MP4 files always write directly to disk since they stream during capture.
This means the history survives restarts, but an image you never saved stays confined to your %APPDATA%\Tex\ folder and the Windows clipboard unless you actively export it.
Core Surfaces
| Surface | Role |
|---|---|
MainWindow | Command + edit surface. One per app. |
DockPillWindow | Compact alternative to the MainWindow when docked. |
CaptureOverlayWindow | Fullscreen dimmed overlay used during region selection. |
AnnotationWindow | Optional fullscreen annotation editor with the same tool palette. |
Popups (OcrResultPopup, QrCodeGeneratorWindow, PinnedImageWindow, etc.) | Per-feature result or input dialogs. |
The rest of this guide documents what happens inside each phase and how to tune it.