游戏中的Pygame字体

时间:2015-01-23 17:43:02

标签: python fonts pygame

我正在做一个简单的游戏,宇宙飞船飞过屏幕射击外星人。无论如何,我决定在比赛开始之前进行倒计时并且在那之后显示得分是很好的。因为我使用的是pygame,所以显而易见的选择是pygame.font方法。所以我通过一些互联网搜索起草了下面的代码,事实证明它只是在某些时候工作。当它工作时,我可以看到所有颜色,字体大小,字体类型,位置,内容等工作的证据。然而,很多时候它似乎是随机的场合,它返回错误信息“Text has zero width”,高于下面的第二行代码。如果不改变任何参数,这完全是自发的。任何帮助将不胜感激,谢谢。

theFont= pygame.font.SysFont("C:\\ProgrammeringOne\\motion_control\\MotionControl-Bold", 15)

label = theFont.render("Some text!", 1, (255,255,0))

screen.blit(label, (40, 30))

1 个答案:

答案 0 :(得分:0)

首先,如果您使用SysFont,则不必编写完整路径。如果将字体放入C中的主字体文件夹,则只有字体名称就足够了。

第二,在这里; label = theFont.render("Some text!", 1, (255,255,0)) 1必须为True。将1替换为True

label = theFont.render("Some text!", True, (255,255,0))

关于sometimes it's working,我不确定,但实际上您知道True等于1;

>>> True+True
2
>>> 

所以可能这就是为什么当你使用1它正在工作时。