std.svg.image
Bilder in SVG einbetten: JPEG- und PNG-Dateien als externe Referenz oder Base64-kodiert (Data-URI), programmatische RGB-Bitmap zu PNG-Konvertierung, und Platzierung mit optionaler Beibehaltung des Seitenverhältnisses.
→ std.svg · std.svg.builder · std.svg.defs
Verwendung
import std.svg.image;
// Externe Bilddatei einbetten (Pfad-Referenz)
SvgImageFile(svg, "foto.jpg", 50.0, 50.0, 400.0, 300.0, "");
// Bild aus Datei als Base64-Data-URI einbetten
SvgImageEmbed(svg, "logo.png", 10.0, 10.0, 120.0, 60.0, "");
// Seitenverhältnis-Kontrolle: xMidYMid meet (Standard), none (strecken)
SvgImageFile(svg, "banner.jpg", 0.0, 0.0, 800.0, 200.0,
"preserveAspectRatio:xMidYMid slice");
// RGB-Rohdaten → PNG → eingebettetes SVG-Bild
// pixels: [W*H*3]int64, jeder Eintrag 0–255 (R, G, B sequenziell)
var w: int64 := 64;
var h: int64 := 64;
var pixels: [12288]int64;
// ... pixels befüllen ...
SvgImageFromRGB(svg, pixels, w, h, 200.0, 100.0, 256.0, 256.0, "");
// Bild als Symbol definieren und mehrfach verwenden
SvgImageSymbol(svg, "icon", "icon.png", 0.0, 0.0, 32.0, 32.0);
SvgUse(svg, "icon", 10.0, 10.0, 32.0, 32.0);
SvgUse(svg, "icon", 50.0, 10.0, 32.0, 32.0);
Funktionen
| Signatur | Sichtbarkeit | Beschreibung |
|---|---|---|
SvgImageFile(svg: Svg, path: pchar, x: f64, y: f64, w: f64, h: f64, style: pchar): void | pub | Bettet Bild per Dateipfad-Referenz ein |
SvgImageEmbed(svg: Svg, path: pchar, x: f64, y: f64, w: f64, h: f64, style: pchar): void | pub | Liest Datei, kodiert Base64 und bettet als Data-URI ein |
SvgImageBase64(svg: Svg, mime: pchar, data: pchar, x: f64, y: f64, w: f64, h: f64, style: pchar): void | pub | Bettet bereits Base64-kodierten Blob mit MIME-Typ ein |
SvgImageFromRGB(svg: Svg, pixels: [0]int64, imgW: int64, imgH: int64, x: f64, y: f64, w: f64, h: f64, style: pchar): void | pub | Konvertiert RGB-Pixelarray zu PNG und bettet ein |
SvgImageSymbol(svg: Svg, id: pchar, path: pchar, vbX: f64, vbY: f64, vbW: f64, vbH: f64): void | pub | Definiert Bild als wiederverwendbares Symbol in <defs> |
SvgBase64Encode(data: pchar, len: int64): pchar | pub | Kodiert Binärdaten als Base64-String |
SvgPngFromRGB(pixels: [0]int64, w: int64, h: int64): pchar | pub | Erzeugt PNG-Binärdaten aus RGB-Array (gibt Base64 zurück) |
Letzte Aktualisierung: 2026-05-23
