uniapp 最接近微信的图片压缩插件 Ba-ImageCompressor
简介(下载地址)
Ba-ImageCompressor 是一款uniapp简单快捷的图片压缩插件,仿微信朋友圈压缩策略。
效果与对比
内容 | 原图 | Ba-ImageCompressor | |
---|---|---|---|
截屏 720P | 720*1280,390k | 720*1280,87k | 720*1280,56k |
截屏 1080P | 1080*1920,2.21M | 1080*1920,104k | 1080*1920,112k |
拍照 13M(4:3) | 3096*4128,3.12M | 1548*2064,141k | 1548*2064,147k |
拍照 9.6M(16:9) | 4128*2322,4.64M | 1032*581,97k | 1032*581,74k |
滚动截屏 | 1080*6433,1.56M | 1080*6433,351k | 1080*6433,482k |
效果截图
使用方法
引用
在 script
中引入组件
const imageCompressor = uni.requireNativePlugin('Ba-ImageCompressor')
示例
可在页面 script
中调用(示例参考,可根据自己业务和调用方法自行修改)
methods: {imageCompress() {//压缩console.log(this.path)console.log(this.outputPath)imageCompressor.compress({path: this.path, //原始图片路径(单张)paths: this.paths,//原始图片路径(批量,也可以单张)},(ret) => {console.log(ret)if (ret.outputPath) {this.outputPath = ret.tempFiles[0].path;this.outputSize = this.formatSize(ret.tempFiles[0].size);//this.outputPath = ret.outputPath;//单张//this.outputSize = this.formatSize(ret.outputSize);//单张}});},formatSize(size, unit = "B") {let s = size;while (s > 1024) {s = (s / 1024).toFixed(1);switch (unit) {case "B":unit = "kb"break;case "kb":unit = "M"break;case "M":unit = "G"break;}}return s + unit;}}
方法清单
名称 | 说明 |
---|---|
onCompress | 图片压缩 |
onCompress 方法参数
图片压缩
属性名 | 类型 | 必填 | 默认值 | 说明 |
---|---|---|---|---|
path | String | true | ‘’ | 原图片路径 |
paths | String | true | ‘’ | 原图片路径(多张) |
ignoreBy | Number | false | 100 | 不压缩的阈值,单位为K,默认100 |
返回参数
属性名 | 类型 | 说明 |
---|---|---|
outputPath | String | 压缩后图片路径 |
outputSize | Number | 压缩后图片大小,单位为B |
tempFiles | Array | 多张压缩返回,属性有 path:路径,size:大小 |
系列插件
图片选择插件 Ba-MediaPicker (文档)
图片编辑插件 Ba-ImageEditor (文档)
文件选择插件 Ba-FilePicker (文档)
应用消息通知插件 Ba-Notify(文档)
应用未读角标插件 Ba-Shortcut-Badge (文档)
应用开机自启插件 Ba-Autoboot(文档)
扫码原生插件(毫秒级、支持多码)Ba-Scanner-G(文档)
扫码原生插件 - 新(可任意自定义界面版本;支持连续扫码;支持设置扫码格式)Ba-Scanner(文档)
动态修改状态栏、导航栏背景色、字体颜色插件 Ba-AppBar(文档)
原生sqlite本地数据库管理 Ba-Sqlite(文档)
安卓保活插件 Ba-KeepAlive(文档)
安卓快捷方式(桌面长按app图标) Ba-Shortcut(文档)
自定义图片水印 Ba-Watermark(文档)
视频压缩、视频剪辑插件 Ba-VideoCompressor(文档)
最接近微信的图片压缩插件 Ba-ImageCompressor(文档)
动态切换应用图标、名称(如新年、国庆等) Ba-ChangeIcon(文档)
原生Toast弹窗提示(可穿透所有界面) Ba-Toast(文档)
图片涂鸦、画笔 Ba-ImagePaint(文档)
pdf阅读 Ba-Pdf(文档)
声音提示、震动提示、语音播报 Ba-Beep(文档)
uniapp 最接近微信的图片压缩插件 Ba-ImageCompressor相关推荐
- 微信内置浏览器无法使用input图片上传和lrz.bundle.js图片压缩插件
标题 微信内置浏览器无法使用input图片上传和lrz.bundle.js图片压缩插件 图片上传功能作为一个比较常见的功能,有时候需要在微信内置浏览器里打开,但是有些型号的手机会出现打不开的现象,点击 ...
- 用Kotlin撸一个图片压缩插件-实战篇(三)
简述: 由于个人原因,已经有很长一段时间没有写过文章,有句话是那么说的只要开始就不会太晚,所以我们开始<用Kotlin撸一个图片压缩插件>系列文章最后一篇实战篇.实际上我已经把源码发布到了 ...
- 用Kotlin撸一个图片压缩插件ImageSlimming-导学篇(一)
简述: 很久没有发布Kotlin的实战相关的内容,这段时间在折腾Intellij IDEA的插件开发,折腾出了几个小插件,因为最近公司业务分离,原来堆在基础业务那边模块,都以模块的形式抽离出来,独立仓 ...
- 五款WordPress图片压缩插件推荐
速度在SEO和用户体验中起着重要作用,搜索引擎一直对打开速度快的网站排名更高,对于图像搜索也是如此.图像压缩插件可以轻松优化WordPress网站中的图像,以此获得更好的速度和性能. 一.什么时候需要 ...
- 开发AndroidStudio图片压缩插件TinyPngPlus
相信很多人都遇到切图过大需要压缩后再使用的问题.少的话,还好说,一旦多起来,那种感觉又上来了- 于是谷歌.百度大法找了一通轮子.有!但不太符合自己的使用习惯.还不如就此造一个,顺便练习一下插件的开发与 ...
- Wordpress建站教程:Compress JPEG PNG Images图片压缩插件的使用
作者:悦然wordpress建站/悦然建站 继续给大家分享wordpress建站教程,今天分享的主题是图片压缩.关于网站图片压缩悦然网络工作室其实已经讲过不少了,之前还给大家分享过一个免费图片压缩工具 ...
- 用Kotlin撸一个图片压缩插件-插件基础篇(二)
简述: 前两天写了篇用Kotlin撸一个图片压缩插件-导学篇,现在迎来了插件基础篇,没错这篇文章就是教你如何一步一步从零开始写一个插件,包括插件项目构建,运行,调试到最后的上线发布整个流程.如果你是插 ...
- vue lrz图片压缩插件
vue lrz图片压缩插件 安装 引入 使用 参考网站 安装 npm i lrz -S 引入 // main.js 中引入 import lrz from 'lrz' 使用 methods: {aft ...
- 【前端性能优化实践】手把手教你实现webpack图片压缩插件
前言 我想写一个系列:前端性能优化实践方案.网上虽然一搜一大把这样的文章,但大多缺乏体系化.也有很多讲性能优化的书籍,但其实想照着书上的知识进行实践,还是挺难的一件事. 这是该系列的第一篇文章 由于自 ...
最新文章
- LeetCode 05最长回文子串
- 牛客国庆集训派对Day6
- CLR的程序集定位算法(转)
- 洛谷 P1918保龄球
- 蚂蚁分类信息系统5.8 解决手机端新闻详情页面图片不自动缩放问题
- java severlet 例子_Java开发Servlet实例
- 如何下载衡水市卫星地图高清版大图
- python单例模式解析_深度解密Python单例模式
- 从2019年移动数字金融与电子商务反欺诈白皮书看金融反欺诈攻防战
- cdr2018更新内容
- 云数据库RDS和对象存储OSS
- 计算机没有usb硬件,电脑开机启动项中没有USB设备启动项怎么办?
- Java查看内存使用情况
- e^x的导数仍为e^x
- 《多一点爱心》 --《年轻的潮》 汪国真
- Linux进程的详细内容
- getchar();吸收回车符
- PowerPoint 2007 Bible
- 红旗linux 输入法问题,红旗Linux牵手搜狗输入法 带给用户无拘无束输入体
- 10 EPC与物联网