En ny, betydningsfuld udgivelse af SVG rasteriseringsbiblioteket er blevet frigivet - resvg.
Vigtigste ændringer:
- Helt ny implementering af tekstgengivelse:
- Næsten hele stakken fra symbol til Bezier-kurve er nu implementeret i Rust:
valg af skrifttyper (fontmatching og fallback), TrueType-parsing, arrangement af glyph-klynger i henhold til SVG-regler (SVG-tekstlayout).
En undtagelse er tekstformning, som den bruges til
HarfBuzz. - Tekst vil nu blive konverteret til Bizeux-kurver før gengivelse.
Det vil sige, at gengivelsesbackend ikke længere er påkrævet for at understøtte tekst. - Tovejs tekstunderstøttelse (BIDI-genbestilling). Eksempel.
- textPath understøttelse. Eksempel 1, 2 eksempel.
- Understøttelse af skrivetilstand (lodret tekst). Eksempel.
- Korrekt understøttelse af ord- og bogstavafstand. Eksempel.
- Næsten hele stakken fra symbol til Bezier-kurve er nu implementeret i Rust:
- Ny, eksperimentel backend - Raqote (særlig tak til jrmuizel).
Raqote er et 2D-grafikbibliotek skrevet i Rust.
Det er i de tidlige udviklingsstadier, men dets muligheder er allerede tilstrækkelige til
brug i resvg.
Dens største fordel er, at resvg nu kan bygges med præcis én ikke-Rust-afhængighed - HarfBuzz. - Understøtter formgengivelse, tekstgengivelse og billedgengivelse.
- Rasterbilledgengivelsen er blevet fremskyndet.
- Det samlede antal test nåede 1112.
Antallet af vellykkede tests for Inkscape og librsvg faldt med 75 %. - Mange små rettelser og forbedringer.
Test resultater. Sammenligningstabel.
Kilde: linux.org.ru