Despois de tres meses de duro traballo, lanzouse o 0.15 da biblioteca de gráficos vectoriais ThorVG, escrito en C++ (estándar C++ 14) e distribuído baixo a licenza MIT. A biblioteca úsase para renderizar gráficos vectoriais en proxectos como Tizen OS, Motor Godot, LVGL e xogadores puntoLottie.
Gráficos vectoriales de Thor (ThorVG) é unha biblioteca de código aberto lixeira e portátil deseñada para renderizar escenas e animacións vectoriais, incluíndo formatos SVG Tiny 1.2, Lottie e formato nativo TVG (SVG, comprimido con LZW).
A biblioteca ofrece API convenientes para importar, crear e mostrar gráficos vectoriais, así como para exportalos a varios formatos gráficos, o que o fai universal para o seu uso en diversas plataformas de software e aplicacións para visualizar contido gráfico:
#include "Example.h" usando namespace std; void exportGif() { animación automática = tvg::Animation::gen(); imaxe automática = animación-> imaxe (); if (!tvgexam::verify(image->load(EXAMPLE_DIR"/lottie/walker.json"))) retorna; imaxe->tamaño (800, 800); aforro automático = tvg::Saver::gen(); se (!tvgexam::verify(saver->save(std::move(animación), "./test.gif"))) retorna; aforro->sincronizar(); cout << "Exportouse correctamente a test.gif." <<endl; } int main(int argc, char **argv) { if (tvgexam::verify(tvg::Initializer::init(0))) { exportGif(); tvg::Inicializador::term(); } devolver 0; }
A biblioteca tamén inclúe as utilidades lottie2gif, svg2png e svg2tvg.
A nova versión contén unha serie de melloras significativas:
- mellorou significativamente o rendemento, a funcionalidade e a estabilidade do motor WebGPU;
- aumento aproximado de tres veces no rendemento da representación do trazo;
- mellora do rendemento do enmascaramento e varios métodos de superposición;
- reduciu significativamente a carga da memoria da GPU;
- engadiu soporte para recortar contornos e xestionar áreas visibles da pantalla;
- A implementación da animación Lottie mellorouse significativamente;
- A maior adición a ThorVG é o soporte para capas nas animacións de Lottie;
- engadiu funcións interactivas ás animacións de Lottie;
- animación de texto mellorada;
- algoritmo mellorado para calcular puntos de control das curvas de Bézier con compensación;
- engadiu a posibilidade de aplicar varios efectos de post-procesamento á escena;
- engadiu soporte para glifos de texto composto;
- Mellorouse o rendemento da composición no motor OpenGL;
- engadiu novas API estables e experimentais;
- moitos erros corrixidos.
Fonte: linux.org.ru
