uniApp截屏并保存相册

该段代码展示了在非H5环境下,如何使用小程序进行页面截屏,并将截图保存到手机相册的过程。首先,它隐藏分享按钮,然后设定延迟执行,通过`getCurrentPages()`获取当前页面,创建`Bitmap`对象,将Web内容绘制到Bitmap,保存为图片文件,最后调用`uni.saveImageToPhotosAlbum()`保存图片到相册,并显示提示信息。
shareBtn() {
	let that = this
	this.show = false
	setTimeout(()=>{
		//#ifndef H5
		var pages = getCurrentPages();
		var page = pages[pages.length - 1];
		var bitmap = null;
		var currentWebview = page.$getAppWebview();
		bitmap = new plus.nativeObj.Bitmap('amway_img');
		// 将web内容绘制到Bitmap对象中
		currentWebview.draw(
			bitmap,
			function() {
				bitmap.save(
					'_doc/a.jpg', {},
					function(i) {
						uni.saveImageToPhotosAlbum({
							filePath: i.target,
							success: function() {
								bitmap.clear();
								uni.showToast({
									title: '保存图片成功',
									icon:'none',
									mask: false,
									duration: 1500
								});
								that.show = true
							}
						});
					},
					function(e) {
						that.show = true
						// console.log('保存失败', + JSON.stringify(e))
					}
				);
			},
			function(e) {
				that.show = true
				// console.log('截屏失败', JSON.stringify(e))
			}
		);
		//#endif
	},500)
}

Tips:不支持小程序端。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值