Después de tres meses de arduo trabajo, se lanzó la versión 0.15 de la biblioteca de gráficos vectoriales ThorVG, escrita en C++ (estándar C++14) y distribuida bajo la licencia MIT. La biblioteca se utiliza para representar gráficos vectoriales en proyectos como Tizen OS, Motor Godot, LVGL y jugadores dotLottie.
Gráficos vectoriales de Thor (ThorVG) es una biblioteca de código abierto, liviana y portátil, diseñada para representar escenas y animaciones vectoriales, incluidos formatos. SVG pequeño 1.2, Lottie y formato TVG nativo (SVG, comprimido con Lzw).
La biblioteca proporciona API convenientes para importar, crear y visualizar gráficos vectoriales, así como exportarlos a varios formatos gráficos, lo que lo hace universal para su uso en diversas plataformas de software y aplicaciones para visualizar contenido gráfico:
#incluye "Ejemplo.h" usando el espacio de nombres std; void exportGif() { auto animación = tvg::Animación::gen(); imagen automática = animación->imagen(); if (!tvgexam::verify(imagen->cargar(EXAMPLE_DIR"/lottie/walker.json"))) return; imagen->tamaño(800, 800); protector automático = tvg::Saver::gen(); if (!tvgexam::verify(saver->save(std::move(animation), "./test.gif"))) return; protector->sincronización(); cout << "Exportado exitosamente a test.gif." <<endl; } int main(int argc, char **argv) { if (tvgexam::verify(tvg::Initializer::init(0))) { exportGif(); tvg::Inicializador::término(); } devolver 0; }
La biblioteca también viene con las utilidades lottie2gif, svg2png y svg2tvg.
La nueva versión contiene una serie de mejoras significativas:
- rendimiento, funcionalidad y estabilidad significativamente mejorados del motor WebGPU;
- aumento de aproximadamente tres veces en el rendimiento de representación de trazos;
- rendimiento mejorado del enmascaramiento y varios métodos de superposición;
- carga de memoria de GPU significativamente reducida;
- soporte agregado para recortar contornos y administrar áreas visibles de la pantalla;
- La implementación de la animación de Lottie se ha mejorado significativamente;
- La mayor incorporación a ThorVG es la compatibilidad con capas en las animaciones de Lottie;
- se agregaron funciones interactivas a las animaciones de Lottie;
- animación de texto mejorada;
- algoritmo mejorado para calcular puntos de control de curvas de Bézier con desplazamiento;
- se agregó la capacidad de aplicar varios efectos de posprocesamiento a la escena;
- soporte agregado para glifos de texto compuesto;
- se ha mejorado el rendimiento de la composición en el motor OpenGL;
- se agregaron nuevas API estables y experimentales;
- muchos errores corregidos.
Fuente: linux.org.ru
