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