React Native 截屏组件的示例代码


Posted in Javascript onDecember 06, 2017

React Native 截屏组件:react-native-view-shot,可以截取当前屏幕或者按照当前页面的组件来选择截取,如当前页面有一个图片组件,一个View组件,可以选择截取图片组件或者View组件。支持iOS和安卓。

安装方法

npm install react-native-view-shot
react-native link react-native-view-shot

使用示例

captureScreen() 截屏方法

截取当前屏幕,跟系统自带的截图一致,只会截取当前屏幕显示的页面内容。如果是ScrollView,那么未显示的部分是不会被截取的。

import { captureScreen } from "react-native-view-shot";
captureScreen({
 format: "jpg",
 quality: 0.8
})
.then(
 uri => console.log("Image saved to", uri),
 error => console.error("Oops, snapshot failed", error)
);

captureRef(view, options) 根据组件reference名称来截取

import { captureRef } from "react-native-view-shot";
render() {
   return (
 <ScrollView ref="full">
  <View ref="form1”>
   </View>
         <View ref="form2”>
   </View>
 </ScrollView>
);
}
snapshot = refname => () =>
captureRef(refname, {
 format: "jpg",
 quality: 0.8,
 result: "tmpfile",
 snapshotContentContainer: true
})
.then(
 uri => console.log("Image saved to", uri),
 error => console.error("Oops, snapshot failed", error)
);

指定需要截取的组件的ref名称,然后将该ref名称传递给snapshot方法来截取指定组件的内容。如需要截取ScrollView,只需要将”full”传递给snapshot方法即可。 captureRef方法和captureScreen方法都可以设置options,options的说明如下: width / height:可以指定最后生成图片的宽度和高度。 format:指定生成图片的格式png or jpg or webm (Android). 默认是png。 quality:图片的质量0.0 - 1.0 (default)。 result:最后生成的类型,可以是tmpfile、base64、data-uri。 snapshotContentContainer:如果设置为True的话,会动态计算组件的高度。如果是ScrollView组件,就会截取整个ScrollView的实际高度。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Js 获取当前日期时间及其它操作实现代码
Mar 04 Javascript
理解Javascript_11_constructor实现原理
Oct 18 Javascript
node.js中的fs.readlink方法使用说明
Dec 17 Javascript
详解JavaScript中循环控制语句的用法
Jun 03 Javascript
BackBone及其实例探究_动力节点Java学院整理
Jul 14 Javascript
vuejs+element-ui+laravel5.4上传文件的示例代码
Aug 12 Javascript
vue 点击按钮实现动态挂载子组件的方法
Sep 07 Javascript
JavaScript中Array方法你该知道的正确打开方法
Sep 11 Javascript
vue 实现通过vuex 存储值 在不同界面使用
Nov 11 Javascript
javascript操作元素的常见方法小结
Nov 13 Javascript
vue子组件改变父组件传递的prop值通过sync实现数据双向绑定(DEMO)
Feb 01 Javascript
javaScript 实现重复输出给定的字符串的常用方法小结
Feb 20 Javascript
判断jQuery是否加载完成,没完成继续判断的解决方法
Dec 06 #jQuery
mui back 返回刷新页面的实例
Dec 06 #Javascript
javascript实现Emrips反质数枚举的示例代码
Dec 06 #Javascript
基于jQuery Ajax实现下拉框无刷新联动
Dec 06 #jQuery
JS实现登录页密码的显示和隐藏功能
Dec 06 #Javascript
微信小程序 scroll-view实现锚点滑动的示例
Dec 06 #Javascript
基于Vue制作组织架构树组件
Dec 06 #Javascript
You might like
第二节 对象模型 [2]
2006/10/09 PHP
php中支持多种编码的中文字符串截取函数!
2007/03/20 PHP
Windows下Apache + PHP SESSION丢失的解决过程全纪录
2015/04/07 PHP
php+redis消息队列实现抢购功能
2018/02/08 PHP
php apache开启跨域模式过程详解
2019/07/08 PHP
解决 FireFox 下[使用event很麻烦] 的问题.
2006/08/22 Javascript
jQuery插件支持同一页面被多次调用
2016/02/14 Javascript
Node.js实现数据推送
2016/04/14 Javascript
javascript简单判断输入内容是否合法的方法
2016/05/11 Javascript
js实现随机点名系统(实例讲解)
2017/10/18 Javascript
浅谈vue中慎用style的scoped属性
2017/11/28 Javascript
iview通过Dropdown(下拉菜单)实现的右键菜单
2018/10/26 Javascript
vue代码分割的实现(codesplit)
2018/11/13 Javascript
JavaScript实现简单轮播图效果
2018/12/01 Javascript
[43:24]2018DOTA2亚洲邀请赛3月29日 小组赛A组 LGD VS Liquid
2018/03/30 DOTA
[46:57]EG vs Winstrike 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
Python实现简单拆分PDF文件的方法
2015/07/30 Python
django 类视图的使用方法详解
2019/07/24 Python
Python学习笔记之While循环用法分析
2019/08/14 Python
在pytorch中查看可训练参数的例子
2019/08/18 Python
pycharm设置默认的UTF-8编码模式的方法详解
2020/06/01 Python
Expedia韩国官网:亚洲发展最快的在线旅游门户网站
2018/02/26 全球购物
Maisons du Monde德国:法国家具和装饰的市场领导者
2019/07/26 全球购物
英文版销售经理个人求职信
2013/11/20 职场文书
办公室保洁员岗位职责
2013/12/02 职场文书
幼儿园实习自我鉴定
2013/12/15 职场文书
社区工作感言
2014/02/21 职场文书
葛优非诚勿扰搞笑征婚台词
2014/03/17 职场文书
合作协议书
2014/04/23 职场文书
新农村建设汇报材料
2014/08/15 职场文书
2015国庆节66周年演讲稿
2015/03/20 职场文书
十七岁的单车观后感
2015/06/12 职场文书
2016年教师学习廉政准则心得体会
2016/01/20 职场文书
《钓鱼的启示》教学反思
2016/02/18 职场文书
baselines示例程序train_cartpole.py的ImportError
2022/05/20 Python
Redis sentinel哨兵集群的实现步骤
2022/07/15 Redis