Commit graph

3241 commits

Author SHA1 Message Date
Hermet Park
b923bfa1ce doc: added supported platforms 2024-10-15 01:09:34 +09:00
Hermet Park
630cbc48ae api: revise the api for v1.0
- refactored the Fill matrix to hold internal data statically.
- refactored for clean & neat the raster engine / svg loader logic.

API Modification:
 - Matrix Fill::transform() const -> Matrix& Fill::transform() const

issue: https://github.com/thorvg/thorvg/issues/1372
2024-10-14 23:32:55 +09:00
Hermet Park
6a45e6e494 api: revise the api for v1.0
API Modification:
- Matrix Paint::transform() -> Matrix& Paint::transform()

issue: https://github.com/thorvg/thorvg/issues/1372
2024-10-14 17:22:20 +09:00
Hermet Park
8ee5f5c544 api: path data size reduction (to 1 byte)
API Modification:
- enum class PathCommand -> enum class PathCommand : uint8_t
- enum class Result::Unknown (6) -> enum class Result::Unknown = 255

- typedef enum Tvg_Path_Command -> typedef uint8_t Tvg_Path_Command
- TVG_RESULT_UNKNOWN (6) -> TVG_RESULT_UNKNOWN = 255
2024-10-14 14:46:40 +09:00
Hermet Park
005096b9f9 doc: updated SVG 2024-10-13 12:23:45 +09:00
Hermet Park
65916857e2 api: polish the thorvg API usages
Use ColorSpace to support various types of raw bitmaps.

API Modifications:
- Result Picture::load(uint32_t* data, uint32_t w, uint32_t h, bool premultiplied, bool copy = false) -> Result Picture::load(uint32_t* data, uint32_t w, uint32_t h, ColorSpace cs, bool copy = false)
- Tvg_Result tvg_picture_load_raw(Tvg_Paint* paint, uint32_t *data, uint32_t w, uint32_t h, bool premultiplied, bool copy) -> Tvg_Result tvg_picture_load_raw(Tvg_Paint* paint, uint32_t *data, uint32_t w, uint32_t h, Tvg_Colorspace cs, bool copy)

issue: https://github.com/thorvg/thorvg/issues/1372
2024-10-13 11:15:57 +09:00
Hermet Park
28885d07d1 doc: ++images 2024-10-12 21:19:01 +09:00
Hermet Park
0e45fabb3d spec out tvg binary format
issue: https://github.com/thorvg/thorvg/issues/2721
2024-10-12 21:07:31 +09:00
Hermet Park
366cbfbc6b Updated AUTHOR
Added Kelly who contributed
the interactive Lottie Demo for ThorVG.
2024-10-12 21:00:54 +09:00
Hermet Park
367ac5f331 api: removed redundant CompisiteMethod::ClipPath
issue: https://github.com/thorvg/thorvg/issues/1372
2024-10-12 16:02:38 +09:00
Hermet Park
9bc900206b api: polish the thorvg API usages.
API Modification:
- SwCanvas::Colorspace -> ColorSpace

API Addition:
- ColorSpace::Unknown

issue: https://github.com/thorvg/thorvg/issues/1372
2024-10-12 15:38:03 +09:00
Hermet Park
eb1208414d example: unify Shape & MultiShapes 2024-10-11 17:16:59 +09:00
Jinny You
cd10f4ee23 wasm: update wasm build script
Fixed typo. It breaks build progress now.
2024-10-11 15:29:50 +09:00
Hermet Park
d4f8a885b7
Update README.md 2024-10-10 15:25:46 +09:00
Mira Grudzinska
3fd095e947 lottie: add support for mask expansion
Implemented the mask attribute 'x' - expand mask.
Enforced rounded lines join according to tests in AE.

