注:此方法是使用hbuilderx云打包之后才能用,否则在浏览器中会报 plus is not defined
官方文档 http://www.html5plus.org/doc/zh_cn/gallery.html#plus.gallery.save
http://www.html5plus.org/doc/zh_cn/nativeobj.html#plus.nativeObj.BitmapSaveOptions
<template>
<button @click="saveBitmap()">保存</button>
</template>
<script>
export default {
data(){
return{
wc:'',
bitmap:''
}
},
mounted(){
// H5 plus事件处理
function plusReady(){
// 获取首页Webview窗口
this.wc = plus.webview.currentWebview();
// 创建Bitmap对象
this.bitmap = new plus.nativeObj.Bitmap("test");
// 将webview内容绘制到Bitmap对象中
this.wc.draw(this.bitmap,function(){
console.log('绘制图片成功');
},function(e){
console.log('绘制图片失败:'+JSON.stringify(e));
});
}
if(window.plus){
plusReady();
}else{
document.addEventListener("plusready",plusReady,false);
}
},
methods:{
saveBitmap(){
// 获取指定标识的Bitmap图片对象
this.bitmap = plus.nativeObj.Bitmap.getBitmapById('test');
// 保存图片到Bitmap对象中
this.bitmap.save( "_doc/a.jpg",{},function(i){
// 保存文件到系统相册中
//i.target文件路径
plus.gallery.save( i.target, function () {
alert( "保存图片到相册成功" );
});
this.bitmap.clear();//销毁Bitmap图片
this.bitmap.recycle();//回收图片内存
}
,function(e){
console.log('保存图片失败:'+JSON.stringify(e));
this.bitmap.clear();//销毁Bitmap图片
this.bitmap.recycle();//回收图片内存
});
}
}
}
</script>
来源:oschina
链接:https://my.oschina.net/u/4275499/blog/3437784