IOS端当使用createOffscreenCanvas 创建的离屏canvas是不能用canvasToTempFilePath 导出生成指定大小的图片。
IOS端:
![](https://i-blog.csdnimg.cn/blog_migrate/a38b4b1127136b7c412923de102398d0.png)
Android端:
![](https://i-blog.csdnimg.cn/blog_migrate/056e6ed5d478473da2e1c6e99dc4e9b4.png)
代替方法:
// canvas toDataURL 链接
let imgSrc = this.data.imgSrc;
var reg = new RegExp('^data:image/png;base64,', 'g');
let base64data =imgSrc.replace(reg, '');
const fs = wx.getFileSystemManager();
let src = `${wx.env.USER_DATA_PATH}/signature.png`;
// 使用文件管理器 先将图片保存在上传
fs.writeFile({
filePath: src,
data: base64data,
encoding: 'base64',
success(res) {
_this.setData({uploadLoading: false})
// 成功后在执行上传文件操作
_this.uploadFile(src);
},
fail(res) {
console.error(res)
}
})