Após três meses de trabalho árduo, foi lançada a versão 0.15 da biblioteca de gráficos vetoriais ThorVG, escrita em C++ (padrão C++14) e distribuída sob a licença do MIT. A biblioteca é usada para renderizar gráficos vetoriais em projetos como Tizen OS, Motor Godot, LVGL e jogadores pontoLottie.
Gráficos vetoriais de Thor (ThorVG) é uma biblioteca de código aberto leve e portátil projetada para renderizar cenas vetoriais e animações, incluindo formatos SVG minúsculo 1.2, Lottie e formato TVG nativo (SVG, compactado com LZWMais).
A biblioteca fornece APIs convenientes para importar, criar e exibir gráficos vetoriais, bem como exportá-los para diversos formatos gráficos, o que o torna universal para uso em diversas plataformas de software e aplicativos de visualização de conteúdo gráfico:
#include "Example.h" usando namespace std; void exportGif() { auto animação = tvg::Animation::gen(); imagem automática = animação->imagem(); if (!tvgexam::verify(picture->load(EXAMPLE_DIR"/lottie/walker.json"))) return; imagem->tamanho(800, 800); proteção automática = tvg::Saver::gen(); if (!tvgexam::verify(saver->save(std::move(animation), "./test.gif"))) return; saver->sincronização(); cout << "Exportado com sucesso para test.gif." <<fim; } int main(int argc, char **argv) { if (tvgexam::verify(tvg::Initializer::init(0))) { exportGif(); tvg::Inicializador::term(); } retornar 0; }
A biblioteca também vem com os utilitários lottie2gif, svg2png e svg2tvg.
A nova versão contém uma série de melhorias significativas:
- desempenho, funcionalidade e estabilidade significativamente melhorados do mecanismo WebGPU;
- aumento de aproximadamente três vezes no desempenho de renderização de traços;
- Melhor desempenho de mascaramento e vários métodos de sobreposição;
- carga de memória GPU significativamente reduzida;
- adicionado suporte para cortar contornos e gerenciar áreas visíveis da tela;
- A implementação da animação Lottie foi significativamente melhorada;
- A maior adição ao ThorVG é o suporte para camadas nas animações Lottie;
- adicionou recursos interativos às animações de Lottie;
- animação de texto aprimorada;
- algoritmo aprimorado para cálculo de pontos de controle de curvas de Bézier com deslocamento;
- adicionou a capacidade de aplicar vários efeitos de pós-processamento à cena;
- adicionado suporte para glifos de texto composto;
- o desempenho da composição foi melhorado no mecanismo OpenGL;
- adicionou novas APIs estáveis e experimentais;
- muitos bugs corrigidos.
Fonte: linux.org.ru
