====== std.svg.xml ====== Interner XML-Schreiber der SVG-Bibliothek: Puffer-Management, Zahlenformatierung (f64 → kompakter SVG-String), Attribut-Escaping und Dokumentstruktur (XML-Deklaration, SVG-Namespace). Wird von allen anderen SVG-Units intern verwendet — direkte Nutzung ist nur für benutzerdefinierte SVG-Elemente nötig. → [[lyx_-_programmiersprache:units:svg|std.svg]] · [[lyx_-_programmiersprache:units:svg:builder|std.svg.builder]] ---- ===== Verwendung (benutzerdefinierte Elemente) ===== import std.svg.xml; // Rohe SVG-Elemente einfügen SvgRawAppend(svg, ""); SvgRawAppend(svg, "

HTML

"); SvgRawAppend(svg, "
"); // Zahl als SVG-String formatieren (z.B. 3.14159 → "3.14159", ohne unnötige Nullen) var s: pchar := SvgFormatNum(3.14159); // "3.14159" var s2: pchar := SvgFormatNum(100.0); // "100" // XML-Attributwert escapen var escaped: pchar := SvgEscapeAttr("Titel & \"Autor\"");
---- ===== Funktionen ===== ^ Signatur ^ Sichtbarkeit ^ Beschreibung ^ | ''SvgRawAppend(svg: Svg, raw: pchar): void'' | pub | Fügt rohen XML-String direkt in den Ausgabepuffer ein | | ''SvgFormatNum(v: f64): pchar'' | pub | Formatiert f64 als kompakten SVG-String (keine unnötigen Dezimalstellen) | | ''SvgEscapeAttr(s: pchar): pchar'' | pub | Maskiert XML-Sonderzeichen für Attributwerte (&, <, >, ", ') | | ''SvgEscapeText(s: pchar): pchar'' | pub | Maskiert XML-Sonderzeichen für Textknoten | Letzte Aktualisierung: 2026-05-23