首页 > 解决方案 > 我可以自动调整 pygame 中的文本大小以适应屏幕分辨率吗?

问题描述

我正在制作一个使用 python 和 pygame 发布到网站上的游戏。我在笔记本电脑上设计了这个程序,但是当我尝试在我的 Raspberry Pi 上运行它时,文本超出了屏幕的边界。有没有办法调整文本大小以适应不同显示器的分辨率?`

screen.blit(gameOver, gameOverrect)
strScoreL = len(strScore)
scoreLabel = myfont.render("Your Score: " + strScore, 1, BLACK)
if strScoreL >= 2:
    screen.blit(scoreLabel, (80, 180))
else:
    screen.blit(scoreLabel, (60, 180))

`

标签: pythonpygame

解决方案


文本的大小取决于Font对象。如果你想渲染一个不同大小的文本,你需要创建一个不同大小的字体

例如,根据屏幕的大小创建字体:

font_size = screen.get_width() // 20
myfont = pygame.font.SysFont(None, font_size)

推荐阅读