Michael Stangl and Claude Opus 4.8
bbfe17ec37
feat: Symbole zentralisieren + Fragment-Ueberschriften filtern
...
Perceptual-Hash-basierte Symbol-/Duplikaterkennung in lib/pdf_extract.py:
- average_hash() (aHash) + Hamming-Distanz statt exaktem Byte-Hash: erkennt
visuell gleiche Bilder trotz unterschiedlicher Skalierung/Kompression
- Symbole (klein <=260px UND mehrfach vorkommend, z.B. Warndreiecke) werden
EINMAL zentral nach assets/shared/symbols/symbol_<hash>.png abgelegt und im
RST als .. image:: (12mm, zentriert) auf die eine Quelle referenziert -
dokumentuebergreifend (registry). Ein Warndreieck: 1x gespeichert statt 58x
- grossformatige Inhaltsbild-Duplikate ebenfalls ueber aHash zusammengefuehrt
- Fragment-"Ueberschriften" (POS, li., re., "bar, max. 10 bar") unterdrueckt
- Altbestand assets/shared/symbols/img_*.png (durcheinander benannt) entfernt
Wirkung: omniflo images/ 83 -> 62, 14 zentrale Symbole statt zig Duplikate.
Voller PDF-Build sauber (lualatex exit 0, 719 Seiten).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-09-23 14:10:33 +02:00
Michael Stangl and Claude Opus 4.8
c912b1e9d5
fix: saubere PDF-Extraktion der Fortna-Anleitungen (lib/pdf_extract.py)
...
Neues Modul lib/pdf_extract.py fuer die Volltext-Konvertierung der 5
Hauptanleitungen, behebt die Qualitaetsprobleme der ersten Version:
- Doppelte Nummerierung entfernt: PDF-Gliederungsnummer wird nur fuer die
Ueberschriften-Ebene ausgewertet, im RST-Text weggelassen (Sphinx nummeriert)
- Bilder positionsbasiert (bbox) extrahiert und als .. figure:: mit Caption
an der richtigen Textstelle referenziert (625 Refs, 0 fehlende Bilder)
- Fliesstext zu Absaetzen zusammengefuehrt statt je PDF-Zeile ein Absatz
- Aufzaehlungen als RST-Listen (Bullet-only-Zeilen mit Folgezeile gemergt,
zusammengelaufene Bullets aufgesplittet)
- Aenderungshistorie-/Dokumentinfo-Tabellen und TOC-Seiten uebersprungen
- Symbolfont-Zeichen (PUA) auf Unicode gemappt
fortna_convert_chapters.py: nutzt pdf_extract statt extract_products, lesbare
Dokumenttitel je Kapitel, Verzeichnislisten fuellen Kapitel ohne DE-Quelle mit
vorhandenen Fremdsprachen (Ersatzteilliste EN).
build_index.py / conf.py: Fremd-Altdateien aus dem Build ausgeschlossen.
Alte Test-.rst aus fruehen convert_to_rst.py-Laeufen entfernt.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-09-23 13:44:09 +02:00
Michael Stangl and Claude Opus 4.8
e7aa3b4e4b
feat: Fortna-Extraktion nach chapters/ + Sphinx-PDF-Build
...
Skripte zum Befuellen der Kapitelstruktur aus dem Fortna-Rohmaterial und
Aufbau eines vollstaendigen Sphinx/LaTeX-Builds (nur Code/Config/Doku,
generierte RST/Bilder/PDFs und Rohmaterial via .gitignore ausgeschlossen).
- lib/fortna_inventory.py: Rohmaterial scannen, Sprache+Zielkapitel+Aktion
zuordnen, results/fortna_inventory.json schreiben
- lib/fortna_convert_chapters.py: 5 Hauptanleitungen volltextig (Text+Bilder)
konvertieren, Verzeichnislisten (index.de.rst) fuer uebrige Kapitel
- lib/fortna_init_project.py: projekte/fortna/ (anlage.json, overrides, images)
- lib/build_index.py: index.rst mit toctrees aus chapters/**/*.de.rst generieren
- lib/extract_products.py: Symbolfont-Zeichen (PUA) auf Unicode mappen (clean_pua)
- conf.py: Sphinx-Build (lualatex, babel statt polyglossia, iconpackage=none)
- bin/: .bat/.sh-Wrapper fuer alle Skripte + build_pdf
- doc/: Konzept-Plan (plan_fortna_extraktion.md) und lib-Skript-Uebersicht
- requirements.txt: Sphinx + myst-parser ergaenzt
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-09-23 13:23:32 +02:00
Michael Stangl
8998cd3e02
Summump Schalter erstellt
2026-05-19 17:44:35 +02:00
Michael Stangl
038b51d35d
extract_ids.py impl. Bauen der json Files so dass die Bezeichnungen immer mit dabei stehen ausser in den Blättern.
2026-05-19 16:19:01 +02:00
Michael Stangl
d10d7c8e01
erste Fassung des Extracts von json files aus den Excel Dateien des Kontrolling geschrieben.
2026-05-19 13:37:34 +02:00
Michael Stangl
a7bc331a7f
Nummernkreise für alle Produkte aus das Produktdatenblatt extrahiert. Fortna als Beispiel .xlsx unter examples dazu. create_examplex.py so impl., dass aus dem Sivas Export eine Liste der wirklich verbauten Produkte extrahiert werden kann, wenn man die cfg Produktnummern richtig pflegt
2026-04-30 17:14:16 +02:00
Michael Stangl
1f9193d332
defaultverhalten des Skripts ist es jetzt alle Beispiele zu bauen. Ansonsten kann man auch nur ein Unterverzeichnis angeben
2026-04-30 15:49:51 +02:00
Michael Stangl
61f1430821
Hilfskripte zum Extrakt aus dem Produktprogramm erstellt. Kernkonzepte in README.md und doc
2026-04-30 15:30:43 +02:00
Michael Stangl
cfc494d0dd
Extrakt von Fortna gestartet um Standardsymbole und Basis für die ersten .rst Files zu erhalten.
2026-04-29 22:55:30 +02:00