文字绘制机制
pygame.freetype 向屏幕上绘制特定字体的文字,额外import引入
import pygame.freetype
文字不能直接print(),而是使用像素根据字体点阵绘图
pygame.freetype.Font(file,size=0) 根据字体和字号生成一个Font对象
file 字体类型名称或路径(一般位置在C:\Windows\Fonts)
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