北京理工大学-Phythonゲーム開発入門学習ノート12

4967 ワード

テキスト描画メカニズム
pygame.freetypeは画面に特定のフォントの文字を描き、importを追加してimport pygameを導入する.freetype文字は直接print()ではなく、フォントのドットマトリクスに基づいてピクセルを使用して描画します.
pygame.freetype.Font(file,size=0)フォントとフォント番号に基づいてFontオブジェクトfileフォントタイプ名またはパス(一般的にC:WindowsFonts)sizeフォントのサイズを生成します.
Fontオブジェクトのrender*メソッドで具体的な文字Fontを描画する.render_to(surf,dest,text,fgcolor=None,bgcolor=None,rotation=0,size=0)→Rect surf描画フォントの平面,Surfaceオブジェクトdest描画平面における具体的な位置,(x,y)textで描画した文字内容fgcolor文字の色bgcolor背景色rotation反時計回りに角度を回転させ、0-359の値をとり、一部のフォントはsize文字サイズを回転させ、コピーパラメータはFontの設定値を上書きする
Font.render(text,fgcolor=None,bgcolor=None,rotation=0,size=0)→(Surface,Rect)textで描画した文字内容fgcolor文字の色bgcolor背景色rotation反時計回りに角度を回転させ、0-359の値をとり、一部のフォントはsize文字サイズを回転させ、コピーパラメータはFontの設定値を上書きする
テキストの描画
import pygame,sys
import pygame.freetype

pygame.init()
screen=pygame.display.set_mode((600,400))
pygame.display.set_caption("    ")
gold=255,251,0

f1=pygame.freetype.Font("C://Windows//Fonts//msyh.ttc",36)
f1rect=f1.render_to(screen,(200,160),"     ",fgcolor=gold,size=50)
f2surf,f2rect=f1.render("    ",fgcolor=gold,size=50)

while True:
    for event in pygame.event.get():
        if event.type==pygame.QUIT:
            sys.exit()

    screen.blit(f2surf,(200,250))
    pygame.display.update()

ps:学習リンクhttps://www.icourse163.org/course/BIT-1001873001