how to programmatically take a screenshot in react

2019-04-07 10:53发布

How can I take a screenshot in ReactNative. I need a screenshot and put it in Image component. How could I do?

2条回答
唯我独甜
2楼-- · 2019-04-07 11:38

For a capture of the currently displayed screen use captureScreen():

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)
);

This method will capture the contents of the currently displayed screen as a native hardware screenshot. It does not require a ref input, as it does not work at the view level. This means that ScrollViews will not be captured in their entirety - only the portions currently visible to the user.

You can find more about the react-native-view-shot library here

查看更多
smile是对你的礼貌
3楼-- · 2019-04-07 11:52

There is a library to do just that: React Native View Shot

import RNViewShot from "react-native-view-shot";

RNViewShot.takeSnapshot(viewRef, {
  format: "jpeg",
  quality: 0.8
})
.then(
  uri => console.log("Image saved to", uri),
  error => console.error("Oops, snapshot failed", error)
);
查看更多
登录 后发表回答