显示文本文件(Pygame)已修复

时间:2013-12-24 21:04:08

标签: python python-2.7 pygame

我一直在学习如何在pygame中输入文本,然后将文本保存到我现在学习的文件中,以便完成。现在我想看看如何将文件中的文本显示在屏幕上。我已经尝试将文本文件blitting到屏幕,并尝试创建要显示的变量。这些都没有奏效。我正在尝试在屏幕的左上角显示文本文件。

另外我如何制作它以便我可以这样做,当保存名称时,下一组名称将位于文本文件的下方。

1 个答案:

答案 0 :(得分:1)

使用Pygame documentation中记录的pygame.font.Font.render(text, antialias, color, background=None)。这将返回一个pygame.Surface实例,可以使用以下内容绘制到屏幕:

screen = pygame.display.set_mode(...)
myFont = pygame.font.SysFont("Times New Roman", 12)
...
screen.blit(myFont.render("Hello", True, (255,0,0)), (0,0))

请注意,此功能仅呈现单行文本。要渲染多行,您必须单独渲染它们并自己在屏幕的不同部分绘制它们。 pygame.font.Font.sizepygame.font.Font.get_height方法可以帮助您决定是否对每条渲染线进行间距。

要在文件的现有内容上插入一行 文本,您应该:

  1. 阅读其内容并将其存储在内存中
  2. 在开头插入新名称(如果存储名称列表,则list.insert(0, ...
  3. 以新的顺序再次写入整个文件