Подтвердить что ты не робот

Текст на экране Python с шрифтом и цветом?

Есть ли способ показать текст в окне pygame с помощью python?

Мне нужно отобразить кучу живой информации, которая обновляется, и скорее не будет делать изображение для каждого символа, который мне нужен.

Можно ли нажимать текст на экран?

4b9b3361

Ответ 1

Да. В pygame можно нарисовать текст:

# initialize font; must be called after 'pygame.init()' to avoid 'Font not Initialized' error
myfont = pygame.font.SysFont("monospace", 15)

# render text
label = myfont.render("Some text!", 1, (255,255,0))
screen.blit(label, (100, 100))

Ответ 2

Вы можете использовать свои собственные шрифты, установив путь шрифта, используя pygame.font.Font

pygame.font.Font(filename, size): return Font

Пример:

pygame.font.init()
font_path = "./fonts/newfont.ttf"
font_size = 32
fontObj = pygame.font.Font(font_path, font_size)

Затем визуализируйте шрифт с помощью fontObj.render и blit на поверхность, как в ответе veiset выше.:)

Ответ 3

У меня есть код в моей игре, который отображает живую оценку. Это функция быстрого доступа.

def texts(score):
   font=pygame.font.Font(None,30)
   scoretext=font.render("Score:"+str(score), 1,(255,255,255))
   screen.blit(scoretext, (500, 457))

и я вызываю это, используя это в моем цикле while:

texts(score)

Ответ 4

Я написал обертку, которая будет кэшировать текстовые поверхности, а только повторно рендерить при загрязнении. googlecode/ninmonkey/nin.text/demo/