python与pygame显示中文的问题,SimHei就可以,"宋体"就不行!

代码如下:
#创建一个字体
font=pygame.font.SysFont('SimHei',36)
#创建要显示的文本
text=u'中国'#unicode编码
#创建一个字体表面
text_surf = font.render(text,True,(255,0,0))
奇怪的是:这个程序用SimHei字体就一切正常,我把字体由SimHei改成宋体,就不行了!百思不解!这是为什么呢?如何做,就能实现在pygame下能显示各种各样中文字体呢?谢谢我查看了Windiws目录下的Font字体,是有"宋体"字体的!好奇怪呀!这是怎么回事?能给解释一下吗?谢谢

pygame.font.SysFont('SimHei',36)这个api是pygame写的,你写中文'宋体'不一定可以找到这个字体,具体要看这个api的实现方式。

你可以用pygame.font.get_fonts()来查看系统支持那些字体,我这里用这个api查看,宋体对应的名称应为:simsunnsimsun。因此使用宋体应改为:

font=pygame.font.SysFont('simsunnsimsun',36)

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-01-18
有的系统不支持字体设置写成中文的,
估计是写成英文的:
simSun
就可以了。

如果你有微软雅黑,也可以先试试:
msyh本回答被网友采纳