|
@@ -1,60 +1,59 @@
|
|
|
-const fsm = wx.getFileSystemManager();
|
|
|
-const FILE_BASE_NAME = 'tmp_base64src'; //自定义文件名
|
|
|
+const fsm = wx.getFileSystemManager()
|
|
|
+const FILE_BASE_NAME = 'tmp_base64src' //自定义文件名
|
|
|
|
|
|
-export const base64src = function(base64data, cb) {
|
|
|
- const [, format, bodyData] = /data:image\/(\w+);base64,(.*)/.exec(base64data) || [];
|
|
|
+export const base64src = function (base64data, cb) {
|
|
|
+ const [, format, bodyData] = /data:image\/(\w+);base64,(.*)/.exec(base64data) || []
|
|
|
if (!format) {
|
|
|
- return (new Error('ERROR_BASE64SRC_PARSE'));
|
|
|
+ return new Error('ERROR_BASE64SRC_PARSE')
|
|
|
}
|
|
|
- const filePath = `${wx.env.USER_DATA_PATH}/${FILE_BASE_NAME}.${format}`;
|
|
|
- const buffer = wx.base64ToArrayBuffer(bodyData);
|
|
|
+ const filePath = `${wx.env.USER_DATA_PATH}/${FILE_BASE_NAME}.${format}`
|
|
|
+ const buffer = wx.base64ToArrayBuffer(bodyData)
|
|
|
fsm.writeFile({
|
|
|
filePath,
|
|
|
data: buffer,
|
|
|
encoding: 'binary',
|
|
|
success() {
|
|
|
- cb(filePath);
|
|
|
+ cb(filePath)
|
|
|
},
|
|
|
fail() {
|
|
|
- return (new Error('ERROR_BASE64SRC_WRITE'));
|
|
|
- },
|
|
|
- });
|
|
|
-};
|
|
|
+ return new Error('ERROR_BASE64SRC_WRITE')
|
|
|
+ }
|
|
|
+ })
|
|
|
+}
|
|
|
|
|
|
-export const toBase64src = function(imageUrl) {
|
|
|
+export const toBase64src = function (imageUrl) {
|
|
|
return new Promise((resolve, reject) => {
|
|
|
// 创建一个新的Image对象
|
|
|
- var img = new Image();
|
|
|
+ var img = new Image()
|
|
|
|
|
|
// 设置图片加载完成时的回调函数
|
|
|
- img.onload = function() {
|
|
|
+ img.onload = function () {
|
|
|
// 创建一个Canvas元素
|
|
|
- var canvas = document.createElement('canvas');
|
|
|
- canvas.width = img.width;
|
|
|
- canvas.height = img.height;
|
|
|
+ var canvas = document.createElement('canvas')
|
|
|
+ canvas.width = img.width
|
|
|
+ canvas.height = img.height
|
|
|
|
|
|
// 获取2D上下文
|
|
|
- var ctx = canvas.getContext('2d');
|
|
|
+ var ctx = canvas.getContext('2d')
|
|
|
|
|
|
// 在Canvas上绘制图片
|
|
|
- ctx.drawImage(img, 0, 0, img.width, img.height);
|
|
|
+ ctx.drawImage(img, 0, 0, img.width, img.height)
|
|
|
|
|
|
// 将Canvas内容转换为Base64编码
|
|
|
- var base64String = canvas.toDataURL('image/jpeg'); // 您可以根据需要选择不同的图片格式
|
|
|
+ var base64String = canvas.toDataURL('image/jpeg') // 您可以根据需要选择不同的图片格式
|
|
|
|
|
|
// 在此处使用 base64String,例如将其用于<img>标签的src属性
|
|
|
- resolve(base64String);
|
|
|
- };
|
|
|
+ resolve(base64String)
|
|
|
+ }
|
|
|
|
|
|
// 设置图片源
|
|
|
- img.setAttribute('crossOrigin', 'anonymous');
|
|
|
+ img.setAttribute('crossOrigin', 'anonymous')
|
|
|
// img.crossOrigin = 'Anonymous';
|
|
|
- img.src = imageUrl;
|
|
|
-
|
|
|
+ img.src = imageUrl
|
|
|
})
|
|
|
-};
|
|
|
+}
|
|
|
|
|
|
export default {
|
|
|
- base64src,
|
|
|
+ base64src,
|
|
|
toBase64src
|
|
|
}
|