====== std.svg.style ====== SVG-Style-Attribute als Lyx-Strings: Fill, Stroke, Opacity, Transformationen und Dash-Muster. Style-Werte werden als CSS-ähnliche Strings übergeben (z.B. ''fill:red;stroke:black;stroke-width:2'') oder über Hilfsfunktionen zusammengebaut. → [[lyx_-_programmiersprache:units:svg|std.svg]] · [[lyx_-_programmiersprache:units:svg:elements|std.svg.elements]] · [[lyx_-_programmiersprache:units:svg:defs|std.svg.defs]] ---- ===== Verwendung ===== import std.svg.style; // Style-String manuell var s1: pchar := "fill:red;stroke:black;stroke-width:1.5;opacity:0.8"; // Style-String mit Hilfsfunktionen aufbauen var style: SvgStyle := SvgStyleNew(); SvgStyleSetFill(style, "steelblue"); SvgStyleSetStroke(style, "#333333", 2.0); SvgStyleSetOpacity(style, 0.9); SvgStyleSetDash(style, "5,3"); // gestrichelt var s2: pchar := SvgStyleToString(style); SvgStyleFree(style); // Farbe aus RGB-Werten (0–255) var col: pchar := SvgRGB(30, 144, 255); // "rgb(30,144,255)" // Farbe als Hex var hex: pchar := SvgHex(30, 144, 255); // "#1e90ff" // Transform-String aufbauen var t: pchar := SvgTranslate(100.0, 50.0); // "translate(100,50)" var r: pchar := SvgRotateAround(45.0, 400.0, 300.0); // "rotate(45,400,300)" var sc: pchar := SvgScale(2.0, 1.5); // "scale(2,1.5)" ---- ===== Funktionen ===== ^ Signatur ^ Sichtbarkeit ^ Beschreibung ^ | ''SvgStyleNew(): SvgStyle'' | pub | Erzeugt leeren Style-Builder | | ''SvgStyleSetFill(s: SvgStyle, color: pchar): void'' | pub | Setzt Füllfarbe | | ''SvgStyleSetFillNone(s: SvgStyle): void'' | pub | Setzt fill:none (transparente Füllung) | | ''SvgStyleSetStroke(s: SvgStyle, color: pchar, width: f64): void'' | pub | Setzt Rahmenfarbe und -breite | | ''SvgStyleSetOpacity(s: SvgStyle, opacity: f64): void'' | pub | Setzt Gesamttransparenz (0.0–1.0) | | ''SvgStyleSetFillOpacity(s: SvgStyle, opacity: f64): void'' | pub | Setzt Füll-Transparenz | | ''SvgStyleSetDash(s: SvgStyle, pattern: pchar): void'' | pub | Setzt Strichmuster (z.B. "5,3" oder "10,5,2,5") | | ''SvgStyleSetLineCap(s: SvgStyle, cap: pchar): void'' | pub | Setzt Linienende (butt, round, square) | | ''SvgStyleSetLineJoin(s: SvgStyle, join: pchar): void'' | pub | Setzt Linienverbindung (miter, round, bevel) | | ''SvgStyleToString(s: SvgStyle): pchar'' | pub | Gibt fertigen CSS-Style-String zurück | | ''SvgStyleFree(s: SvgStyle): void'' | pub | Gibt Style-Ressourcen frei | | ''SvgRGB(r: int64, g: int64, b: int64): pchar'' | pub | Erzeugt "rgb(r,g,b)"-Farbstring | | ''SvgHex(r: int64, g: int64, b: int64): pchar'' | pub | Erzeugt "#rrggbb"-Hex-Farbstring | | ''SvgTranslate(tx: f64, ty: f64): pchar'' | pub | Erzeugt translate-Transform-String | | ''SvgRotate(deg: f64): pchar'' | pub | Erzeugt rotate-Transform-String | | ''SvgRotateAround(deg: f64, cx: f64, cy: f64): pchar'' | pub | Erzeugt rotate um Mittelpunkt | | ''SvgScale(sx: f64, sy: f64): pchar'' | pub | Erzeugt scale-Transform-String | | ''SvgMatrix(a: f64, b: f64, c: f64, d: f64, e: f64, f: f64): pchar'' | pub | Erzeugt matrix()-Transform-String | Letzte Aktualisierung: 2026-05-23