【问题标题】:Displaying A Text File (Pygame) FIXED [closed]显示文本文件(Pygame)已修复 [关闭]
【发布时间】:2013-12-24 21:04:07
【问题描述】:

我一直在学习如何在 pygame 中输入文本,然后将文本保存到我现在学习的文件中,这样就完成了。现在我正在寻找如何将文件中的文本显示到屏幕上。我尝试将文本文件传送到屏幕上,并尝试创建一个要显示的变量。这些都没有奏效。我正在尝试在屏幕左上角显示文本文件。

我将如何制作它以便我可以制作它,以便在保存名称时下一组名称将位于文本文件的下方。

【问题讨论】:

    标签: python python-2.7 pygame


    【解决方案1】:

    使用pygame.font.Font.render(text, antialias, color, background=None),如Pygame documentation 中所述。这将返回一个 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. 以新的顺序再次写入整个文件

    【讨论】:

    • 谢谢,我现在就试试。这似乎不起作用。我用一个文本文件试过这个并没有出现:(
    • 您是否将文件本身传递给pygame.font.Font.render,或者您是否将其内容读入字符串,然后将该字符串传递给render 方法?
    猜你喜欢
    • 1970-01-01
    • 2021-07-22
    • 1970-01-01
    • 1970-01-01
    • 2014-01-17
    • 1970-01-01
    • 2017-10-31
    • 2013-02-04
    • 2013-02-17
    相关资源
    最近更新 更多