Lottie--a marvelous library

Lottie – a marvelous library

References:

核心动画系列(四): Lottie 的使用:这篇文章有很多资源可以借鉴

lottie系列文章(一):lottie介绍:一系列文章都建议看一下

大杀器Bodymovin和Lottie:把AE动画转换成HTML5/Android/iOS原生动画

简介

Lottie是一个库,可以解析使用AE制作的动画(需要用bodymovin导出为json格式),支持web、ios、android和react native。在web侧,lottie-web库可以解析导出的动画json文件,并将其以svg或者canvas或者html的方式将动画绘制到我们页面中。

img

img

lottie应用

  • 采坑点:直接用Lottie库的时候定义好path,发现react中会报错,查看源码发现用path的时候xhr发送get请求,导致出现奇怪的responseText报错,所以如果json在本地,建议直接用animationData传参即可;
  • 如果用path引入json数据:只引入文件夹默认去找的是data.json(这个看下源码就知道了
  • react中使用推荐:react-lottie组件,方便快捷
  • 我的lottie demo:https://github.com/LynnWonder/dva-router-demo
冷门?的使用点

lottie的一个additional method: updateTextDocumentData
wiki如下:
https://github.com/airbnb/lottie-web/wiki/TextLayer.updateDocumentData

  1. 使用前提
    使用前提是UI已经从AE导出动画的时候把glyphs也导出了(看composition settings里面只要勾选glyphs就可以了)glyphs:创建,制作,发布为所有人编辑字体
  2. 使用方法:
    参考wiki用法即可;
react-lottie一些介绍
  1. 给传入lottie.loadAnimation的dom节点添加 role=‘button’,默认情况下点击停止动画播放,该属性可以通过
isClickToPauseDisabled=false//默认为false,即点击动画停止播放
  1. react-lottie存在缺陷,只封装了8个Lottie的全局方法,没有封装updateTextDocumentData ,我在我的demo里进行了封装,详情可以看我的demo:https://github.com/LynnWonder/dva-router-demo

Lottie demo

除了官方提供的demo,还推荐以下demo:

https://github.com/skillnull/Lottie-Web-Caption-Animation这位展示了直接操作动画文本的一种方式.即上面的冷门使用点中的内容

https://github.com/chenqingspring/react-lottie:这是react-lottie作者提供的demo

lottie-web是一个开源的JavaScript库,用于在Web上渲染和播放Lottie动画。Lottie动画是由Adobe After Effects创建的矢量动画,可以使用Bodymovin插件导出为JSON格式,然后在网页上使用lottie-web库进行渲染和播放。 lottie-web库提供了很多功能和选项,以便开发者可以根据自己的需求使用和定制动画。它可以用于创建交互式的动画效果,如按钮的点击动画、加载动画、进度条动画等。此外,它还支持设置动画的循环次数、播放速度、淡入淡出效果等。 在使用lottie-web时,我们需要引入相关的CSS和JavaScript文件,并通过HTML的canvas元素来创建动画的容器。然后,我们可以使用lottie.loadAnimation()方法来加载并初始化动画,在loadAnimation()方法中,我们可以传入一些参数,如JSON文件路径、容器元素、循环次数等。 一旦动画加载完成,我们就可以使用lottie.play()方法来播放动画,使用lottie.stop()方法来停止动画。此外,还有一些其他的方法,如lottie.pause()方法暂停动画,lottie.setSpeed()方法设置播放速度等。 值得一提的是,lottie-web还支持事件监听,我们可以通过lottie.addEventListener()方法来监听动画的各种事件,如动画加载完成、播放完成等,以便于我们在合适的时机进行相应的处理。 总之,lottie-web文档提供了全面的使用说明和示例代码,可供开发者参考和学习。使用lottie-web,我们可以轻松地在Web上使用Lottie动画,为网页添加更加生动和有趣的效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值