Library

thorvg v1.1.1

Versionv1.1.1
Stars★ 1,778
Released2026-08-20

A production-ready C++ vector graphics engine supporting SVG and Lottie formats, featuring advanced rendering backends such as WebGPU for high-performance graphics.

Release notes

This release introduces an experimental video playback API with Apple and Web platform support, along with video playback for Lottie image assets. Rendering performance has been significantly improved across the OpenGL and WebGPU backends through reduced state changes and expanded batching.

SVG support has been enhanced with additional text attributes, improved clipping behavior, and XML entity decoding. This release also improves image color accuracy through embedded PNG ICC profile conversion and higher-quality GIF palette generation, while addressing multiple crashes, memory issues, and malformed-input vulnerabilities across the loaders and rendering engines.

### 🚀 Engines

- [cpu] Fixed a crash when retrieving the bounds of an unprepared stroked shape.
- [gl/es] Optimized gradient rendering performance by approximately up to `1.67x`. [#4555](https://github.com/thorvg/thorvg/issues/4555)
- [wgpu] Improved convex and non-convex fill performance by approximately up to `2x` through optimized batching.

### ✨ Lottie

* Added support for video playback in Lottie image assets. [#4635](https://github.com/thorvg/thorvg/issues/4635)
* Added slot overriding support for time-remapping properties.
* Fixed the lifetime of embedded font data shared between Lottie compositions. [#4636](https://github.com/thorvg/thorvg/issues/4636)
* Fixed a font loader reference-count leak when cached font data is loaded repeatedly.
* Fixed an image ownership regression that could cause memory leaks.
* Improved image and audio asset source handling.
* Hardened gradient and text asset parsing against malformed input. (GHSA-58fm-6wm4-6xp6 GHSA-wcpm-fj7g-q6fg GHSA-pc87-qp47-c96r GHSA-88w8-mjr4-5hw5)

### 🖼️ Picture

- [svg] Added support for the `alignment-baseline`, `dominant-baseline`, `font-weight`, `letter-spacing`, and `word-spacing` attributes. [#4107](https://github.com/thorvg/thorvg/issues/4107) [#4538](https://github.com/thorvg/thorvg/issues/4538)
- [svg] Improved `clipPath` composition by supporting unions of multiple children and nested clip paths. [#2928](https://github.com/thorvg/thorvg/issues/2928)
- [svg] Added decoding for predefined and numeric XML entities. [#4584](https://github.com/thorvg/thorvg/issues/4584)
- [svg] Optimized named-color lookup using binary search.
- [svg] Preserved inherited text styles when invalid attribute values are specified.
- [svg] Fixed a crash caused by malformed `font-face` declarations. [#4605](https://github.com/thorvg/thorvg/issues/4605)
- [svg] Fixed out-of-bounds reads and memory corruption caused by malformed XML elements. (GHSA-7c8w-36jw-m7hj GHSA-c2qc-59qf-xpr9)
- [png] Added conversion of supported embedded ICC color profiles to sRGB. [#4536](https://github.com/thorvg/thorvg/issues/4536)
- [png] Fixed a memory leak when loading invalid PNG files. [#4673](https://github.com/thorvg/thorvg/issues/4673)
- [jpg] Fixed a buffer overflow when loading malformed JPEG files. (GHSA-v45v-rfh3-xmp4)

### 🎬 Media

- Added an experimental `Video` playback API supporting play, pause, stop, seek, loop, volume, mute, playback time, and duration controls.
- Added Apple video playback support using AVFoundation.
- Added a Web video playback glue layer for integration with JavaScript media players.

### 🎞️ GIF Saver

- Improved palette generation to preserve infrequently used colors and correctly handle transparent pixels. [#1758](https://github.com/thorvg/thorvg/issues/1758)
- Separated palette quantization from the k-d tree used for color lookup, improving both color accuracy and search performance. [#4669](https://github.com/thorvg/thorvg/issues/4669)

### 🛠️ Build & Infrastructure

- Made the OpenMP dependency mandatory when OpenMP support is enabled, allowing missing dependencies to be reported during Meson configuration. [#4581](https://github.com/thorvg/thorvg/issues/4581)
- Added Objective-C++ compiler configuration for video playback on iOS targets.

### 🧩 A…

Share this resource


Discovered 2026-08-21 Source GitHub Archive 2026-08 →