thorvg/src/examples
JunsuChoi 2da608eef2 saver GifSaver: Introduce GifSaver for animation
Add save() API that takes tvg::Animation as a parameter.
This API uses gif.h to create each animation frame as a gif frame.
Gif creation do not support threads because they must be added sequentially.
Please see example/GifSaver.cpp

ex)
auto animation = tvg::Animation::gen();
auto picture = animation->picture();
picture->load(EXAMPLE_DIR"/walker.json");
auto saver = tvg::Saver::gen();
saver->save(std::move(animation), EXAMPLE_DIR"/test.gif");
saver->sync();

New API:
Result Saver::save(std::unique_ptr<Animation> animation, const std::string& path, uint32_t quality = 100, uint32_t fps = 0);

Issue: https://github.com/thorvg/thorvg/issues/1712
2023-11-06 20:16:32 +09:00
..
images lottie/builder: enable layer blending 2023-10-27 12:28:40 +09:00
Accessor.cpp api: enhance Shape::fill() method usage. 2023-06-07 12:10:31 +09:00
all.sh examples: changed the default test intervnal time. (1 -> 2) 2023-09-21 22:18:58 +09:00
AnimateMasking.cpp Yet we don't break apis, this patch reverts the next: 2023-08-24 01:00:57 +09:00
Animation.cpp animation/lottie: updated the frame count unit. 2023-10-27 12:23:38 +09:00
Arc.cpp Yet we don't break apis, this patch reverts the next: 2023-08-24 01:00:57 +09:00
Blending.cpp examples blending: fix a memory leak. 2023-07-29 10:29:03 +09:00
Capi.cpp animation/lottie: updated the frame count unit. 2023-10-27 12:23:38 +09:00
ClipPath.cpp Yet we don't break apis, this patch reverts the next: 2023-08-24 01:00:57 +09:00
Common.h gl_engine: upgrade min gl version 2023-08-09 23:23:57 +09:00
CustomTransform.cpp Yet we don't break apis, this patch reverts the next: 2023-08-24 01:00:57 +09:00
DirectUpdate.cpp Yet we don't break apis, this patch reverts the next: 2023-08-24 01:00:57 +09:00
Duplicate.cpp Yet we don't break apis, this patch reverts the next: 2023-08-24 01:00:57 +09:00
FillRule.cpp api: enhance Shape::fill() method usage. 2023-06-07 12:10:31 +09:00
GifSaver.cpp saver GifSaver: Introduce GifSaver for animation 2023-11-06 20:16:32 +09:00
GradientMasking.cpp api: enhance API usability 2023-06-13 10:42:57 +09:00
GradientStroke.cpp Yet we don't break apis, this patch reverts the next: 2023-08-24 01:00:57 +09:00
GradientTransform.cpp api: enhance API usability 2023-06-13 10:42:57 +09:00
ImageScaleDown.cpp fix compiler warnings on MacOS 2023-05-19 10:56:59 +09:00
ImageScaleUp.cpp fix compiler warnings on MacOS 2023-05-19 10:56:59 +09:00
InvLumaMasking.cpp Yet we don't break apis, this patch reverts the next: 2023-08-24 01:00:57 +09:00
InvMasking.cpp Yet we don't break apis, this patch reverts the next: 2023-08-24 01:00:57 +09:00
LinearGradient.cpp api: enhance API usability 2023-06-13 10:42:57 +09:00
Lottie.cpp animation/lottie: updated the frame count unit. 2023-10-27 12:23:38 +09:00
LumaMasking.cpp Yet we don't break apis, this patch reverts the next: 2023-08-24 01:00:57 +09:00
Masking.cpp Yet we don't break apis, this patch reverts the next: 2023-08-24 01:00:57 +09:00
MaskingMethods.cpp loader/lottie: support trimpath feature 2023-09-01 13:16:18 +09:00
meson.build saver GifSaver: Introduce GifSaver for animation 2023-11-06 20:16:32 +09:00
MultiCanvas.cpp fix compiler warnings on MacOS 2023-05-19 10:56:59 +09:00
MultiShapes.cpp common canvas/scene: introduce paints() api that returns the list of the paints. 2023-06-09 10:54:03 +09:00
Opacity.cpp Yet we don't break apis, this patch reverts the next: 2023-08-24 01:00:57 +09:00
Path.cpp api: enhance Shape::fill() method usage. 2023-06-07 12:10:31 +09:00
PathCopy.cpp api: enhance Shape::fill() method usage. 2023-06-07 12:10:31 +09:00
Performance.cpp api: enhance Shape::fill() method usage. 2023-06-07 12:10:31 +09:00
PictureJpg.cpp fix compiler warnings on MacOS 2023-05-19 10:56:59 +09:00
PicturePng.cpp api: enhance API usability 2023-06-13 10:42:57 +09:00
PictureRaw.cpp api: enhance API usability 2023-06-13 10:42:57 +09:00
PictureTvg.cpp fix compiler warnings on MacOS 2023-05-19 10:56:59 +09:00
PictureWebp.cpp examples webp: --compiler warning. 2023-07-18 11:02:26 +09:00
RadialGradient.cpp api: enhance API usability 2023-06-13 10:42:57 +09:00
Retaining.cpp Yet we don't break apis, this patch reverts the next: 2023-08-24 01:00:57 +09:00
Scene.cpp common canvas/scene: introduce paints() api that returns the list of the paints. 2023-06-09 10:54:03 +09:00
SceneBlending.cpp Yet we don't break apis, this patch reverts the next: 2023-08-24 01:00:57 +09:00
SceneClipper.cpp Yet we don't break apis, this patch reverts the next: 2023-08-24 01:00:57 +09:00
SceneTransform.cpp Yet we don't break apis, this patch reverts the next: 2023-08-24 01:00:57 +09:00
Shape.cpp api: enhance API usability 2023-06-13 10:42:57 +09:00
Stroke.cpp Yet we don't break apis, this patch reverts the next: 2023-08-24 01:00:57 +09:00
StrokeLine.cpp Yet we don't break apis, this patch reverts the next: 2023-08-24 01:00:57 +09:00
StrokeMiterlimit.cpp Yet we don't break apis, this patch reverts the next: 2023-08-24 01:00:57 +09:00
Svg.cpp examples: do not create contents that is over-counted. 2023-07-27 00:31:27 +09:00
Svg2.cpp api: enhance API usability 2023-06-13 10:42:57 +09:00
Texmap.cpp api: enhance API usability 2023-06-13 10:42:57 +09:00
Transform.cpp api: enhance API usability 2023-06-13 10:42:57 +09:00
Tvg.cpp examples: do not create contents that is over-counted. 2023-07-27 00:31:27 +09:00
TvgSaver.cpp api: enhance Shape::fill() method usage. 2023-06-07 12:10:31 +09:00
Update.cpp api: enhance API usability 2023-06-13 10:42:57 +09:00