...eschützte Leerzeichen und andere problematische Unicode-Zeichen

def sanitize_text_strict(text):
    replacements = {
        "„": '"', "“": '"', "–": "-", "—": "-", "’": "'", "‘": "'",
        "…": "...", "•": "*", "\u202f": " ", "\u2009": " ", "\xa0": " "
    }
    for old, new in replacements.items():
        text = text.replace(old, new)
    return text

class StrictPDF(FPDF):
    def header(self...