pygame:font模块
文字显示
1.思路
把文字区域转换为image surface然后使用blit()函数绘制到display surface
2.字体的获取
#查找默认字体函数
pygame.font.get_default_font()
#查找系统字体
pygame.font.get_fonts()
- get_default_font函数返回pygame使用的默认字体的文件名称
- get_fonts函数返回当前系统中所有可用字体的名称列表
3.相关函数
#创建font类对象函数(只适用于使用系统字体)
pygame.font.SysFont(name,size,bold=False,italic=False)
各参数解析:
- name代表系统字体的名称,参数name为None时使用pygame默认字体
- size表示字体大小
- blod表示是否加粗
- italic表示是否倾斜
#Font类构造函数
__init__(filename,size)
参数解析:
- fillename表示字体文件名称,值为None时,使用默认字体
- size表示字体尺寸
注:使用自己的ttf字体文字显示文字必须使用Font构造函数创建字体对象
#文字区域转换为image surface的方法
render(text,antialias,color,background=None)
参数解析:
- text只能是单行表示待显示的文字
- antialias表示是否打开锯齿
- color表示文字颜色
- background表示背景颜色
#设置加粗
set_bold(bool)
#设置倾斜
set_italic(bool)
#设置下划线
set_underline(bool)
注:bool代表其接收的是布尔值,True或False
4.使用默认字体显示文字
#第一种方法
font=pygame.font.SysFont(None,32)
text=font.render("default font 0",True,(0,0,255))
#第二种方法
font=pygame.font.Font(None,32)
text=font.render("default font 0",True,(255,0,0))
注:绘制还需blit函数将其绘制到display surface上才能显示内容
5.使用系统字体显示文字
font=pygame.font.SysFont("arial",48)
text=font.render("system font",True,(255,0,0))
6.使用自己的ttf文件显示文字
font=pygame.font.Font("XXX.ttf",48)
text=font.render("system font",True,(255,0,0))
7.显示中文
font=pygame.font.SysFont("华文行楷",48)
text=font.render("你好,世界",True,(255,0,0))
8.具体实例
# 引入相关模块
import pygame,sys
# 函数声明与定义
def main():
# 初始化
pygame.init()
# 设置窗口大小
a=pygame.display.set_mode((800,700))
# 填充背景色为白色
a.fill((255,255,255))
# 主循环
while True:
for event in pygame.event.get():
if event.type == pygame.QUIT:
# 用户点击叉号结束
pygame.quit()
sys.exit()
# 使用默认字体显示文字
font=pygame.font.Font(None,32)
text=font.render("Hello World",True,(255,0,0))
a.blit(text,(50,50))
# 使用系统字体显示文字
font1=pygame.font.SysFont("arial",32)
text1=font1.render("Hello World",True,(0,0,0))
a.blit(text1,(50,100))
# 显示中文
font2=pygame.font.SysFont("华文新魏",48)
text2=font2.render("你好,世界",True,(0,255,0))
a.blit(text2,(50,150))
# 刷新窗口页面
pygame.display.flip()
if __name__=='__main__':
# 调用函数
main()
运行效果如下:
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhfjgbef
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01 -
怎样阻止微信小程序自动打开
PHP中文网 06-13