1.通过动图/视频来实现

如果你是设计师,并且熟练的运用Photoshop,那你一定对混合图层非常熟悉,他是实现两种图层消除颜色差值的一种快速实现方法,当然在web网页上也存在像Photoshop中的图层逻辑和混合模式,通过css代码可以实现网页中的图片和文字、视频等元素的图层堆叠,你可以把一种元素放置到另一种元素的上方,并且可以调节混合模式blend-mode来做到和Photoshop的混合图层一样的效果,通过这种方式,我们可以通过ae来制作合适的特效或动画效果,把我们所制作的效果放到网页当中,通过混合模式来消除ae所生成的颜色背景,从而达到与网页背景相融合,实现网页特效的目的。

mix-blend-mode:screen

Ae所生成的动画特效都是附带颜色背景的,无论是动图gif还是视频,网所以页设计者在进行这种实现的时候,往往一开始要进行合理的具体规划,保证ae动画特效的背景颜色与网页主体颜色保持一直或相近,才能达到完美消除底色。

但鉴于网页中的混合模式相比于Photoshop的混合方式要少,尤其是当如果出现两种颜色差距较大背景在网页中切换时,覆盖在之上的动画特效往往会出现底色,与原有的颜色形成不协调的色差,导致明显的感官差异,因此在使用视频和动图特效过程中,网页的整体颜色协调和网页的交互模式都需要提前应对处理和规划。

抛开各种格式的视频,Gif动图本身也存在一定的缺陷,无法实现透明过渡,色彩表现清晰度也比较低。

AE在生成包括MP4的各种视频格式时,往往自身的设置属性无法达到,所以经常通过ME进行各种视频的详细调整和导出,其中AVI格式的视频,可以通过携带alpha通道导出,在导入Photoshop时,会自动生成无背景视频,但在网页使用过程中,鉴于视频播放器的问题,总会生成一层默认黑色背景,当网页加载AVI时也要通过其他的插件支持,导致本身并不能进行透明背景的输出,背景必然存在。

2.通过json数据/svga来实现

通过数据的方式实现动画和特效,关于AE通过插件导出json和svga数据,两者基本一样,都需要通过绑定js来进行加载实现,都可以把图层信息转换成数据进行储存,再通过加载器来进行动画特效的播放和控制。

AE中有专门的对应json和svga格式的导出插件,通过设置导出,把ae中的图层信息和动画信息转化成文本数据,再通过调用Lottie.js和svga.js就可以再网页当中实现无背景存在的特效和动画。

这里着重说明一下在下使用Lottie.js,可以通过设置导出带有图片的文件和json代码,并在网页中进行调用,也可以直接包含图形信息到数据,只生成json文件,直接调用一个json就可以实现,甚至可以直接生成html和css源代码,只用纯css和html就能完成动画特效的实现。

可以加载alpha通道,表明可以实现动画特效的颜色背景输出和无背景动画输出,因为可以转换信息到数据,因此json文件需要自带的json播放器才能查看导出效果,或者直接加载到网页当中也可以观看导出效果。

关于压缩方面,视频和动图可以用合适的工具进行相应的格式压缩,数据文件则要压缩调整好后进行生成,要在生成动画效果后调整好大小,清晰度等参数,再通过插件进行导出json文件,这样才能控制好动效数据的大小,没有办法进行后期对json数据进行压缩。

3.APNG/WebP新图片格式

通过新型的的图片格式生成透明背景的动画特效,近几年兴起的新型图片格式,在原先的图片格式上可以进行时间轴播放,支持alpha通道,透明和渐变过渡,老式图片格式的升级版,经过几年的发展,在浏览器的兼容性上已经适配了不少的主流浏览器,但无论那种新图片格式,相比于其他动效实现方式在网页上的兼容性还是表现的差一些。

兼容问题参考此篇文档

https://blog.csdn.net/weixin_44369568/article/details/101458255https://blog.csdn.net/weixin_44369568/article/details/101458255https://blog.csdn.net/weixin_44369568/article/details/101458255

在下只使用过APNG,WebP没用过,所以不做说明,网页特效可以通过AE制作,并生成png序列帧或iff等带有alpha透明序列帧,再通过isparta工具把序列帧导出为APNG动图,或通过其他方式转化成APNG,也可以生成无背景的动画特效。

关于APNG的生成,Isparta工具不怎么好用,会报错和卡死,维护也相当弱,工具存在bug问题,(明明生成报错失败了,文件下还是会生成带有isparta后缀的APNG,可以正常播放和使用,gif选项导出不了等)APNG格式相当于是整个png动画序列通过Photoshop加入时间轴调整后,再进行整合的一个文件包格式,体积是整个png序列,甚至更大。

压缩相对困难,除去ispata自带的压缩工具,其他没有对应的兼容工具可以使用,如果要进行压缩,只能像数据格式一样,需要先对png序列进行处理,压缩和调整,在进行生成。

4.Css/Js纯代码实现

按照设计者制作的ae特效演示用纯代码实现,通过css和js代码进行动画特效的实现,二维动画的实现有animation.js等,三维的动画实现有three.js等,还有都两者沾一点的echarts.js和echarts-gl.js。

