Byla vydána nová, významná verze rasterizační knihovny SVG - resvg.
Hlavní změny:
- Zcela nová implementace vykreslování textu:
- Téměř celý zásobník od symbolu po Bezierovu křivku je nyní implementován v Rustu:
výběr písem (shoda písem a záložní), TrueType parsování, uspořádání shluků glyfů podle pravidel SVG (rozložení textu SVG).
Výjimkou je tvarování textu, pro které se používá
HarfBuzz. - Text bude nyní před vykreslením převeden na Bizeuxovy křivky.
To znamená, že backend vykreslování již není vyžadován pro podporu textu. - Obousměrná textová podpora (BIDI přeskupení). příklad.
- podpora textPath. Příklad 1, Příklad 2.
- Podpora režimu psaní (svislý text). příklad.
- Správná podpora pro mezery mezi slovy a písmeny. příklad.
- Téměř celý zásobník od symbolu po Bezierovu křivku je nyní implementován v Rustu:
- Nový, experimentální backend - Raqote (zvláštní poděkování jrmuizel).
Raqote je 2D grafická knihovna napsaná v Rustu.
Je v raných fázích vývoje, ale jeho schopnosti jsou již dostatečné
použít v resvg.
Jeho hlavní výhodou je, že resvg lze nyní sestavit přesně s jednou závislostí, která není Rust – HarfBuzz. - Podporuje vykreslování tvaru, vykreslování textu a vykreslování obrázků.
- Vykreslování rastrových obrázků bylo zrychleno.
- Celkový počet testů dosáhl 1112.
Počet úspěšných testů pro Inkscape a librsvg klesl o 75 %. - Mnoho drobných oprav a vylepšení.
Výsledky testů. Srovnávací tabulka.
Zdroj: linux.org.ru