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