lottie

Lottie 能极大丰富动画的描述能力。在可视化叙事中也有不错的使用场景。

在 G2 中通过 @antv/g-lottie-player 可以将 Lottie 加入画布。同时提供简单的动画控制方法例如播放、暂停以及跳转到指定时刻或帧,加入到画布后就可以像基础图形一样任意操作它们。

开始使用

首先安装 @antv/g-lottie-player 播放器:

npm install @antv/g-lottie-player --save

等待画布初始化、Lottie 文件加载完成后,即可创建 Lottie 动画对象,随后渲染到画布得到一个 Group,可任意对它进行变换,例如缩放或者移动到指定地点:

import { loadAnimation } from '@antv/g-lottie-player';

(async () => {
  // 从上下文中获取画布
  const { canvas } = chart.getContext();
  await canvas.ready;

  // 加载 Lottie 文件
  const lottieJSON = await fetch(
    'https://mdn.alipayobjects.com/huamei_qa8qxu/afts/file/A*C9f6TaadHikAAAAAAAAAAAAADmJ7AQ',
  ).then((res) => res.json());

  // 创建动画
  const animation = loadAnimation(lottieJSON, { loop: true, autoplay: true });
  // 渲染到画布,得到 Group 容器
  const wrapper = animation.render(canvas);
  // 任意操作容器,例如移动到指定位置
  wrapper.scale(0.5);
  wrapper.translate(160, 100);
})();

效果如下:

lottie

更多动画控制选项可以参考:Lottie Animation 文档

全站搜索
文档与示例输入关键词开始搜索

输入关键词,查找文档、API 与示例

选择打开Esc关闭