微信小程序实现图片压缩


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 相关文章推荐
快速保存网页中所有图片的方法
Jun 23 Javascript
对JavaScript的eval()中使用函数的进一步讨论
Jul 26 Javascript
javascript globalStorage类代码
Jun 04 Javascript
JavaScript在IE和Firefox(火狐)的不兼容问题解决方法小结
Apr 13 Javascript
基于jquery的模态div层弹出效果
Aug 21 Javascript
理解Javascript_08_函数对象
Oct 15 Javascript
表头固定(利用jquery实现原理介绍)
Nov 08 Javascript
jquery JSON的解析方式示例介绍
Jul 27 Javascript
详解js中的apply与call的用法
Jul 30 Javascript
基于Node.js模板引擎教程-jade速学与实战1
Sep 17 Javascript
js使用xml数据载体实现城市省份二级联动效果
Nov 08 Javascript
详解nuxt路由鉴权(express模板)
Nov 21 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
linux php mysql数据库备份实现代码
2009/03/10 PHP
PHP获取文件行数的方法
2015/06/10 PHP
PHP通过GD库实现验证码功能示例
2019/02/23 PHP
datePicker——日期选择控件(with jquery)
2007/02/20 Javascript
编写可维护面向对象的JavaScript代码[翻译]
2011/02/12 Javascript
全面理解面向对象的 JavaScript(来自ibm)
2013/11/10 Javascript
jquery ajaxSubmit 异步提交的简单实现
2014/02/28 Javascript
js 获取浏览器版本以此来调整CSS的样式
2014/06/03 Javascript
innerHTML动态添加html代码和脚本兼容多个浏览器
2014/10/11 Javascript
jQuery大于号(&gt;)选择器的作用解释
2015/01/13 Javascript
JQuery select(下拉框)操作方法汇总
2015/04/15 Javascript
JavaScript合并两个数组并去除重复项的方法
2015/06/13 Javascript
Jquery为DIV添加click事件的简单实例
2016/06/02 Javascript
RequireJS多页面应用实例分析
2016/06/29 Javascript
原生JavaScript实现AJAX、JSONP
2017/02/07 Javascript
Node.js与Sails redis组件的使用教程
2017/02/14 Javascript
js中变量的连续赋值(实例讲解)
2017/07/08 Javascript
JS禁止浏览器右键查看元素或按F12审查元素自动关闭页面示例代码
2017/09/07 Javascript
如何更好的编写js async函数
2018/05/13 Javascript
js字符串倒序的实例代码
2018/11/30 Javascript
谈谈React中的Render Props模式
2018/12/06 Javascript
详解小程序退出页面时清除定时器
2019/04/28 Javascript
封装微信小程序http拦截器过程解析
2019/08/13 Javascript
在layui中select更改后生效的方法
2019/09/05 Javascript
Python 2.x如何设置命令执行的超时时间实例
2017/10/19 Python
python线性插值解析
2020/07/05 Python
美国第二大连锁书店:Books-A-Million
2017/12/28 全球购物
Hoka One One法国官网:美国专业跑鞋品牌
2018/12/29 全球购物
小学体育教学反思
2014/01/31 职场文书
领导接待方案
2014/03/13 职场文书
社区班子对照检查材料
2014/08/27 职场文书
2014年法制宣传日活动方案
2014/11/02 职场文书
杭州西湖英语导游词
2015/02/03 职场文书
社区法制宣传月活动总结
2015/05/07 职场文书
开网店计划分析
2019/07/30 职场文书
LyScript实现绕过反调试保护的示例详解
2022/08/14 Python