0

我正在使用 Python 并使用 livewires 开发一个琐事游戏。我有一个理论,有一个默认的问题卡作为图像显示。然后让控制台将文本打印到准确定位的位置。问题、答案和解释将从文本文件中加载,程序会随机选择加载的内容。但如果这一理论可行,该程序实际上可以有尽可能多的问题或不同的主题,并且可以很容易地从记事本文件中编辑。我想我的问题是,有没有办法准确定位打印的控制台文本,并允许将其放置在 pygame 窗口内的图像之上?

4

1 回答 1

0

从文本文件加载问题听起来不错。使用 pygame,您可以将文本放置在屏幕上的任何位置,这是一个两步过程:

question = "Is this a question?"

# Render the text:
font = pygame.font.SysFont("Arial", 20)
text_surface = font.render(question, true, (0,0,0))

# Blit the text to the screen
text_rect = text_surface.get_rect()
text_rect.center = (100,100)
screen.blit(text_surface, text_rect.topleft)

这会将问题引向所需的位置。

如果您想处理多行问题,您可以在文件中使用特殊字符来指示换行符(例如竖线 |),或者您可以制定算法来自动找出换行符的放置位置。接下来,您逐行渲染和 blit,将一些像素添加到 y 坐标。

于 2013-07-05T03:51:03.077 回答