Standard- und Mindestbreite der Haupt- und Basemap-Legende ist die Breite des Kartenschilds
(180 mm, MIN_SPALTENBREITE_MM) – die zunächst genannten 210 mm sind der gesamte Kartenrand
einschließlich Abständen. Die Legenden passen sich weiter ihrem Inhalt an, werden aber nie
schmaler (setMinimumSize).
QGIS speichert die Mindestgröße nicht im Projekt; nach dem Neuladen schrumpfte die
Legende bei der nächsten Größenanpassung wieder (QGIS-Test: 43,7 mm). Deshalb vermerkt
das Layout die Mindestbreite (sn_legende_mindestbreite), und ein Listener auf readProject
setzt sie beim Laden wieder (setup/teardown_mindestbreiten_listener in main.py, wie der
Verfahrensgebiet-Listener).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Mit gleichen Spaltenbreiten bestimmte der längste Legendentext die Breite aller Spalten;
die dreispaltige Basemap-Legende wurde 431 mm breit. Jetzt: ungleich breite Spalten,
automatischer Textumbruch nach 60 mm (TEXTUMBRUCH_MM in print_kartenrand, auch für die
Basemap-Legende) und zweizeiliger Titel „Kartengrundlage / (basemap.de)“, der sonst die
Mindestbreite bestimmte. Im QGIS-Test: dreispaltig 226 statt 431 mm, einspaltig 89 statt 163 mm.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Im Standardlayout hingen Hauptlegende (oben), Quellenangabe und Kartenschild (unten) an der
Kartenhöhe; bei kleinen Verfahren waren sie zusammen höher als die Karte und überlappten.
Neues Modul print_kartenrand: Nach dem Aufbau der Vorlage (inkl. Basemap-Legende) werden die
Legenden einmal gezeichnet – die Hauptlegende filtert nach Karteninhalt, ihre Höhe steht erst
danach fest – und für 1–3 Spalten vermessen. Gewählt wird die kleinste passende Spaltenzahl
(Kartenrand wird dafür breiter); passt keine, die mit dem geringsten Platzbedarf, und die Seite
wird höher, Quellenangabe und Kartenschild rutschen nach unten. Karte bleibt in Größe und Lage.
Fehler bei der Anordnung verhindern die Vorlage nicht (Warnung). Wrapper: QgsLayoutExporter.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>