废话不说pygame 绘制文字
现在搞起
主要用到的方法:
pygame.font.Font(filename, size)
filename:字体文件的文件名;
size:字体的高height,单位为像素;
pygame.font.Font.render(text, antialias, color, background=None)
text:要显示的文字;
antialias: 是否抗锯齿;
color:字体颜色;
background:背景颜色(可选参数);
.get_rect()
获得一个对象的rect,以便于设置其坐标位置
创建font对象
Pygame可以直接调用系统字体,或者也可以使用TTF字体。
SysFont(name, size, bold=False, italic=False)
my_font = pygame.font.SysFont("arial",16)
Font(filename, size) 或者Font(object, size)
my_font = pygame.font.Font("simsun.ttf",16)
1
使用这个方法,需要把字体文件随同游戏一起发送,这样可以避免使用者机器上没有所需的字体
使用字体
render(text, antialias, color, background=None)
text_surface =my_font.render("Pygame is cool!",True, (,,), (255,255,255))
1
第一个参数文字;
第二个参数是个布尔值,表示是否开启抗锯齿,如果为True,字体会比较平滑,不过相应的速度有一点点影响;
第三个参数是字体的颜色;
第四个是背景色,如果你想没有背景色(也就是透明),就不加这第四个参数
这里介绍一下pygame的坐标系
下面为绘制文字的代码
记住要写到程序主循环中
用多了就会发现绘制文字需要代码量较多
需要4行
下面我们定义一个方法
实现通过参数绘制文字
参数依次是
文字内容字体大小 坐标x,y 文字颜色 rgb 背景颜色rgb
这样我们就能通过一行代码直接搞定
发现颜色这样的使用很麻烦
RGB可读性太差
我们可以先自定义一套
这样就可以直接使用了
是不是很爽
下面是效果图
欢迎关注 请看下回分解
领取专属 10元无门槛券
私享最新 技术干货