微信小程序实现图片压缩


Posted in Javascript onDecember 03, 2019

本文实例为大家分享了微信小程序图片压缩的具体代码,供大家参考,具体内容如下

设计思路:

选择图片后调用微信压缩图片接口,压缩后接收压缩图片的临时地址,调用微信储存接口保存图片至本地。

参数:

imagesrc:图片地址
imgcount:是否选择图片
show_hidden:是否展示按钮

接口:

wx.chooseImage:选择图片
wx.compressImage:压缩图片
wx.saveImageToPhotosAlbum:保存图片至相册
wx.showToast:提示信息

wxml

<view>
 <view>
  <image src="{{imagesrc}}" style="width: 100%;" bindtap="chooseMyImage">
  </image>
 </view>
 <view class="textView">
 <text>
  (推荐使用jpg格式的图片)
 </text>
 </view>
 <view class="ImgOperateView">
 <button type="primary" bindtap="chooseMyImage">选择图片</button>
 <button type="primary" bindtap="MyImageCompression" style="{{show_hidden}}">压缩图片</button>
 </view>
</view>

js

// miniprogram/pages/ImgCompression/ImgCompression.js
Page({

 /**
 * 页面的初始数据
 */
 data: {
 imagesrc:"../../images/NoImage.jpg",
 imgcount:0,
 show_hidden: "display:none;",
 },

 //选择图片
 chooseMyImage:function () {
 var that = this;
 wx.chooseImage({
  count:1,
  success: function(res) {
  that.setData({
   imagesrc:res.tempFilePaths[0],
   imgcount:1,
   show_hidden:"display:block"
  }),
   wx.showToast({
   title: "已选择图片",
   })
  },

  fail: function() {
  wx.showToast({
   title:"请选择图片",
   icon:"none",
  })
  }
 })
 },

 //压缩图片
 MyImageCompression:function () {
 var that = this;
 if(that.data.imgcount == 1){
  wx.showToast({
  title: "正在压缩图片",
  icon:"loading",
  })

  wx.compressImage({
  src:that.data.imagesrc,
  quality:0,
  success: function(res) {
   wx.showToast({
   title: "压缩成功",
   });

   wx.saveImageToPhotosAlbum({
   filePath:res.tempFilePath,
   success:function(res) {
    wx.showToast({
    title: "已保存至相册",
    });
   }
   })
  },

  fail: function() {
   wx.showToast({
   title:"压缩失败",
   icon:"none",
   })
  }
  })
 }
 }
})

效果图:

微信小程序实现图片压缩

微信小程序实现图片压缩

为大家推荐现在关注度比较高的微信小程序教程一篇:《微信小程序开发教程》小编为大家精心整理的,希望喜欢。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
网上应用的一个不错common.js脚本
Aug 08 Javascript
php图像生成函数之间的区别分析
Dec 06 Javascript
JavaScript实现N皇后问题算法谜题解答
Dec 29 Javascript
js中键盘事件实例简析
Jan 10 Javascript
自己动手手写jQuery插件总结
Jan 20 Javascript
jQuery根据用户电脑是mac还是pc加载对应样式的方法
Jun 26 Javascript
基于javascript如何传递特殊字符
Nov 30 Javascript
Angular2 Service实现简单音乐播放器服务
Feb 24 Javascript
JS如何设置元素样式的方法示例
Aug 28 Javascript
React Native之prop-types进行属性确认详解
Dec 19 Javascript
jQuery length 和 size()区别总结
Apr 26 jQuery
js实现单元格拖拽效果
Feb 10 Javascript
Ant Design Pro 下实现文件下载的实现代码
Dec 03 #Javascript
Vue.js 无限滚动列表性能优化方案
Dec 02 #Javascript
浅谈关于vue中scss公用的解决方案
Dec 02 #Javascript
详解js location.href和window.open的几种用法和区别
Dec 02 #Javascript
js实现一款简单踩白块小游戏(曾经很火)
Dec 02 #Javascript
JavaScript 自定义html元素鼠标右键菜单功能
Dec 02 #Javascript
VUE 动态组件的应用案例分析
Dec 02 #Javascript
You might like
ftp类(example.php)
2006/10/09 PHP
开发大型 PHP 项目的方法
2007/01/02 PHP
ajax返回值中有回车换行、空格的解决方法分享
2013/10/24 PHP
PHP调用C#开发的dll类库方法
2014/07/28 PHP
php动态生成版权所有信息的方法
2015/03/24 PHP
PHP+MySQL实现无极限分类栏目的方法
2015/12/23 PHP
Yii中的cookie的发送和读取
2016/07/27 PHP
PHP实现文件上传功能实例代码
2017/05/18 PHP
关于ThinkPhp 框架表单验证及ajax验证问题
2017/07/19 PHP
PHP实现模拟http请求的方法分析
2017/12/20 PHP
PHP abstract 抽象类定义与用法示例
2018/05/29 PHP
TP5框架使用QueryList采集框架爬小说操作示例
2020/03/26 PHP
LazyLoad 延迟加载(按需加载)
2010/05/31 Javascript
分享一个自定义的console类 让你不再纠结JS中的调试代码的兼容
2012/04/20 Javascript
jquery获取及设置outerhtml的方法
2015/03/09 Javascript
谈谈js中的prototype及prototype属性解释和常用方法
2015/11/25 Javascript
javascript添加前置0(补零)的几种方法
2017/01/05 Javascript
Angular2自定义分页组件
2017/04/19 Javascript
vue 将页面公用的头部组件化的方法
2017/12/18 Javascript
vue使用axios实现文件上传进度的实时更新详解
2017/12/20 Javascript
Angular实现可删除并计算总金额的购物车功能示例
2017/12/26 Javascript
JavaScript折半查找(二分查找)算法原理与实现方法示例
2018/08/06 Javascript
jQuery 同时获取多个标签的指定内容并储存为数组
2018/11/20 jQuery
封装微信小程序http拦截器过程解析
2019/08/13 Javascript
跟老齐学Python之Python安装
2014/09/12 Python
Python实现字典的遍历与排序功能示例
2017/12/23 Python
pytorch-神经网络拟合曲线实例
2020/01/15 Python
在 Python 中接管键盘中断信号的实现方法
2020/02/04 Python
django之从html页面表单获取输入的数据实例
2020/03/16 Python
IdealFit官方网站:女性蛋白质、补充剂和运动服装
2019/03/24 全球购物
在子网210.27.48.21/30种有多少个可用地址?分别是什么?
2014/07/27 面试题
乐观自信演讲稿范文
2014/05/21 职场文书
2014年办公室主任工作总结
2014/11/12 职场文书
2019年12月24日平安夜祝福语集锦
2019/12/24 职场文书
vue完美实现el-table列宽自适应
2021/05/08 Vue.js
pandas中DataFrame检测重复值的实现
2021/05/26 Python