OCR-TOOLS - Texterkennung mit Tesseract
=======================================

Stand: 2026-01-23
Pfad: docs/help/tools/ocr.txt

BESCHREIBUNG
------------
OCR-Engine für Texterkennung in Bildern und PDFs.
Verwendet Tesseract und ist von DokuZentrum Pro adaptiert.

Pfad: tools/ocr_engine.py

VORAUSSETZUNGEN
---------------
  - Tesseract installiert (tesseract-ocr)
  - Python-Pakete: pytesseract, Pillow
  - Optional: PyMuPDF (fitz) für PDF-Support

  Installation:
    pip install pytesseract Pillow PyMuPDF

VERWENDUNG
----------

CLI (einfach):
  python ocr_engine.py <pdf_path>
  python ocr_engine.py B0006              # Beleg-Kurzform

Python (Klasse):
  from tools.ocr_engine import OCREngine, OCRResult
  
  engine = OCREngine()
  
  # Verfügbarkeit prüfen
  if engine.is_available:
      print("Tesseract verfügbar!")
  
  # Bild erkennen
  result = engine.recognize_image("scan.png")
  print(result.text)
  
  # PDF erkennen
  pages = engine.recognize_pdf("dokument.pdf")
  for page in pages:
      print(f"Seite {page.page_num}: {page.text}")
  
  # Verfügbare Sprachen
  langs = engine.get_available_languages()

HAUPTKLASSEN
------------

OCREngine:
  is_available            Tesseract verfügbar?
  get_available_languages() Verfügbare Sprachen auflisten
  recognize_image(path)   Text aus Bild extrahieren
  recognize_pdf(path)     Text aus PDF (auch Bild-PDFs)

OCRResult:
  success                 Erfolg (bool)
  text                    Erkannter Text
  confidence              Konfidenz-Wert (0-100)
  language                Verwendete Sprache
  error                   Fehlertext bei Misserfolg

OCRPageResult:
  page_num                Seitennummer
  text                    Seitentext
  confidence              Konfidenz
  word_count              Wortanzahl

SPRACHEN
--------
Standard: "deu+eng" (Deutsch + Englisch)

Andere Sprachen:
  engine.recognize_image("bild.png", language="fra")
  engine.recognize_pdf("doc.pdf", language="deu")

Mehrere Sprachen:
  language="deu+eng+fra"

BELEG-KURZFORM
--------------
Belegscans können mit Kurzform aufgerufen werden:

  python ocr_engine.py B0006

Sucht automatisch in:
  - user/steuer/belege/B0006.pdf
  - user/steuer/belege/B0006.png

INTEGRATION MIT STEUER-AGENT
----------------------------
Der Steuer-Agent nutzt die OCR-Engine um:
  - Rechnungsbetraege zu extrahieren
  - Belegdaten zu erkennen
  - Textdurchsuchbare PDFs zu erstellen

  bach steuer beleg scan B0006

FEHLERBEHEBUNG
--------------

"Tesseract nicht gefunden":
  - Tesseract installieren
  - Pfad in PATH aufnehmen
  - Oder: OCREngine(tesseract_path="C:/Program Files/...")

"pytesseract nicht installiert":
  pip install pytesseract

"PyMuPDF nicht verfügbar":
  pip install PyMuPDF
  (Nur für PDF-Support nötig)

Schlechte Erkennung:
  - Bild-Qualität verbessern (DPI erhöhen)
  - Richtige Sprache waehlen
  - Bild vorverarbeiten (Kontrast, Skalenkorrektur)

SIEHE AUCH
----------
  docs/help/steuer.txt         Steuer-Agent mit OCR
  tools/steuer/           Steuer-Tools
  
  docs/MAIL_PROFILE_SYSTEM.md  E-Mail-basierte Belegerfassung

VERSION: v1.0.0 (2026-01-23)
Zeilen: ~323 (ocr_engine.py)