@Issue: https://github.com/thorvg/thorvg/issues/2832
2024-10-10 14:39:10 +09:00
Mira Grudzinska
0a677396c4 sw_engine: split long lines to avoid overflow
@Issue: https://github.com/thorvg/thorvg/issues/2651
2024-10-10 14:21:13 +09:00
Hermet Park
1fe29bb2e9 doc: added canva/flux in practice 2024-10-10 12:31:36 +09:00
Hermet Park
8cdc0da1e2 lottie: Fine-tune for post-processing effect.
reduce quality for the post-processing effect to
improve general performance, while fine-tuning the quality
for lower resolutions.
2024-10-09 20:41:52 +09:00
Hermet Park
4feab345fb sw_engine: properly update the render region
shape render region should be aligned with the
current shape bbox. this could bring the compact size
of the rendering region even shapes are not drawable.
2024-10-09 20:41:52 +09:00
JunsuChoi
6cfc22d123 svg_loader: Support id attribute for tvg::Accessor
Supports access with tvg::Accessor using the value set in the id attribute of SVG
Please refer to examples/Accessor.cpp
2024-10-09 00:04:41 +09:00
Hermet Park
a481f621fe wasm: fix unified build folder structure
The build folder is now aligned with the thorvg.web build.
2024-10-09 00:03:16 +09:00
Hermet Park
0da15d2e76 examples/lottie: updated resources 2024-10-08 11:46:53 +09:00
Sergii Liebodkin
92d01eced9 common: fix autors name 2024-10-07 22:05:00 +09:00
Hermet Park
145195baac infra: removed beta tag from WebGPU
Removed beta tag for dev convenience. Also, ensures that
ThorVG will officially release WebGPU in the next version (v1.0)
2024-10-07 21:08:52 +09:00
Hermet Park
01559a45c0 api: remove deprecations
issue: https://github.com/thorvg/thorvg/issues/1372
2024-10-07 20:43:37 +09:00
Jinny You
40b82c26f5 wasm: increase stack size
Patch #2826 increased the stack size to 4MB
2024-10-07 18:41:12 +09:00
Sergii Liebodkin
b4238cd647 wg_engine: fix long path decoding crash
fixed crash with shape have too big path
2024-10-07 17:00:43 +09:00
Jinny You
e70596629f wasm: increase stack size for WebGPU
Current WG Engine requires a minimum stack size of 2MB to function properly.
2024-10-07 12:14:13 +09:00
Sergii Liebodkin
2bd8fdad36 wg_engine: fix custom scene blending with opacity
fixed incorrect opacity applience for scene blending
2024-10-04 23:23:03 +09:00
Sergii Liebodkin
ba7091956c wg_engine: fix color stops offsets
filter offset by increasing order
2024-10-04 23:17:01 +09:00
JunsuChoi
e07824d577 infra: Improve valgrind result analysis syntax
Previously, if "definitely lost:" was included, it was always decided an error.
Therefore, I modified it to recognize the size and number of errors.
2024-10-04 16:57:08 +09:00
Hermet Park
a72ed0ddfa wg_engine: fixed resource leaks
issue: https://github.com/thorvg/thorvg/issues/2808
2024-10-04 14:20:51 +09:00
Hermet Park
1b599d82c4 release: bump up version v0.15
set dev mode for the next 1.0 release
2024-10-04 11:29:05 +09:00
Sergii Liebodkin
3afb7be255 wg_engine: fix picture memory leak
picture mesh data was not released
2024-10-04 03:40:57 +09:00
Hermet Park
e077eca8a7 infra: --shutdown the unkown-pragmas warning
Apply the flag even if the sanitizer is toggled on.
2024-10-04 02:50:19 +09:00
Hermet Park
687db16646 test/capi: fixed a memory leak 2024-10-04 02:17:11 +09:00
Hermet Park
4423fcf58a doc: updated to v0.15 2024-10-04 00:58:19 +09:00
Mira Grudzinska
19d3eb95e2 sw_engine: ++exception handling
Prevent the infinite loop in the worst case

@Issue: https://github.com/thorvg/thorvg/issues/2651
2024-10-03 23:59:18 +09:00
Mira Grudzinska
3c74e90b76 sw_engine: ignore small cubics
During the stroke's outline calculation, the function
handling small cubics set all angles to zero. When
the cubic was small but not zero, this resulted in
incorrect outlines. Now such curves are ignored.

Co-Authored-By: Hermet Park <hermet@lottiefiles.com>

Issue: https://github.com/thorvg/thorvg/issues/2776
Issue: https://github.com/thorvg/thorvg/issues/2712
2024-10-03 21:31:07 +09:00
Hermet Park
827247181a test: shutdown the false alram of the valgrind
- Conditional jump or move depends on uninitialised value(s)
2024-10-03 18:56:26 +09:00
Hermet Park
08e6b8333f renderer/compressor: corrected base64 decoded data size
issue: https://github.com/thorvg/thorvg/issues/2794
2024-10-03 18:56:26 +09:00
Hermet Park
b868503033 sw_engine: ++stability
cut the Bezier curve based on the number of points
and transform it into a straight line when it's very small.

issue: https://github.com/thorvg/thorvg/issues/2759
2024-10-03 18:54:14 +09:00
Hermet Park
d3af7a5cb0 sw_engine: fixed an uninitialized data access 2024-10-03 18:20:47 +09:00
Mira Grudzinska
a80beff714 examples: fix mingw build error
M_PI was not declared error solved
2024-10-03 16:39:18 +09:00
Hermet Park
d8f6710c73 lottie: hotfix layer effect parsing
fixed a break in expressions/driving.json
2024-10-03 13:53:45 +09:00
Hermet Park
5dabcbac0b lottie: fixed a corrupted colorstop population
the color stop number should be retained during
the population of frames

issue: https://github.com/thorvg/thorvg/issues/2765
2024-10-03 13:31:19 +09:00
Mira Grudzinska
38f4d17eac lottie: fix gradient populating
When populating the gradient, the color/alpha should
be assigned the first possible value from the provided
ones, rather than the default value of 255.
2024-10-03 12:32:48 +09:00
Hermet Park
132213110c wasm: fix a build break 2024-10-01 17:11:28 +09:00
Hermet Park
13110fbec7 lottie: portability++
issue: https://github.com/thorvg/thorvg/issues/2764
2024-10-01 14:08:08 +09:00
Hermet Park
ad6f2070fe examples/tvg: updated samples 2024-10-01 12:17:32 +09:00