百度一款前端图片合成工具库 MI 开源啦!
什么是 MI
Mi 全称 mix-img,是一个前端图片合成工具库,它可以将多张图片和文字合成一个全新的图片。作为一个轻量级的图片合成解决方案,Mi 支持多张图片并行加载合成,减少图片合成时间,提升前端开发者的开发效率,改善开发体验。
MI 能做什么
随着互联网业务的发展,用户接触的信息也越来越多,越来越丰富。生动的图片相对简单的文字也更能够吸引用户的关注。而互联网海量的用户有不同的属性和兴趣,个性化展示图片、分享图片的场景应运而生。基于以上原因,Mi(mix-img)诞生了。
Mi 的核心价值在于能够通过简单的配置输入将多张图片或者文字快速的合并成一张图片展示给用户或者用于分享炫耀场景。
Mi 在图片和文字的样式处理上也足够完善,包括支持产出不同尺寸、不同类型的图片,图片的圆角处理。还有对文字颜色、位置的处理。同时也支持在图片中加入二维码的元素。
MI 的特点
-
并行加载图片资源使合成速度更快
-
内置二维码功能,直接配置就能将二维码合成到图片上,不用开发者单独处理
-
支持图片压缩
-
默认增加缓存处理,同样配置图片直接返回结果而不是重新合成
-
对开发者友好,包括支持调试、文字变量替换等
安装和使用
1)、安装
npm install --save mix-img;
2)、使用
import {mixImg} from 'mix-img';
import {mixConfig} from './mixConfig'; // 配置文件路径自定义
async function getImg() {
const res = await mixImg(mixConfig);
console.log('图片合成结束', res);
}
调试工具
1)、产生背景
图片合成的配置项包含 base(基本配置)、replaceText(替换字段配置)、qrCode(二维码配置)、dynamic(动态元素配置)四大项。其中动态元素配置更是会有很多的情况,调试配置参数很困难。为了减少开发人员工作量,内置了参数调试工具。用户可以在平台内更改参数,预览合成图片效果。调试完毕后,复制最终配置到项目中使用。
2)、如何启动
# 将代码clone到本地
git clone
# 安装依赖
npm i
# 启动配置调试工具
npm run tool
3)、工具界面
4)、使用步骤
-
修改 JSON 配置
-
点击「生成预览」按钮,进行预览
-
参数调试完毕,点击「复制配置」按钮
-
详细安装和使用方法请参见 GitHub 的 README 文档中的快速开始。
未来规划
Mi 目前完成了 pc 和移动端基于 canvas 合成图片的支持,后续将会对微信和百度等小程序支持。
贡献和反馈
1)、项目开源地址
【Github 地址】:
https://github.com/baidu/mix-img
【Gitee 地址】:
https://gitee.com/baidu/mix-img
文章看完,还不过瘾?
更多精彩内容欢迎关注百度开发者中心公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
(鸡汤文)这一次我终于搞懂了 JavaScript 定时器的 this 指向!
开篇语 忽然有一种感觉,每次学习一个知识点就像是谈一场恋爱:从初次邂逅,到彼此了解,一切都那么的符合恋爱的过程! 如果这个知识点再有点”调皮“的话,那简直是让人欲仙欲死而又不可自拔!因为你永远不知道它还有多少面纱等着你揭开,当你自以为对它已经足够了解的时候,冷不防就是一个盲点迎面砸来。 它简直就像一个”宝藏女孩“,你要时刻做好迎接”惊喜“的准备! 可能正是因为这种新鲜感,我才能一直保持一种类似亢奋的状态吧。当然,这只是针对知识而言,对待情感我还是很保守很专一的<( ̄︶ ̄)> 这两天,我就在和定时器谈恋爱,哦不,是在学习定时器( ̄▽ ̄)~*,可没想到,又给陷进去了…… 这不,上一篇文章写完定时器的返回值后,刚觉得自己对它已经了解的清清楚楚明明白白了,够我炫耀一阵子了,谁成想,喘口气的功夫,它又给我整出了幺蛾子。 惑起 写完上篇文章后,我就琢磨着里面的实现代码还可以优化一下,于是给改成了下面这个样子: <form action="" class="example-form"> <div> <label for="name"> 名称 </...
- 下一篇
TiDB 容器化部署面面观丨「能量钛」圆桌论坛回顾
近日,由 TiDB 社区重磅策划的「能量钛」圆桌论坛活动圆满落幕。本次论坛特邀云原生社区创始人宋净超老师担任主持,与来自支流科技、360、58 集团、汽车之家、PingCAP 的五位资深技术大咖,围绕 “当数据库遇上 Kubernetes” 主题,探讨了他们对数据库容器化部署及运维的实践与思考。 视频回顾:https://www.bilibili.com/video/BV16q4y1j7UZ 嘉宾介绍: 主持:宋净超,Tetrate 布道师,云原生社区创始人。 特邀嘉宾: 张晋涛,支流科技云原生技术专家。Kubernetes 及 Docker 等众多开源项目贡献者,专注于 Apache APISIX Ingress 及 Service Mesh 等领域。 代晓磊,360 数据库运维高级专家。10 年数据库运维开发经验,开源爱好者,TUG MVA / 顾问,TiDB in action 作者之一。热爱总结和分享,喜欢挑战新技术。 刘春雷,58 集团高级 DBA。负责 58 同城 MySQL、TiDB 数据库、DorisDB 运维,TUG MOA、内容组 leader,拥有丰富的数据库开发...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8编译安装MySQL8.0.19
- CentOS7设置SWAP分区,小内存服务器的救世主
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- MySQL8.0.19开启GTID主从同步CentOS8
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS8安装Docker,最新的服务器搭配容器使用
- Hadoop3单机部署,实现最简伪集群
- Docker快速安装Oracle11G,搭建oracle11g学习环境