1

是否可以使用火焰和颤动截取屏幕截图?因此,当用户单击按钮时,它将与他选择分享给的任何人分享屏幕截图。

4

1 回答 1

1

由于您专门使用flame,因此您很幸运!Flame 在画布上渲染您的游戏。您的游戏render方法采用画布并绘制游戏的框架。

通常提供的画布是设备屏幕,但您可以轻松地使用不同的画布(例如图像)自己调用渲染方法。

    final PictureRecorder recorder = PictureRecorder();
    final Rect rect = Rect.fromLTWH(0.0, 0.0, game.size.width, game.size.height);
    final Canvas c = Canvas(recorder, rect);

    game.render(c);

    final image = await recorder.endRecording().toImage(game.size.width, game.size.height);

然后,您可以将该图像保存在文件或内存中。

现在请注意,这只会渲染您的游戏,并且会在您调用它时渲染您所在的确切帧。但我认为这就是您想要的,因为您专门用flame. 一般来说,使用 Flutter 截屏可能有更好的方法,但使用火焰,这是最好的方法。

于 2020-09-23T03:36:42.523 回答