私は小さなpython/pygameプロジェクトを再作成して複数の言語を含めようとしていますが、私が遭遇した問題の1つは、何らかの理由でアクセントやチルダなどが上からトリミングされているため、それらは表示されます。これは、ieの「アクセント付き」大文字のほとんどに適用されます。フランス語、ポーランド語、スペイン語、ドイツ語など。これは、デフォルトのpygameフォントを使用して、Python2.7.2とPython3.2の両方で発生します。
次の文字列をレンダリングしようとしています:'ÀÂÉÈÊËÎÏÔÙÛÜŸ'
結果は次のようにレンダリングされます。
私は、標準のレンダリング/ブリッティング手法を使用していると思います。
# -*- coding: utf-8 -*-
#...
value = 'ÀÂÉÈÊËÎÏÔÙÛÜŸ'
if sys.version_info < (3, 0):
try:
val = unicode(value, "utf-8")
except UnicodeDecodeError:
val = value
text = font.render("%s" % (val), 1, font_color)
else:
val = value
text = font.render("%s" % (val), 1, font_color)
self.image.blit(text, (300,300))
#...
誰かが以前にこの問題を抱えていましたか?回避策はありますか?それとも、pygame.font.renderが作成するサーフェスが小さすぎて、上部に必要な余分なスペースを収容できないというだけですか?線の高さを設定する方法があるかもしれませんが、どこにも見つかりませんでした...