lottie插件_Lottie 入门指北

本文分享了使用Lottie导出动画过程中遇到的各种问题及解决方案,包括如何使用Bodymovin插件导出JSON文件,解决渐变成黑白的问题等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

4354f3b02f6b8baa3ca68331807a8f5e.png

一篇也许有点过时但我认为依然值得一看的文章。


Lottie 的原理说起来很简单:在 Ae 中做好动画后使用插件导出成 json 文件,在程序中引入 Lottie 框架,就可以显示动画了。

事实上,一旦开始真正制作,就会遇到各种问题,尤其在初期安装插件上。


1.使用什么 Ae 插件导出 json 文件?

Bodymovin

2.Bodymovin 插件如何正确的获取、安装和使用?

参照文档指引,顺带一说, Lottie 的文档和 github 页面写得非常好,指引极度清晰。

3.Bodymovin 插件及 Lottie 支持 Ae 中的哪些效果?

见文档说明。

https://airbnb.io/lottie/#/

4.Sketch 中的图形怎么导入 Ae?

  • 导出为 svg 后再转成 ai 文件
  • 使用 Sketch2Ae 插件从 Sketch 直接导出到 Ae

补充:现在插件已经全新改名为AEUX

5.Sketch2Ae 怎么正确获取和安装?

遵循文档指引,到官网上获取和安装或者自行 google 搜索出来的第一项。

注意:不要使用 Sketch 里的 Runner 插件命令行安装,搜索到的是国内开发者开发的另一个同名插件,并不是 google 团队开发的版本,有兴趣可以从以下链接了解两者关系: https://zhuanlan.zhihu.com/p/28828769

6.Sketch2Ae 怎么使用?

参考官网上的详细步骤说明,再顺带一说,Sketch2Ae 官网上的使用教程也非常清晰。

7. svg 转成 ai 文件后,导入 Ae 前要做什么处理吗?

自行 google。

8. ai 文件怎么导入 Ae ?

自行 google。

9. 使用 Sketch2Ae 导出的渐变图层变成了位图怎么办?

  • 那就使用位图;
  • 在 Ae 里重绘图形;
  • 去除渐变效果,导出图形,在 Ae 里重新添加渐变效果;
  • 看下一部分的解决方法;

10. 开发文档中写明支持渐变但是为什么导出的变成了黑白渐变?

这个问题官方文档中没有描述,很有趣。 我在 github 的 issue 上逛了半天,出现这个问题的人很多,问题的产生与系统,区域语言设置,软件语言,插件版本,甚至色彩模式都可能有关系,所以提出的解决方法也很多,「对症下药」的难点是变量太多,一时也难以确定原因,只能把看到的方法都尝试一下。


我的系统版本:macOS 10.12.6

软件版本:Ae CC 2017(简体中文)

插件版本:Bodymovin 5.5.18

实测对于本机可行:

方法1: 用任何一个编译器打开 json 文件,搜索如下代码:

"k"

其中 [0,1,1,1,1,0,0,0] = [0,r,g,b,1,r,g,b],每四项表示一个颜色,首位1/第五位0=渐变位置,r=红色/255,g=绿色/255,b=蓝色/255,颜色换算出来后填进去,以下为例子:

"k"

方法2: 将图层的渐变名称 Gradient 1,实测了一下以下名称:

可行:Gradient / Gradient 1 / gradient 1 / Gradient1

不可行:gradient

后来抽空又测试了一些随意起的英文名称,都可行,识别规律未明,建议还是用以上的名称。


实测对于本机不可行

方法3:

在渐变编辑器里把 TSL 改为 RGB 方法 1 和 3 都来源于以下文章:

https://medium.com/@mehdi.boumendjel/after-effects-x-bodymovin-x-lottie-gradients-black-white-rendering-issue-1ab36f2a2353

以下链接也有提及: https://github.com/airbnb/lottie-web/issues/719

方法4:

保存后再导出 json(一般是问按照上面的方法做了为什么没有效果的人需要的解决方法)

方法5:

合成名字改成 comp

方法6:

Windows 系统下,修改系统区域后修改 Ae 语言,详细参考以下链接:

https://github.com/airbnb/lottie-web/issues/1201

11. 怎么预览我的文件是否正确?

  • 使用 Bodymovin 中的生成预览
  • 在线地址预览:LottieFiles - Free animation files built for Lottie
  • 移动端预览:Lottie Files

12. 图形在 Ae 中预览没有问题,但是最终输出有问题

从 Sketch 中导入时必须是纯粹的图形,不能是由布尔运算计算出来的图形,简而言之,必须使用 Flatten 工具处理图形后才能导出。

13. 我的图形全绿了!

我在一个项目中存在多个合成,每个合成中均有渐变,导出时发现所有的渐变都绿了(其实是都变成了第一个合成的渐变颜色)。 没有在网上搜索过原因,大概能猜到原因:具有渐变的图形,渐变属性都是从另外一个图形复制而来的,之后再进行颜色的修改。虽然颜色不一致,但是渐变的名称都是Gradient1,插件对相同的名称的属性进行了统一处理。

解决方法也很简单: 重命名渐变的名称或者将合成分离到多个项目中都可以解决。


大部分基础问题,会查阅官方文档基本没有问题,值得一看的是关于渐变的问题,不过我也不清楚现在官放层面上解决这个问题没有,希望对看到的读者们有帮助。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值