首页 > 解决方案 > 有没有办法在pygame中截取“截图”,然后将其保存为精灵以降低代码复杂度?

问题描述

标题说明了一切,尽管在我的例子中,我希望使用这个功能的原因是我计划让所有这些东西四处移动,直到我称之为“对话()”函数,当一切都停止时,我会让对话选项在屏幕上移动。但是,我不想在后台持续渲染所有内容,那么有什么方法可以在 pygame 中截屏吗?

标签: pythonpygame

解决方案


当您想重绘您使用的 时,您可以Pygame.Surface通过制作副本来捕获 的内容。然后你在上面画画。screen.copy()screen.blit(copy, (0,0))

另一种选择是更改您的代码,以便将背景渲染到单独的表面,而不是从屏幕复制它,然后通过将背景和前景与屏幕混合,将前景与对话结合起来。

如果这不适合您,请分享有关您的计划的更多信息。我有一段时间没有使用 Pygame,所以这主要基于文档https://www.pygame.org/docs/ref/surface.html


推荐阅读