小程序通过wx.createCanvasContext实现图片压缩,在手机上遇到的问题

对上传的图片进行压缩,并对宽度进行限制,最大宽度为750。
1.先用chooseImage选择图片上传
image.png
2.然后用getImageInfo获取原始图片大小对宽度进行限制
image.png
3.后用wx.createCanvasContext创建canvas的绘图上下文(在这一步使用drawImage绘制图像到画布,设置了宽度和高度,但是在编译器上可以在手机上设置的宽度高度不生效虽然图片有绘制出来)
image.png
4.最后使用wx.canvasToTempFilePath生成图片
image.png

注:在开发工具上上传的图片是没问题的既有压缩也有被限制宽度最大是750px。但是在手机上上传的图片,宽度有被限制到但是放大了三倍(比如限制750上传后宽度变成了2250px),个人感觉可能是因为这样导致压缩力度没有很大(但是图片大小是有变小的)

阅读 3.2k
1 个回答

不是提供了 wx.compressImage 接口么……

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题