微信小程序之将base64图片转为本地图片
开始
最近项目中遇到个问题,就是生成海报的时候,需要画上小程序的二维码,然后后台返回的二维码图片是base64的格式,真机生成海报后二维码没有显示。
所以就把后台返回的base64格式的二维码图片转为本地图片,主要的API有wx.getFileSystemManager和wx.getFileSystemManager().writeFileSync。
wx.getFileSystemManager
小程序通过wx.getFileSystemManager()可以获得全局唯一的文件管理器,所有的文件管理都通过FileSystemManager来进行管理
const FileSystemManager = wx.getFileSystemManager();
一般我们都是将文件添加到手机,即称为本地文件,文件的格式为:
{{协议名}}: //文件路径
其中,在安卓和ios客户端中协议名是’wxfile’,在开发者工具上是“http”,开发者无须去关心这个协议的差异。
将base64图片转为本地用户文件
具体操作如下:
let code = res.data.code; // 后台返回的base64图片,没有带data:image/png;base64,的前缀。
let src = `data:image/png;base64,${code}`;
const fsm = wx.getFileSystemManager(); // 获取文件管理器
code = code .replace(/\ +/g, ""); //去掉空格方法
code = code .replace(/[\r\n]/g, "");const buffer = wx.base64ToArrayBuffer(code ); // 将 base64 字符串转成 ArrayBuffer 对象
const fileName = wx.env.USER_DATA_PATH + '/share_img.png'; // 文件系统中的用户目录路径 (本地路径)
/**
* @param fileName: 文件路径
* @param buffer : 要写入的文本或二进制数据
* @param binary: 指定写入文件的字符编码
*/
fsm.writeFileSync(fileName, buffer, 'binary'); // 写入文件, 同步方法console.log(fileName); // 写入成功后就可以访问到该图片路径了
微信小程序之将base64图片转为本地图片相关推荐
- 微信小程序不显示base64位图片
我是用uniapp开发,一开始在微信小程序无法显示base64 图片 但是在开发者工具上可以 如果是存在自动换行的话可以使用 xxx.replace(/[\r\n]/g,""); ...
- 微信小程序中使用Base64编码解码
创建js-base64.js文件 (function(global) {'use strict';var global = global || {};var _Base64 = global.Base ...
- 微信小程序壁纸源码+自动采集小米图片
简介: 小程序内核里面对接的是小米壁纸,自动采集无需自己手动上传,而且可以搜索的内容很多,各种类型的壁纸图片都是有的. 搭建方法: 1,注册微信小程序,类目选工具_图片. 2,将源码导入开发者工 ...
- uniapp微信小程序服务器与行内img src图片路径拼接
uniapp微信小程序服务器与行内img src图片路径拼接 1.在main.js 在行内直接引入 运行就可以连接到服务器的图片了
- 微信小程序 本地mysql_微信小程序系列之使用缓存在本地模拟服务器数据库
微信小程序系列之使用缓存在本地模拟服务器数据库 现在将data.js这个文件视作是本地数据库的初始化数据,要做的第一件事就是讲这些初始化数据装进缓存中,以形成数据库的初始化数据 整个应用程序的生命周期 ...
- 微信小程序开发:学习笔记[9]——本地数据缓存
微信小程序开发:学习笔记[9]--本地数据缓存 快速开始 说明 本地数据缓存是小程序存储在当前设备上硬盘上的数据,本地数据缓存有非常多的用途,我们可以利用本地数据缓存来存储用户在小程序上产生的操作,在 ...
- 【图文保存为图片并下载到相册】海报 h5, 微信和 ios 不支持 和 用uniapp 微信小程序 使用canvas把页面转为图片保存到手机
第一种,[图文保存为图片并下载到相册] h5, 微信和 ios 不支持 1,安装html2canvas npm install html2canvas --save 2,在需要的页面引入 import ...
- 微信小程序预览base64图片
起因:微信小程序下载图片,请求后台返回一堆乱码的字符 解决办法 1.请求部分加上 responseType: 'arraybuffer' 2.由于微信官方不再维护wx.arrayBufferToBas ...
- 【微信小程序】将base64图片保存至本地
需求描述 微信小程序中,下载一个报告文件,直接可获取到的是报告图片的base64格式. 参考文章 1.微信小程序实现图片下载功能 2.微信小程序把base64的图片保存到手机相册 代码实现 1.wxm ...
最新文章
- 深度学习方法笔记之(一):SVM的基本模型
- html打印边距影响内容大小,关于web打印的问题,如何控制纸张大小和页边距
- sqlalchemy query
- 504.七进制数(力扣leetcode) 博主可答疑该问题
- fm核武破解 java出错_关闭Java时后台的FM无法恢复
- 不需要mysql的php博客_几款免费的不用数据库的php的cms
- win10共享打印机搜索不到计算机,大师告诉您Win10搜不到共享打印机的操作方案...
- pandas的重复值的处理
- Bugku:web 秋名山老司机
- JEECMS 自定义标签
- 关于调整互联网、电话订票起售时间的公告
- 给定一个由N个非负整数构成的序列,我们来定义一下序列的中位数,如果N是奇数,在对序列排序后,中位数就是最中间的那个数,即排序后,中位数的位置为(N+1)/2,这里序列的位置从1开始。如果N是偶数,则中
- 计算机更换硬盘键盘鼠标不好使,计算机上安装的原始Win7系统的鼠标和键盘无法移动硬盘,并且无法识别解决方案...
- 搞清楚nand flash和 nor flash 以及 spi flash 和cfi flash 的区别
- 读书笔记-深度学习推荐系统4-推荐与embedding
- “马云概念股”起舞 智慧物流大数据风起云涌
- Taro关闭页面时停止计时器
- python库——argparse
- PIC芯片调试记录:配置字对程序调试和烧录后是否工作的影响,及部分应用总结
- C++智能指针3——弱指针weak_ptr详解
热门文章
- css设置背景图片模糊,内容不模糊
- 基于MATLAB的烟雾火灾检测识别系统
- Onedrive如何申请免费的学生1T空间以及查看剩余空间大小
- 【资源分享】一个超级方便的看电子书方法推荐
- 什么是Excel的快速编号功能?
- nltk中文分句_learn_nltk/2. NLTK笔记-分句与分词.md at master · ourren/learn_nltk · GitHub...
- 又一恐怖技能!卡耐基梅隆大学发布超强智能体,炸翻科研圈
- win11 安卓子系统(WSA)安装教程
- 短信发送接口(短信宝)
- android实现忘记密码功能,手机忘记密码如可解决 安卓手机重置密码教程【详解】...