lottie

编程入门 行业动态 更新时间:2024-10-24 20:11:47

<a href=https://www.elefans.com/category/jswz/34/1669450.html style=lottie"/>

lottie

原文链接: lottie-minify在线压缩lottie 的json数据

上一篇: lottie-web 实现可以播放zip文件的播放器

下一篇: gl-matrix 常见运算

参考

.ts

压缩后依然可以正常播放

只需要处理json那部分, 图片的话需要手动处理, 因为图片很麻烦, 而且处理方式很不一样, 不需要放在一起, 而且主要是我用这个库一直报错...

阿里的是会把图片打成base64的, 但是有的很大而且多的是用的路径, 主要是针对播放场景做裁剪, 所以可以去除编辑信息, 也就是裁剪过的json不能再次编辑了, 因为去除了一些层级和名称

创建项目

pnpx tsdx create lottie-mini

深度删除一些不用的值, 这些值只在编辑的时候用, 所以在播放的时候可以删除掉

使用方法和下面的测试一样, 传入一个json data就行, copy表示是否原地修改, 也可以传入一个自定义的删除键列表

import { resolve } from 'path';
import { readFileSync, writeFileSync } from 'fs';
import { miniLottie } from '../src/index';
describe('mini', () => {it('compress', () => {const fileList = ['lottie'];for (const name of fileList) {const inPath = resolve('./test', 'in', `${name}.json`);const outPath = resolve('./test', 'out', `${name}.json`);const oldStr = readFileSync(inPath, { encoding: 'utf8' });const oldData = JSON.parse(oldStr);const newData = miniLottie(oldData, { copy: true });const newStr = JSON.stringify(newData);writeFileSync(outPath, newStr, { encoding: 'utf8' });// lottie: old: 77118, mini:75828console.log(`${name}: old: ${oldStr.length}, mini:${newStr.length}`);}});
});

还是有一丢丢效果的, 后面再完善吧

更多推荐

lottie

本文发布于:2024-03-08 06:00:14,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1720004.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:lottie

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!