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.
→ std.svg · std.svg.elements · 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
