微信小程序开发图片压缩功能

这次给大家带来微信小程序开发图片压缩功能,微信小程序开发图片压缩功能的注意事项有哪些,下面就是实战案例,一起来看一下。

小龙大哥的微信小程序在初始阶段相当于IE界的6,在这里给大家说一个刚趟过去的坑。

拍照的API。

wx.chooseImage({ count: 1, // 默认9 sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有 sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有 success: function (res) {   // 返回选定照片的本地文件路径列表,tempFilePath可以作为img标签的src属性显示图片  var tempFilePaths = res.tempFilePaths;  }});

登录后复制

在上边,明确的给出大小的类型,本想省事,然并没有什么用…..
废话少说,给大家说下IOS和安卓中差别,拍照图片压缩的坑。

// 点击照相 takePictures:function(){ var that = this; wx.chooseImage({  count: 1, // 默认9  sizeType: ['compressed'], // 可以指定是原图还是压缩图,默认二者都有  sourceType: ['camera'], // 可以指定来源是相册还是相机,默认二者都有  success: function (res) {  // 返回选定照片的本地文件路径列表,tempFilePath可以作为img标签的src属性显示图片  var tempFilePaths = res.tempFilePaths;  that.setData({   attendSuccessImg:tempFilePaths[0]  });  // 上传图片  //判断机型  var model = "";  wx.getSystemInfo({   success:function(res){   model= res.model;   }  })  if(model.indexOf("iPhone") <= 0){   that.uploadFileOpt(that.data.attendSuccessImg);   console.log(111111)  }else{   drawCanvas();  }  // 缩放图片  function drawCanvas(){   const ctx = wx.createCanvasContext('attendCanvasId');   ctx.drawImage(tempFilePaths[0], 0, 0, 94, 96);   ctx.draw();   that.prodImageOpt();  }  } }); }, // 生成图片 prodImageOpt:function(){ var that = this; wx.canvasToTempFilePath({   canvasId: 'attendCanvasId',  success: function success(res) {  that.setData({   canvasImgUrl:res.tempFilePath  });  // 上传图片  that.uploadFileOpt(that.data.canvasImgUrl);  },  complete: function complete(e) {  } }); },

登录后复制

再点击拍照后,IOS的进行了图片压缩功能,然而,安卓的依然是那么大,所以 在这过程中,我们需要判断下当前机型,然后执行canvas压缩。

上述代码,拿到即可用,但少一部分wxml中需要添加一个canvas标签。

进行接口调用。希望对大家有帮助。

相信看了本文案例你已经掌握了方法,更多精彩请关注【创想鸟】其它相关文章!

推荐阅读:

jQuery代码优化方式的总结

360浏览器兼容模式的页面显示不全怎么处理

Node.js的非对称加密详解

以上就是微信小程序开发图片压缩功能的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2779821.html

(0)
上一篇 2025年3月8日 15:52:07
下一篇 2025年2月28日 17:06:17

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • Vue2.5与Element UI的组件分页功能实现

    这次给大家带来Vue2.5与Element UI的组件分页功能实现,Vue2.5与Element UI的组件分页功能实现的注意事项有哪些,下面就是实战案例,一起来看一下。 2017年底了,总结了这一年多来的前端之路,Vue从入门到放弃,再二…

    编程技术 2025年3月8日
    200
  • 小程序的Promise简化回调

    这次给大家带来小程序的Promise简化回调,小程序Promise简化回调的注意事项有哪些,下面就是实战案例,一起来看一下。 Promise 是异步编程的一种解决方案,比传统的解决方案——回调函数和事件——更合理和更强大。它由社区最早提出和…

    2025年3月8日
    200
  • 正则表达式的模糊匹配功能如何实现

    这次给大家带来正则表达式的模糊匹配功能如何实现,实现正则表达式模糊匹配功能的注意事项有哪些,下面就是实战案例,一起来看一下。 本文实例讲述了正则表达式实现字符的模糊匹配功能。分享给大家供大家参考,具体如下: package com.cn.u…

    编程技术 2025年3月8日
    200
  • 原生ajax实现上拉加载功能

    这次给大家带来原生ajax实现上拉加载功能,原生ajax实现上拉加载功能的注意事项有哪些,下面就是实战案例,一起来看一下。 上拉加载的思路 1 上拉加载是要把屏幕拉到最底部的时候触发ajax事件请求数据 2.所有要获取屏幕的高度 文档的高度…

    编程技术 2025年3月8日
    200
  • 使用AJAX实现分页功能

    这次给大家带来使用AJAX实现分页功能,使用AJAX实现分页功能的注意事项有哪些,下面就是实战案例,一起来看一下。 最近写一个给用户组添加角色的功能,要求一边是未添加的角色,一边是已添加的角色,还有搜索功能, 点击添加后,ajax保存操作.…

    2025年3月8日
    200
  • ajax怎样实现修改功能(附代码)

    这次给大家带来ajax怎样实现修改功能(附代码),ajax实现修改功能的注意事项有哪些,下面就是实战案例,一起来看一下。 因为做的是一个内部管理系统,只用了一个主页面,所有的都不允许整个网页刷新,所以我们只能用ajax 来做,当然刚开始做也…

    2025年3月8日
    200
  • ajax实现登录功能的图文详解

    这次给大家带来ajax实现登录功能的图文详解,ajax实现登录功能的注意事项有哪些,下面就是实战案例,一起来看一下。 AJAX的全称是Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)…

    2025年3月8日
    200
  • Ajax+mysql做出留言板的功能

    这次给大家带来Ajax+mysql做出留言板的功能,Ajax+mysql做出留言板的注意事项有哪些,下面就是实战案例,一起来看一下。 最近自己做了一个小demo,实现了Ajax与MySQL的数据交互,js部分用的是jq,后台用的是php,数…

    编程技术 2025年3月8日
    200
  • PHP常用小功能

    本篇文章给大家分享了几个PHP中常用的小功能,有兴趣的朋友可以看一下,有需要的朋友也可以参考一下 1.  获取网站是http还是https ? $http_type = ((isset($_SERVER[‘HTTPS’]) &&am…

    编程技术 2025年3月8日
    200
  • Angular的HMR功能怎么实现

    这次给大家带来Angular的HMR功能怎么实现,Angular的HMR功能实现注意事项有哪些,下面就是实战案例,一起来看一下。 最近一个同事在使用Angular的时候,希望能像VUE那样,修改代码后浏览器不刷新,页面对应修改的组件自动更新…

    编程技术 2025年3月8日
    200

发表回复

登录后才能评论