#python #pygame
Вопрос:
Почему мой текст не появляется? Я пытаюсь создать программу, в которой текст отображается над изображением. В программе я все еще вижу изображение, но не текст.
import pygame
import time
pygame.init()
screen = pygame.display.set_mode((800, 600))
image1 = pygame.image.load('frog.gif')
image2 = pygame.image.load('frog.jpg')
pygame.display.set_caption(''Dancing frog'')
image1 = pygame.transform.scale(image1, (800, 800))
image2 = pygame.transform.scale(image2, (800, 800))
font = pygame.font.SysFont('Calibri', 25, True, False)
text = font.render('this should appear', True, (255, 255, 255))
screen.blit(text, [10, 10])
run = True
while run:
screen.blit(image1, (0, -200))
pygame.display.update()
time.sleep(0.2)
screen.blit(image2, (0, -200))
pygame.display.update()
time.sleep(0.2)
for event in pygame.event.get():
if event.type == pygame.QUIT:
run = False
pygame.quit() ```
Комментарии:
1. Скорее
image1
всего иimage2
будут рисовать поверх текста.2. Не связаны, но вы должны позвонить только
pygame.display.update()
один раз. В конце концов, после того, как вы все уничтожите. В противном случае это вызовет мерцание.
Ответ №1:
Вы должны blit
поместить текст на поверхность после изображения bbackgorund:
screen.blit(image1, (0, -200))
screen.blit(text, [10, 10])
pygame.display.update()