可以直接通过代码的方式直接生成,也可以通过把AE动画拆分成对应的动画组件或者图片,通过css进行时间移动,透明度变换等,将动画进行组合,从而生成动画特效,效果实现代码和逻辑比较复杂,需要经过大量调整,控制度最高,代码可调节。

其中threejs的使用生成会带有颜色场景和灯光,同动图一样,使用前需要对网页的交互效果实现进行规划,防止出现过渡色差的那种不协调感

体积比较

设计/前端 关于AE动画/特效web实现的四种方法相关推荐

  1. AE火焰特效怎么做?两种方法快速实现高大上效果!

    酷炫的AE火焰特效怎么做? 两种方式教你快速实现这么高大上的效果! 方法1:用到爱剪辑里的"烈火燎原"的动景特效 先可以看看加上火焰特效后,画面一下有了炸裂的视觉感. 把视频导入到 ...

  2. [Web 前端] 018 css 清除浮动的四种方法

    清除浮动的四种方法 加 clear: ...(见例1) 父级上增加属性 overflow:hidden(见例2.1) 在最后一个子元素的后面加一个空的 div,给它一个样式属性 clear: both ...

  3. 前端js调用后端API获取数据的三种方法(2022.7.25)

    前端js调用后台API获取数据的三种方法(2022.7.25) 前言 需求分析 一个Get实例 浏览器请求 SoapUI软件请求 一个Post实例 浏览器请求 SoapUI软件请求 1.Http简介( ...

  4. HTML前端页面颜色的四种方法,色号表

    HTML前端页面颜色的四种方法,色号表 颜色的三种表示方式: (1)单词:red green black-用法: <font color="pink" size=" ...

  5. 解决transition动画与display冲突的几种方法

    解决transition动画与display冲突的几种方法 参考文章: (1)解决transition动画与display冲突的几种方法 (2)https://www.cnblogs.com/ihar ...

  6. swf 在html页面平铺,四种方法实现动画SWF文件全屏效果

    如何让SWF文件全屏的效果? 第一种方法: 不显示浏览器菜单栏.工具栏的全屏.这种全屏稍稍复杂,也与 FLASH 的设置无关,但要借助JavaScript来完成.方法是:在HTML文件中间加入以下代码 ...

  7. 【Qt】Qt多线程开发—实现多线程设计的四种方法

    Qt-使用Qt实现多线程设计的四种方法 文章目录 Qt-使用Qt实现多线程设计的四种方法 一.写在前面 二.[方法一] QThread:带有可选事件循环的底层API 三.[方法二] QThreadPo ...

  8. tomcat部署web应用的4种方法

    Tomcat发布项目的方式大致有三种,但小菜认为通过在tomcat的conf/Catalina/localhost目录下添加配置文件,来发布项目,是最佳选择. 因为这样对tomcat的入侵性最小,只需 ...

  9. android ae动画教程,AE动画转Web代码工具指北-Lottie

    简介 Lottie 是 Airbnb 开源的一套跨平台的完整的动画效果解决方案,设计师可以使用 Adobe After Effects 设计出漂亮的动画之后,使用 Lottic 提供的 Bodymov ...

最新文章

  1. 线性代数:第二章 矩阵及其运算(上)
  2. codeforces 501 C,D,E
  3. 数制之非十进制数转十进制数
  4. python3函数可变输入参量
  5. 8-th Android开发之服务器端
  6. linux挂载nfs显示nobady,51CTO博客-专业IT技术博客创作平台-技术成就梦想
  7. 女神节爆猛料!. NET程序员男女比例公布!
  8. 工作48:$emit
  9. [0].Net开发者社区--您好大的官威啊!
  10. 8块钱搞定一个顶级域名 (全过程) B篇
  11. 100 行 js 代码下载抖音无水印视频
  12. java 获取今天是星期几
  13. 有权图的单源最短路径
  14. 不了解外贸装箱,这一篇够够的
  15. Compensating-Transaction模式
  16. 滴水穿石 C#中多线程 委托的使用
  17. 2022暑期实践(Django教程学习记录)(第三周1)P44靓号管理-分页组件封装
  18. stm32+esp8266(wifi模块)+贝壳物联+开关控制
  19. C语言|一个简单的文章让你轻松理解猜字小游戏的原理
  20. ABP VNext系列(二)-详解ABP的依赖注入

热门文章

  1. C语言丨getch(),getche()和getchar()的区别
  2. 【Python】对英文文本进行词频统计(分词、字典排序、文件读写)
  3. java 写字板源代码_基于JAVA的模拟写字板的设计与实现(含录像)
  4. mysql忘记root密码拯救方法(flush privileges)
  5. 同城小程序 30.0 完整版源码(含全部插件)
  6. 快手影音 www.kuaishou.net
  7. python按位置从字符串提取子串的操作是_Python基础-字符串操作和“容器”的操作...
  8. Android中运行免安装app,适用于免安装应用的 CTS
  9. 呼叫系统的技术实现原理和运作流程
  10. “下班不关电脑,外套不穿出办公室”,这届年轻人为了假装加班,拼了