如何在React Native中以编程方式进行屏幕截图

17

我该如何在ReactNative中截屏?我需要截取屏幕并将其放在Image组件中。我应该怎么做?

2个回答

19

有一个库可以做到这一点: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)
);

4
可以截取整个屏幕的截图吗? - ThatBrianDude
这个库是否依赖于本地模块? - Belgin Android
这个能在 Android 9 及以上版本使用吗? - Dulaj Madusanka
@BelginAndroid,是的,该库使用本地模块。 - Cole Murray

12

要捕获当前显示的屏幕,请使用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)
);

该方法将当前显示屏幕的内容作为本机硬件截图捕获。它不需要引用输入,因为它不在视图级别上工作。这意味着滚动视图将不会完全捕获 - 仅捕获用户当前可见的部分。

您可以在这里了解更多有关react-native-view-shot库的信息。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接