pygame使用SDL_ttf进行渲染,因此渲染时应该处于良好状态.
unifont.org似乎在一系列脚本的开源字体上有一些广泛的资源.
我抓住了Cyberbit pan-unicode字体并提取了包含的ttf.下面的'在我的机器上工作'是一个Windows Vista Home Basic和Python 2.6:
# -*- coding: utf-8 -*-
import pygame, sys
unistr = u"?? ?"
pygame.font.init()
srf = pygame.display.set_mode((640,480))
f = pygame.font.Font("Cyberbit.ttf",20)
srf.blit(f.render(unistr,True,(0,0,0)),(0,0))
pygame.display.flip()
while True:
srf.blit(f.render(unistr,True,(255,255,255)),(0,0))
for e in pygame.event.get():
if e.type == pygame.QUIT:
pygame.quit()
sys.exit()
Run Code Online (Sandbox Code Playgroud)
只要你只显示unicode文本,你应该处于梦幻般的状态.但是,如果您想要实际读取用户的unicode输入,情况会更加黯淡.Pygame没有任何类型的输入方法.
据我所知\xe2\x80\x89\xe2\x80\x94\xe2\x80\x89我自己还没有尝试过\xe2\x80\x89\xe2\x80\x94\xe2\x80当你向它传递一个包含中文字符的 Unicode 字符串时, \x89PyGame 应该可以正常工作,例如。u\'\\u4e2d\\u56fd\'。
\n\n请参阅http://www.unifont.org/fontguide/下的 \xe2\x80\x98East Asia\xe2\x80\x99以获得相当多合适的开放许可字体。
\n| 归档时间: |
|
| 查看次数: |
6509 次 |
| 最近记录: |