Thanks to visit codestin.com
Credit goes to Github.com

Skip to content

ThorVG 1.0.0-pre27

Pre-release
Pre-release

Choose a tag to compare

@hermet hermet released this 28 Aug 15:46
· 244 commits to main since this release

The ThorVG canvas and text features have been significantly enhanced, with new support for text outlines, alignment, and picture origin.
Rendering engines (CPU, GL/ES, WGPU) have received performance and stability improvements, while Lottie support is now more robust with refactored slots and better expression handling.

๐Ÿ”ง Core

  • Revised the ThorVG canvas interface for greater flexibility and improved efficiency. #3116
  • Introduced support for rendering text outlines. #3397
  • Added support for horizontal and vertical text alignment. #3397
  • Enabled setting the origin point for picture elements. #1506

๐Ÿš€ Engines

  • [cpu] Resolved performance regressions introduced in v1.0-pre26.
  • [cpu] Improved memory efficiency when handling stroke and fill operations.
  • [gl/es] Implemented comprehensive scene-level blending support, including HSL-based blend modes. #3072
  • [wgpu] Addressed rendering issues where fill and stroke data were sometimes omitted. #3716
  • [wgpu/gl/es] Enhanced bounding box calculations for stroked paths. #3725

โœจLottie

  • Simplified and standardized slot handling with reusable interfaces. #2591 #3099
  • Corrected evaluation of the "value" property in Lottie expressions. #3693
  • Various fixes to improve overall runtime stability.

๐Ÿ› ๏ธ Portability

  • Corrected directory path parsing issues that prevented Lottie resources from loading properly on MSYS2. #3542

๐Ÿงฉ API Updates

  • C++ API
+ Result Text::outline(float width, uint8_t r, uint8_t g, uint8_t b)
+ Result Text::align(float x, float y)
+ Result Text::layout(float w, float h)
+ Result Picture::origin(float x, float y)
+ Result Picture::origin(float* x, float* y)
  • C API
+ Tvg_Result tvg_text_set_outline(Tvg_Paint* paint, float width, uint8_t r, uint8_t g, uint8_t b)
+ Tvg_Result tvg_text_align(Tvg_Paint* paint, float x, float y)
+ Tvg_Result tvg_text_layout(Tvg_Paint* paint, float w, float h)
+ Tvg_Result tvg_picture_set_origin(Tvg_Paint* picture, float x, float y)
+ Tvg_Result tvg_picture_get_origin(Tvg_Paint* picture, float* x, float* y)
* Tvg_Result tvg_text_set_fill_color() -> Tvg_Result tvg_text_set_color()

โœ… Additional Notes

  • PR #3695 This change may break backward compatibility in cases where stricter failure checks were previously expected or relied upon.

Full Changelog: v1.0-pre26...v1.0-pre27