uni-app页面截图保存到相册
最近app的新需求里面提到了分享邀请,用到了截图二维码邀请页面,这里简单分享下。
其原理就是唤醒手机的截图功能,截取当前页面,上代码:(这里用到的二维码生成器需要的可以自行去下载:wxqrcode.js)
<template><view class="bg_weixin" ><view class="bg"><image src="../../../static/img/user/bg1.png" mode=""></image></view><view class="img_bg"><image class="wx" :src="img"></image></view><view class="footer"><button @click="toImage()" type="default">保存图片</button></view><u-toast ref="uToast" /></view>
</template><script>import QR from "@/common/wxqrcode.js" // 二维码生成器 export default {data(){return {codes:"",img:'',test:'',}},onReady() {const that = this;//防止切图成白屏setTimeout(function() {that.toImage();}, 1000);},onLoad(option) {this.codes=option.code;this.qrcode()},methods:{qrcode() {let url = 'http://app-dbc.itipool.co/?code=' + this.codesthis.img = QR.createQrCodeImg(url, {size: parseInt(280) //二维码大小 })},toImage() {const that = this;/* 获取屏幕信息 */let ws = this.$mp.page.$getAppWebview();let bitmap = new plus.nativeObj.Bitmap('test');// 将webview内容绘制到Bitmap对象中ws.draw(bitmap,function(e) {/* 获取base64 */that.test= bitmap.toBase64Data();/* 加载base64编码 */bitmap.loadBase64Data(bitmap.toBase64Data(),function() {console.log('加载Base64图片数据成功');/* 保存图片 */bitmap.save('_doc/share.jpg',{},async (i)=>{console.log('保存图片成功:' + JSON.stringify(i));uni.saveImageToPhotosAlbum({filePath: i.target,success: function() {/* 清除 */bitmap.clear();that.$refs.uToast.show({title: '保存成功,请到相册中查看',type: 'success',})},fail(e) {that.$refs.uToast.show({title: '保存失败'+e,type: 'error',})}});},function(e) {console.log('保存图片失败:' + JSON.stringify(e));});},function() {console.log('加载Base64图片数据失败:' + JSON.stringify(e));});},function(e) {console.log('截屏绘制图片失败:' + JSON.stringify(e));},{check: true, // 设置为检测白屏clip: { top: '100px', left: '0px', height: '100%', width: '100%' } // 设置截屏区域});},}}</script>
uni-app页面截图保存到相册相关推荐
- 【Flutter 问题系列第 22 篇】在 Flutter 中如何截取屏幕并显示到页面中,以及如何将截图保存到相册
这是[Flutter 问题系列第 22 篇],如果觉得有用的话,欢迎关注专栏. 关于在 Flutter 中如何截取屏幕,以及如何将截图保存到相册的文章少之又少,即使有,也是错误一大片,有的甚至运行后都 ...
- 小程序 超长页面截图保存web-view+html2canvas
web-view文档建议参考----支付宝提供的文档,html2canvas官方文档(官网可以下载html2canvas.js 和 html2canvas.min.js).由于篇幅受限,这里就贴了一下 ...
- uni app页面传值
传值是很常见的知识点,刚开始接触uni app总会踩到很多传值的坑,不是这里传不过去,就是那边接收不到,以下是我遇到过的一些传值方式,实在不行,咱就一个一个试,总有一个能"干起". ...
- uni app页面跳转后,刷新页面参数丢失问题
正常页面路由跳转地址应该是这样的:http://localhost:8080/#/pages/study/hiring?id=1393112968202870785 浏览器刷新之后就编程这样子:htt ...
- 用canvas绘制微信小程序海报页面并保存相册-适用微信原生
微信小程序绘制海报并保存相册 tip:代码中使用的是uni的api 如果使用原生微信小程序开发,可以把uni更换成wx使用 文章目录 微信小程序绘制海报并保存相册 前言 一.分析需求 二.准备数据 三 ...
- 《从0到1上线微信小游戏》第十二节 实现截图和保存到相册功能
第十二节 实现截图和保存到相册功能 新建节点 截图功能 保存到相册 在这一小节中,我们将通过调用微信小游戏API来给俄罗斯方块这个游戏加上截图和保存到相册这两个功能. 如果大家还需要实现截图后的预览功 ...
- 长按UIWebView上的图片保存到相册
不知道各位对于这个需求要如何解决? 可能有些人会想到js与原生交互,js监听图片点击事件,然后将图片的url传递给原生App端,然后原生App将图片保存到相册,这样子麻烦吗?超麻烦.(1).js监听图 ...
- 教你实现微信公众号效果:长按图片保存到相册
不知道各位对于这个需求要如何解决? 可能有些人会想到js与原生交互,js监听图片点击事件,然后将图片的url传递给原生App端,然后原生App将图片保存到相册,这样子麻烦吗?超麻烦.(1).js监听图 ...
- Android 截图并保存到相册
2019独角兽企业重金招聘Python工程师标准>>> 参考博客:Android从相册中获取图片以及路径 一.截图方法 屏幕截图,屏幕截图只能截取到当前窗体的图形,并不能截取,网上找 ...
最新文章
- dubbo自定义异常传递信息丢失问题解决
- php引用数据检测,利用单元测试检查PHP代码
- ad20如何导入库_一文看懂如何使用(Py)Stan进行贝叶斯推理
- 不是Linux文件系统的权限,Linux中文件系统的权限管理(普通权限,特殊权限,文件的扩展属性,FACL)...
- c语言通讯录运行结果,自己改编的通讯录,运行不行啊
- 【剑指offer】面试题23:链表中环的入口节点
- 写 飞秋 程序,就是把简单的事情重复的做好
- c++ winpcap开发(6)
- 运算符的优先级表(从高到低)
- 联想服务器st系列,联想ThinkSystem ST50评测 一款超值的入门级服务器
- Java虚拟机(JVM)-1-内存区域
- 12_电话拨号器_界面实现
- 离散数学及其应用(英文版 第7版)及答案
- python代码模拟 手写字体
- 【笔记】人工智能 一种现代方法 人工智能 一种现代方法 第6章 用搜索树对问题求解
- 微信小程序实战之登录页面制作
- 为什么网站总显示服务器不能创建对象,IE浏览器出现“Automation 服务器不能创建对象”解决教程...
- python抓取豆瓣电影
- 微信 版本android 7.0,安卓微信7.0新版对比旧版详细体验
- App地推营销成为趋势,破局增长数据赋能是关键
热门文章
- 《FFmpeg Basics》中文版-01-FFmpeg基本介绍
- 已解决:ModuleNotFoundError: No module named ‘flask._compat‘
- 类加载器(ClassLoader)
- linux下常用命令wget进行整站下载
- Dism 编辑Windows WIM 文件
- 【数学建模笔记】【第七讲】多元线性回归分析(一): 回归分析的定义、对于线性的理解以及内生性问题的探究
- 开源OA教程详解:数据中心导入模型设置
- 刷脸支付让城市真正迈入智能化数字化新阶段
- 自定义函数求两个整数的和
- pytorch 7 optimizer 优化器 加速训练