Hermet Park
3efb659e48
capi: udpated the doc.
...
BETA_API -> Experimental API
2023-12-26 18:19:46 +09:00
Hermet Park
f5e6fce5c1
gif: corrected the wrong aspect ratio scaling.
2023-12-26 18:18:33 +09:00
Hermet Park
875b623c95
binding/wasm: updated save features
...
- removed the compression option
- added an animation save function.
2023-12-26 18:17:41 +09:00
Hermet Park
2c382e3d9b
doc: keep the style clean & neat
2023-12-26 18:17:41 +09:00
Hermet Park
40ff8592e5
binding/wasm: updated save features
...
- removed the compression option
- added an animation save function.
2023-12-26 18:17:41 +09:00
Jinny You
059a950d42
docs: Remove all warnings from doxygen
2023-12-26 18:17:41 +09:00
Hermet Park
22c36b7069
wasm: fix a regression bug.
...
The Animation::frame() method has been modified.
It will now return InsufficientCondition,
if the frame value is the same as the previous one.
In addition to this change, we have also updated its usage accordingly.
2023-12-26 18:05:58 +09:00
Hermet Park
0832a188fe
animation/lottie: updated the frame count unit.
...
replace the frame count unit from the int32_t to float
since animations could smoothly interpolate key-frames.
This notificably improve the animation smoothness in Lottie
Beta API changes:
Result Animation::frame(uint32_t no) -> Result Animation::frame(float no)
uint32_t Animation::curFrame() const -> float Animation::curFrame() const
uint32_t Animation::totalFrame() const -> float Animation::totalFrame() const
2023-12-26 17:51:53 +09:00
Hermet Park
1b15233aeb
api: enhance the API usage.
...
Allow users to omit the default type casting for added convenience.
2023-12-26 17:50:36 +09:00
Sergii Liebodkin
da72a57f8a
capi: introduce missing blend functions in capi bindings
2023-12-26 17:50:22 +09:00
Hermet Park
2b7c47f2b5
doc/capi: updated
2023-09-26 19:06:57 +09:00
Hermet Park
ac82234360
capi: api sync up.
...
added beta apis:
- enum Tvg_Composite_Method::TVG_COMPOSITE_METHOD_INVERSE_LUMA_MASK;
promote apis:
- TVG_API Tvg_Result tvg_shape_set_stroke_miterlimit(Tvg_Paint* paint, float miterlimit);
- TVG_API Tvg_Result tvg_shape_get_stroke_miterlimit(const Tvg_Paint* paint, float* miterlimit);
@Issue: https://github.com/thorvg/thorvg/issues/1669
2023-09-25 21:33:23 +09:00
Hermet Park
749523b709
capi/animation: support animation features under the beta.
...
New APIs:
- Tvg_Animation* tvg_animation_new();
- Tvg_Result tvg_animation_set_frame(Tvg_Animation* animation, uint32_t no);
- Tvg_Paint* tvg_animation_get_picture(Tvg_Animation* animation);
- Tvg_Result tvg_animation_get_cur_frame(Tvg_Animation* animation, uint32_t* no);
- Tvg_Result tvg_animation_get_total_frame(Tvg_Animation* animation, uint32_t* cnt);
- Tvg_Result tvg_animatoon_get_duration(Tvg_Animation* animation, float* duration);
- Tvg_Result tvg_animation_del(Tvg_Animation* animation);
2023-09-25 12:27:22 +09:00
Hermet Park
7626aaf5d2
bindings/wasm: optimize the performance.
...
Do not try to update/render if nothing has been changed.
2023-09-01 13:50:00 +09:00
Hermet Park
7d797ee548
Yet we don't break apis, this patch reverts the next:
...
cb36c25aff
8c0fc2b25a
c1e4e0808a
Those reverted changes sholud be in the bucket, the next issue item:
@Issue: https://github.com/thorvg/thorvg/issues/1372
2023-08-24 01:00:57 +09:00
Mira Grudzinska
8c0fc2b25a
capi: dashed stroke setter and getter modyfied
...
tvg_shape_set_stroke_dash() and tvg_shape_get_stroke_dash()
require an extra argument: offset
2023-08-23 12:40:27 +09:00
Hermet Park
c97c60b900
binding wasm: fix a memory leak.
...
clear the buffer memory properly when a canvas size is changed.
2023-08-07 13:22:13 +09:00
Hermet Park
052cfea4b1
binding wasm: tag it as beta version.
...
wasm interfaces are fragile now.
we dont'guarantee compatibility yet.
2023-08-04 15:09:28 +09:00
Hermet Park
496ec72f2a
binding wasm: support the animation.
2023-08-04 15:09:28 +09:00
Hermet Park
cee59dcd0e
binding wasm: revise the code.
...
rewrite the code following the thorvg convention.
2023-08-04 15:09:28 +09:00
Hermet Park
6ab32cae0b
infra wasm: migrate wasm into bindings.
2023-08-04 15:09:28 +09:00
Hermet Park
3fe6c7126a
infra build: revise the binding builds.
...
The thorvg lib should not have a dependency on the bindings.
In fact, it's inverted.
2023-08-03 10:52:40 +09:00
Hermet Park
4f26a84b53
common: optimize paint data size.
...
packing the data fields with the appropriate size.
96 -> 24 (-9 bytes per one paint)
2023-06-14 10:46:30 +09:00
Martin Capitanio
44a750ee5d
API, CAPI, sw_engine: add suport for stroke-miterlimit.
2023-06-13 10:42:20 +09:00
Hermet Park
07dc68f655
capi: --redundant tag
2023-06-12 11:29:29 +09:00
Hermet Park
b214fd23bc
common canvas/scene: introduce paints() api that returns the list of the paints.
...
These new apis would enable users to easily modify the motion scene,
The data structure of the paints has been changed from an array to a list.
@APIs:
std::list<Paint*>& Canvas::paints() noexcept;
std::list<Paint*>& Scene::paints() noexcept;
@Deprecated:
Result Canvas::reserve(uint32_t size) noexcept;
Result Scene::reserve(uint32_t size) noexcept;
@Issue: https://github.com/thorvg/thorvg/issues/1203
2023-06-09 10:54:03 +09:00
Mira Grudzinska
2309a48369
capi: tvg_shape_set_paint_order introduced
...
Capi sets the rendering order of the stroke and the fill.
2023-05-20 13:23:47 +09:00
Hermet Park
5ceeb32ef0
api: remove a beta api.
...
- Result Picture::viewbox(float* x, float* y, float* w, float* h) const; //c++
- vg_Result tvg_picture_get_viewbox(const Tvg_Paint* paint, float* x, float* y, float* w, float* h); //c
@Issue: https://github.com/thorvg/thorvg/issues/1372
2023-05-20 13:22:52 +09:00
Vincent Torri
be2de28312
portability: fix usage of TVG_API
...
Rule of thumb on Windows:
* for a DLL:
* if the library is built, set TVG_API to __declspec(dllexport)
* if the library is used, set TVG_API to __declspec(dllimport)
* for a static library, set TVG_API to nothing
To set TVG_API for a static library, TVG_STATIC is defined when the stataic library is built.
Otherwise, TVG_API is correctly set for a DLL.
Also sun and intel compilers are handled
@issue: https://github.com/thorvg/thorvg/issues/1446
2023-05-16 18:55:33 +09:00
Mira Grudzinska
ac86c522f1
capi: luma mask introduced, tvg_picture_load_raw description changed
2023-05-09 15:55:22 +09:00
Mira Grudzinska
cc75928c23
capi: type identifier apis added
...
The tvg_gradient_get_identifier and tvg_paint_get_identifier
apis have been introduced. They set the newly introduced
Tvg_Identifier enum, which indicates the paint and gradient
types, respectively.
2023-04-25 09:15:28 +09:00
Hermet Park
69063d2405
infra: specify TVG_API for both static/dynamic linking.
...
The previous meson script was incomplete,
therefore this change requires it to be revised.
To enable static linking use the next meson option.
"-Ddefault_library=static"
Issue: https://github.com/thorvg/thorvg/issues/1234
2023-04-22 18:32:22 +09:00
Hermet Park
9b3c34c3b1
updated copyright.
2023-01-14 13:48:11 +09:00
Hermet Park
f0141e63de
updated copyright date.
2022-01-12 14:08:48 +09:00
Mira Grudzinska
5b3252ecf9
capi: missing arg description added
2021-12-17 11:21:08 +09:00
Hermet Park
e2dd889e1a
apis: promote beta apis to the official ones.
...
these apis are good to open in the next release.
2021-11-11 14:17:43 +09:00
Mira Grudzinska
2780d77a52
capi: tvg_paint_transform -> tvg_paint_set_transform
2021-10-26 19:20:15 +09:00
Mira Grudzinska
8c52f2a870
capi: casting on 'const Paint*' instead of constness removing
2021-10-26 11:51:35 +09:00
Hermet Park
5be27a151e
capi: ++missing const in capis.
...
Non-changeable apis should keep the const parameter so that
user knows the api won't change the internal data.
Thanksfully, we didn't release the capis, we can change it.
2021-10-25 22:21:09 +09:00
Mira Grudzinska
d25a285b4c
capi: gradient transformation apis added
2021-10-25 19:35:00 +09:00
Mira Grudzinska
280d27ac83
capi: added pointer validation
2021-10-23 12:18:23 +09:00
Ji2z
fcb0258b3c
common: Fix typo
...
Fix typo backeneds to backends
2021-10-22 15:10:02 +09:00
Mira Grudzinska
95430fc645
capi: change defines to enum
...
Tvg_Engine enum introduced to replace TVG_ENGINE_SW/GL defs.
2021-10-14 12:39:54 +09:00
Mira Grudzinska
e6debdbf15
capi: tvg_swcanvas_set_mempool capi added ( #903 )
...
* capi: tvg_swcanvas_set_mempool capi added
* tests: tvg_swcanvas_set_mempool added to the tests
2021-10-13 19:31:39 +09:00
Hermet Park
0f0a0ae4f0
bindings capi: code refactoring
...
fix for code consistency, no logical changes.
2021-10-13 19:02:55 +09:00
Mira Grudzinska
600055dacd
capi: saver capis added
2021-10-13 18:58:18 +09:00
Mira Grudzinska
d40d2ea288
capi: introduced Tvg_Colorspace enum instead of defs
...
Used in the tvg_swcanvas_set_target() capi.
2021-10-13 18:55:17 +09:00
Mira Grudzinska
e0488f4a8d
capi: tvg_gradient_duplicate() added
2021-10-13 18:34:02 +09:00
Mira Grudzinska
39af185de8
docs: ++
2021-10-12 14:04:18 +02:00
Hermet Park
9737dd4a89
test capi: update tvg_paint_get_bounds() utc.
...
The api has been changed by 060564cc93
update it according its change.
2021-10-06 22:17:18 +09:00