
首先需获取scopewritePhotosAlbum权限。(放在wxgetSetting之前调用,建议放在onload中)
整理一下,处理用户拒绝授权的情况
授权完成后执行保存,先看看微信的开发文档,需注意我用红框框起来的地方。
我说的两种方法一种是保存临时文件路径的,另一种是保存的永久文件的路径,看完两种方法怎样使用看个人选择。
还有一点需注意的是不可以使用网络路径,否则保存失败,提示路径错误,找不到路径。
永久路径即保存在微信小程序项目中的,例如:'imgs/index/1png'
页面中给标签一个点击事件,绑定保存的方法,我把js方法贴上,非常简单。
先进行授权,授权成功后调用微信api即可
这个就有点麻烦,需调用wxgetImageInfo或者wxdownloadFile,而调用这个api需在后台进行配置,把需用到的接口添加进去。
具体配置,登录微信公众平台,在开发---开发设置---服务器域名---添加downloadFile合法域名。
有两种写法:
首先要想到微信官方文档给的API,wxuploadFile({ })
通过这个API来达到上传至服务器的效果:代码示例如下
接下来我们先来说说上传功能,这个比较简单一些
上传:wxchooseImage({ })从本地相册选择或使用相机拍照
代码示例如下:
在点击触发响应事件函数里写上以上代码,就会调起手机选择相册或者拍照。以上就达到了上传的功能
上传word/pdf等文件:
这个功能真是苦恼了我好久,因为项目中要用到上传word文件,找度娘查了半天,发现没有调起手机文件管理器去选择文件上传的API。
于是乎,想办法怎么能把这个功能先实现呢?微信官方文档给出了wxchooseMessageFile(Object object)这个API。
wxchooseMessageFile · 小程序
这个API是从微信聊天界面中选择文件上传。
选择文件的类型可以自行设置,这里我项目中只要求上传word文件,所以在设置上传文件类型的时候,给type赋值file
触发上传文件按钮点击事件,就会调起微信的聊天界面,如下图:
然后,找到你聊天界面中的文件,
勾选好文件,点击确定。选择文件上传的功能就完成了
注:如果是用模拟器选择微信会话里的文件,调用wxchooseMessageFile()API,程序会报错。运行到真机上就没问题了
微信小程序压缩有三种方法,一种是使用官方提供的接口wxcompressImage(Objectobject);一种是通过压缩的大小,利用canvas重绘来得到压缩;最后一种安装第三方压缩包。
第一种方法很多人反映压缩不明显或者失效,所以选择使用canvas重绘来实现压缩。同时,该种方法可以控制的最大尺寸,保持上传大小尺寸相差不多。
具体 *** 作步骤如下:
1、通过wxchooseImage接口选择相机。
2、通过wxgetImageInfo接口获取信息(长宽,类型)。
3、计算压缩比例和最终的长宽。
4、创建canvas绘图上下文,绘制最终。
5、通过wxcanvasToTempFilePath接口将画布内容导出为并获取路径。
以上就是关于【微信小程序】保存图片到本地相册全部的内容,包括:【微信小程序】保存图片到本地相册、微信小程序excel添加图片、微信小程序如何压缩图片等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)