- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
第
Pygame实现文字显示在窗口中
目录1.Pygame的初始化2.屏幕的创建3.字体的创建4.字体的渲染5.文字的显示使用Pygame显示文字的步骤如图1所示。
图1显示文字的步骤
1.Pygame的初始化
通过以下代码实现Pygame的初始化。
importpygame
pygame.init()
其中,第1行代码的作用是在程序中导入pygame模块;第2行代码的作用是实现pygame的初始化。
2.屏幕的创建
使用如下代码实现屏幕的创建
screen_size=500,500
screen=pygame.display.set_mode(screen_size)
其中,第1行代码定义了表示屏幕大小的变量screen_size,该变量的类型是元组;第2行代码通过pygame的display模块中的set_mode()函数创建屏幕。set_mode()函数的作用是初始化用来显示的窗口或屏幕,该函数的返回值是Surface对象。
相关链接1Surface,是在Pygame中定义的对象,是一块矩形区域,用来表示要显示的图像;可以把Surface理解为画布,在该画布上面进行绘画。
3.字体的创建
通过pygame的font模块来创建字体,如下代码所示。
myfont=pygame.font.Font(None,60)
其中,在Pygame的font模块中定义的Font()函数的主要作用是从指定的文件中创建一个新的字体对象;其中第一个参数表示指定的字体文件,None表示使用默认字体;第二个参数表示字体的高度,单位是像素。该函数的返回值是Font类对象。
4.字体的渲染
pygame的font模块中没有提供将文字直接显示在Surface的方法,因为这种直接显示的方法可能会导致显示的闪烁。可以先在内存中创建一个新的Surface,将要显示的文字渲染(render)到该Surface中,最后将这个新的Surface在屏幕中显示。而以上步骤可以通过Font类的render()函数实现,代码如下所示。
white=255,255,255
textImage=myfont.render(HelloPygame,True,white)
第1行代码定义了字体的颜色,用变量white表示,该变量的类型是元组;第2行代码通过Font类的对象myfont调用render()函数创建一个新的Surface,并将要显示的文字渲染到Surface中,其中第一个参数表示要显示的内容,第二个参数表示是否使用抗锯齿效果,该参数是布尔类型,True表示使用抗锯齿效果,使用该效果后,显示字体的边缘变得平滑;Flase表示不使用抗锯齿效果,此时字体的边缘会有锯齿;第三个参数表示字体的颜色。
5.文字的显示
通过如下代码在屏幕中显示文字
blue=0,0,255
screen.fill(blue)
screen.blit(textImage,(100,100))
pygame.display.update()
其中,第1~2行将屏幕的背景设置为蓝色;第3行通过screen调用Surface类的blit()函数将4渲染字体中创建的Surface也就是textImage,在屏幕中显示,其中blit()函数的第一个参数表示要显示的Surface,第二个参数显示Surface的起点坐标;第4行代码调用pygame的display模块中的update()函数更新屏幕显示,也就是将Surface在屏幕中显示出来。
通过以上代码显示的效果如图2所示。
图2显示效果
文档评论(0)