Level the page view by the text direction found by OCR

The page, its line boxes and the selection now hang under one rotated item, so
selection works the same whether the page is levelled or shown as stitched.
Level (Ctrl+L, on by default) toggles it, and Save image saves what is shown.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
erik
2026-10-09 15:06:59 +00:00
co-authored by Claude Opus 5.5
parent 2ef567580a
commit 16df509d01
2 changed files with 71 additions and 14 deletions
+3 -1
View File
@@ -21,7 +21,9 @@ Linux driver tools for the Hama myScan (00052343) scanner mouse, a Dacuda design
page and a Screenshot button (camera + page + status as one PNG)
- `tools/app.py` — desktop app (Qt/PySide6; Linux, Windows, macOS): live camera and page view while scanning
(Start/Stop or the scan button, F5), then OCR of the finished page with RapidOCR (`myscan/ocr.py`;
multilingual PP-OCRv6 models bundled in the wheel, works offline; an upside-down page is detected and turned). Recognised lines are outlined on the page by
multilingual PP-OCRv6 models bundled in the wheel, works offline; an upside-down page is detected and turned). Level (Ctrl+L, on by default) shows the page rotated so its lines
are horizontal, using the text direction found by OCR; switch it off to see the page as stitched. Save image saves
what is shown. Recognised lines are outlined on the page by
confidence, and the text is selected right on the page like in a PDF viewer: drag (in reading order across
lines), double-click a word, triple-click a line, shift-click to extend, Ctrl+A; Ctrl+C or right-click copies.
With Paragraphs on (Ctrl+J, the default), copied and saved text has each paragraph on one line: