无法使用pygame创建游戏
我正在用 Python 2.5 和 pygame 制作一个游戏。
但是,我无法完成制作,因为出现了错误。
C:\Python26\TypeType\src\dist\Main.exe:8: RuntimeWarning: use font: MemoryLoadLibrary failed loading pygame\font.pyd
Traceback (most recent call last):
File "Main.py", line 8, in <module>
File "pygame\__init__.pyo", line 70, in __getattr__
NotImplementedError: font module not available
Traceback (most recent call last):
File "Main.py", line 8, in <module>
File "pygame\sysfont.pyo", line 253, in SysFont
RuntimeError: default font not found 'freesansbold.ttf'
我觉得问题可能是因为用了一个叫做 sysfont 的东西。(因为我有一些不使用 sysfont 的程序,它们可以在没有安装 Python 的电脑上运行)
到底哪里出错了呢?抱歉,我还是个初学者。
编辑
我找到了 Python2.5\Lib\site-packages\pygame\freesansbold.ttf 文件。
但是同样的错误又出现了……我应该把 freesansbold.ttf 复制到哪里呢?
3 个回答
0
你可能已经找到了解决办法,但我想给其他人提供一个方法。首先,用pygame创建你的游戏。然后,解压库文件。
找到这个路径:PythonX.X\Lib\site-packages\pygame,然后复制freesansbold.ttf这个文件。
接着回到你解压的库文件,找到这个路径:
library\pygame
把freesansbold.ttf文件放进去,然后再把库文件压缩回去。
现在,这样就可以用了! :)
1
看起来你的电脑上没有可以访问的 freesansbold.ttf
字体文件。这个字体应该是和 Pygame 一起放在 lib
文件夹里的。
你可以去找一下你安装的 Pygame 文件夹,看看里面有没有这个字体。如果有的话,你需要把 Python 的字体路径改一下,把这个文件夹加进去。如果没有的话,你就得找一个这个字体的副本,或者下载一个更新版本的 Pygame。
2
一个简单的解决办法就是直接加载字体,而不是使用系统字体。你可以使用pygame.font.Font这个类,直接加载一个ttf格式的字体文件。这样做也会让你在使用py2exe时更方便,而且你可以选择你想要的具体字体。