From 8fde588b8f619093596c9844f8a78fefcf30e261 Mon Sep 17 00:00:00 2001 From: Rob Date: Tue, 30 Jun 2026 10:52:45 +0200 Subject: [PATCH] =?UTF-8?q?Keine=20Zentrierung=20f=C3=BCr=20T=C3=A4tigkeit?= =?UTF-8?q?en.=20Doppeltes=20Datum=20anzeigen.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/writer.py | 141 +++++++++--------- ...Tätigkeitsnachweise Stellenförderung.odg | Bin 37715 -> 37920 bytes ...Tätigkeitsnachweise Stellenförderung.pdf | Bin 163173 -> 163173 bytes 3 files changed, 68 insertions(+), 73 deletions(-) diff --git a/src/writer.py b/src/writer.py index e0aae1e..9c576e1 100644 --- a/src/writer.py +++ b/src/writer.py @@ -102,10 +102,10 @@ def _scan_template_fields( template_path: Path, mapping: list[OutputMapping], fontsize: float, -) -> dict[str, dict]: +) -> dict[str, list[dict]]: """ Scannt ALLE Seiten des PDF-Templates nach _Field-Platzhaltern. - Rückgabe: dict[pdf_field] → {source_field, page_num, rect, fontsize, fontname, ...} + Rückgabe: dict[pdf_field] → Liste von {source_field, page_num, rect, fontsize, fontname, ...} Felder mit pdf_field=None werden übersprungen. """ doc = fitz.open(template_path) @@ -116,26 +116,23 @@ def _scan_template_fields( if m.pdf_field is not None: pdf_to_source[m.pdf_field] = m.source_field - field_info: dict[str, dict] = {} + field_info: dict[str, list[dict]] = {} - # Per search_for die Rechtecke aller PDF-Feld-Marker finden (alle Seiten) + # Alle Vorkommen aller PDF-Feld-Marker finden (alle Seiten) for pdf_field, source_field in pdf_to_source.items(): - found_any = False + occurrences: list[dict] = [] for page_num in range(doc.page_count): page = doc[page_num] found = page.search_for(pdf_field) - if found: - field_info[pdf_field] = { + for rect in found: + occurrences.append({ "source_field": source_field, "page_num": page_num, - "rect": found[0], + "rect": rect, "fontsize": fontsize, "fontname": "helv", - } - found_any = True - break # erstes Vorkommen (seitenübergreifend) - if not found_any: - field_info[pdf_field] = None # nicht gefunden + }) + field_info[pdf_field] = occurrences doc.close() return field_info @@ -150,7 +147,7 @@ def _fill_pdf_pages( record: EmployeeRecord, employee_name: str, mapping: list[OutputMapping], - field_info: dict[str, dict], + field_info: dict[str, list[dict]], fontsize: float, ) -> None: """Befüllt alle Template-Seiten: redacted _Field-Platzhalter und fügt echte Daten ein.""" @@ -162,76 +159,74 @@ def _fill_pdf_pages( if m.pdf_field is None: continue - info = field_info.get(m.pdf_field) - if info is None: + occurrences = field_info.get(m.pdf_field, []) + if not occurrences: continue # Feld nicht im Template gefunden - page_num = info["page_num"] - if page_num >= len(pages): - continue - - page = pages[page_num] - rect = info["rect"] - value = _get_field_value(record, employee_name, m.source_field) formatted = _format_value(value, m.format) - # Platzhalter immer redacten, auch wenn kein Wert zum Einsetzen da ist - page.add_redact_annot(rect) - page.apply_redactions() - - if not formatted: - continue - - # Mehrzeilige Felder: Zeilenweise per insert_text schreiben - if m.pdf_field in MULTILINE_FIELDS: - # Doppelte Leerzeilen entfernen - clean_text = "\n".join( - line for line in formatted.split("\n") if line.strip() - ) - if not clean_text: + # Jedes Vorkommen des Feldes im PDF befüllen + for info in occurrences: + page_num = info["page_num"] + if page_num >= len(pages): continue - # Zeilenweise mit automatischem Umbruch schreiben - lines = clean_text.split("\n") - line_spacing = fontsize * 1.2 # Zeilenabstand + page = pages[page_num] + rect = info["rect"] - # Zuerst alle Ausgabezeilen sammeln, um Gesamthöhe zu berechnen - output_lines: list[str] = [] - for line in lines: - max_width = TEXTBOX_WIDTH_PT - words = line.split(" ") - current_line = "" - for word in words: - test_line = current_line + (" " if current_line else "") + word - text_width = fitz.get_text_length(test_line, fontname="helv", fontsize=fontsize) - if text_width <= max_width or not current_line: - current_line = test_line - else: - output_lines.append(current_line) - current_line = word - if current_line: - output_lines.append(current_line) + # Platzhalter redacten + page.add_redact_annot(rect) + page.apply_redactions() - # Textblock oben beginnend schreiben - y = rect.y0 + fontsize + if not formatted: + continue - for current_line in output_lines: - page.insert_text( - (rect.x0, y), current_line, - fontname="helv", fontsize=fontsize, + # Mehrzeilige Felder: Zeilenweise per insert_text schreiben + if m.pdf_field in MULTILINE_FIELDS: + # ... (unverändert) + clean_text = "\n".join( + line for line in formatted.split("\n") if line.strip() + ) + if not clean_text: + continue + + lines = clean_text.split("\n") + line_spacing = fontsize * 1.2 + + output_lines: list[str] = [] + for line in lines: + max_width = TEXTBOX_WIDTH_PT + words = line.split(" ") + current_line = "" + for word in words: + test_line = current_line + (" " if current_line else "") + word + text_width = fitz.get_text_length(test_line, fontname="helv", fontsize=fontsize) + if text_width <= max_width or not current_line: + current_line = test_line + else: + output_lines.append(current_line) + current_line = word + if current_line: + output_lines.append(current_line) + + y = rect.y0 + fontsize + for current_line in output_lines: + page.insert_text( + (rect.x0, y), current_line, + fontname="helv", fontsize=fontsize, + ) + y += line_spacing + else: + # Einzeilige Felder: vertikal zentriert platzieren + mid_y = (rect.y0 + rect.y1) / 2 + baseline_y = mid_y + fontsize * 0.35 + page.insert_text( + (rect.x0, baseline_y), + formatted, + fontname="helv", + fontsize=fontsize, ) - y += line_spacing - else: - # Einzeilige Felder: vertikal zentriert platzieren - mid_y = (rect.y0 + rect.y1) / 2 - baseline_y = mid_y + fontsize * 0.35 - page.insert_text( - (rect.x0, baseline_y), - formatted, - fontname="helv", - fontsize=fontsize, - ) # ───────────────────────────────────────────── diff --git a/template/Tätigkeitsnachweise Stellenförderung.odg b/template/Tätigkeitsnachweise Stellenförderung.odg index 564a1c921f2f2dba18f6dda0a5cc1cfa344b5b80..556f50e121ca4c974803cd15f547259c6f304c99 100644 GIT binary patch delta 19347 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 diff --git a/template/Tätigkeitsnachweise Stellenförderung.pdf b/template/Tätigkeitsnachweise Stellenförderung.pdf index 58f9e8ef9cfba008c02dcd3da9f1c15c67e66a21..fa4d1f4c225843847a384804092f202f61469ba8 100644 GIT binary patch delta 368 zcmaF*i}UF(&J9ytqJLlE@~x1)|Fh)Jsrk{p>~YWLPCxSh^a+t)Uy`{E<9%OeRNLzql=za5_QmOtzcdRm?SVE0e1N#!lo&HE2C6mFlJa!J!(%d<{||G&BTL;3mt z+4*D){!D)FBF|{Pncp=hgJt3hjkL-2Yn4Qj<#*mqer@;u)BTS}_wW60zrDd@<>YN^ z6_`vdn{TY$eq$|T1uKW4ft87wm4U_dh|P><2;Q{Kj23X-_G_CNTi37}8km?HO;1Q* zN?|mgel&qeozZgp+XNG`$CnDsxO^M3R{HHEA8*T&Wv>z9}2#9xo< ztX=Zj`tpaLkJT#Ywds3JeLuJH{WEQkdxGzH|M4*&xmz~LbNQbYDnA2l{@jmgsjvAb z|Lc~)%gG;H ztpbyoLGz8Z+i$F8tYGCZu(UEUv@$iF9JiJ`NB zg^`7`qq&hCmkmKB3b9=JF8RsM8L7$H#ih9l`bK6(#zrO5YuI2`2 cPNo(XZq81o#$0xGT*W1cMI{x}Lu#1>0UXzi-v9sr