我正在使用Python并使用livewires开发一个琐事游戏。我有理论将默认问题卡作为图像显示。然后让控制台将文本打印到准确定位的位置。问题,答案和解释将从文本文件加载,程序将随机化加载哪些。但是,如果这个理论能够起作用,那么该程序实际上可以提供与想要的一样多的问题或不同的主题,并且可以从记事本文件中轻松编辑。我想我的问题是,有没有办法准确定位打印的控制台文本,并允许它放在pygame窗口内的图像顶部?
答案 0 :(得分: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坐标。