Pygame - 使用Sprites渲染多行文本

时间:2017-12-17 09:57:48

标签: python-2.7 pygame rendering sprite multiline

斗争是我能够在Pygame中使用Sprites渲染一行文本,我也能够渲染多行文本,但没有Sprites,但我无法弄清楚如何渲染多行使用精灵的文字。

我使用Sprites渲染一行文本(我将跳过基本的运行Pygame代码 - background,init等):

class Score(pygame.sprite.Sprite):
    .
    .
    def update(self, lives, score):
        .
        .
        self.text = "LIVES: %d  SCORE: %d" % (lives, score)
        self.image = self.font.render(self.text, True, self.color)
        self.rect = self.image.get_rect()
        .
        .

.
.
def main():
    .
    .
    score = pygame.sprite.RenderUpdates()
    score.add(Score())
    .
    .
    while 1:
        .
        .
        score.clear(screen, background)
        score_list = score.draw(screen)
        pygame.display.update(score_list)

        score.update(lives, score)
    .
    .

我只是想知道是否可以使用我的渲染方法来实现它,或者我是否应该专注于以其他方式实现它?

也许是一个相关的问题;这种方法是在Pygame中渲染对象(图像)的正确方法吗?

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

您可以先使用firebase.auth().signInAnonymously().catch(function(error) { // Handle Errors here. var errorCode = error.code; var errorMessage = error.message; // ... }); 渲染字符串,然后创建一个透明曲面并将单独的文本曲面blit到其上。要计算透明基础图像的宽度,您可以使用单独文本曲面的FONT.render方法,并使用.get_width()的高度。

FONT.get_height()