使用 html2canvas 将需要截图的元素转换为 canvas 格式如何保存为图片
时间: 2024-03-21 12:41:48 浏览: 123
html2canvas.js 长按页面保存为图片的功能实现
您好,关于使用 html2canvas 将需要截图的元素转换为 canvas 格式后如何保存为图片的问题,可以参考以下步骤:
1. 将 canvas 转换为图片格式,可以使用 canvas 的 toDataURL() 方法,代码如下:
```javascript
var imgData = canvas.toDataURL("image/png");
```
2. 将图片数据转换为文件格式,可以使用 dataURItoBlob() 函数,代码如下:
```javascript
function dataURItoBlob(dataURI) {
var byteString = atob(dataURI.split(',')[1]);
var mimeString = dataURI.split(',')[0].split(':')[1].split(';')[0];
var ab = new ArrayBuffer(byteString.length);
var ia = new Uint8Array(ab);
for (var i = 0; i < byteString.length; i++) {
ia[i] = byteString.charCodeAt(i);
}
return new Blob([ab], {type: mimeString});
}
```
3. 将图片文件保存到本地,可以使用 uni.saveImageToPhotosAlbum() 方法,代码如下:
```javascript
uni.saveImageToPhotosAlbum({
filePath: tempFilePath,
success(res) {
uni.showToast({
title: '保存成功',
icon: 'none'
});
},
fail(res) {
uni.showToast({
title: '保存失败',
icon: 'none'
});
}
});
```
需要注意的是,在使用 uni.saveImageToPhotosAlbum() 方法保存图片时,需要先调用 uni.authorize() 方法获取用户授权。
希望能对您有所帮助,如有疑问请随时追问。
阅读全文