Echte Fonts im nativen 2D: glyphon-Glyphenatlas statt Browser-Overlay
Raumstempel-Text rendert jetzt im nativen wgpu-Fenster mit echten TrueType-Glyphen (Inter, Systemfonts via cosmic-text) ueber einen GPU-Glyphen-Atlas — im selben 4x-MSAA-Pass nach der Geometrie. Schriftgroesse in Papier-mm (gleiche Formel wie Strichbreiten, skaliert mit dem Zoom); die Bridge flacht Rich-Text-Stempel + Zusatzzeilen zeilenweise auf serde-kompatible texts ab (Layout wie der SVG-Pfad).
This commit is contained in:
@@ -6,7 +6,7 @@
|
||||
// noetig), damit die Szene auch headless testbar bleibt.
|
||||
|
||||
use crate::tessellate::PX_PER_M;
|
||||
use crate::types::{FillPolygon, Line, Outline, Scene, ViewBox};
|
||||
use crate::types::{FillPolygon, Line, Outline, Scene, Text, TextAlign, ViewBox};
|
||||
|
||||
/// Demo-Szene in Modell-Metern: ein L-foermiger Wand-Poche (konkav!), ein Raum
|
||||
/// und ein paar Striche — genug, um Fuellung, Umriss und Papier-mm-Linien zu sehen.
|
||||
@@ -57,6 +57,14 @@ pub fn demo_scene() -> Scene {
|
||||
color: ink,
|
||||
width_mm: 0.25,
|
||||
}],
|
||||
// Ein Raumstempel-artiger Text (echte Glyphen via Atlas), mittig im Raum.
|
||||
texts: vec![Text {
|
||||
pos: [7.0, 2.0],
|
||||
content: "Raum 16.00 m²".into(),
|
||||
size_mm: 3.5,
|
||||
color: ink,
|
||||
align: TextAlign::Center,
|
||||
}],
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user