Python pygame绘制文字制作滚动文字过程解析
2019-12-13 12:12
801 查看
这篇文章主要介绍了Python pygame绘制文字制作滚动文字过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
字体常用的不是很多,在pygame中大多用于提示文字,或者记录分数等事件。
字体绘制基本分为以下几个步骤:
- 初始化字体模块 pygame.init()
-
可以从文件或者系统内字体选取
pygame.font.SysFont('幼圆',50)
-
a.render("测试字体",True,(255,0,0),(0,0,0))
-
screen.blit(text,[jx.x,jx.y])
绘制字体是用的表面中blit函数来绘制图像:
blit(source,dest,area = None,special_flags = 0) - > Rect
在此Surface上绘制源Surface。可以使用dest参数定位绘图。Dest可以是表示源左上角的坐标对。Rect也可以作为目标传递,矩形的topleft角将用作blit的位置。目标矩形的大小不会影响blit。
也可以传递可选的区域矩形。这表示要绘制的源Surface的较小部分。
也就是我们需要绘制的元素,需要绘制的位置输入进去,可以接受矩形区域的位置参数。
这里还演示了获取文本宽高,让文本在屏幕居中滚动的效果。
import pygame import pprint def main(): # 初始化pygame pygame.init() # 初始化字体模块 pygame.font.init() # 如果字体模块已初始化,则为true print('是否初始化',pygame.font.get_init()) # 获取默认字体的文件名 print('默认字体名',pygame.font.get_default_font()) # 获取所有可用的字体 pprint.pprint(pygame.font.get_fonts()) # 在系统上找到特定的字体 print('查找字体',pygame.font.match_font('arial')) #从系统字体创建一个Font对象 # (名称,大小,粗体=假,斜体=假) - >字体 a = pygame.font.SysFont('幼圆',50) # 从文件或对象绘制文本 # pygame.font.Font('文件或对象',大小) # 在新Surface上绘制文本 # 显示内容、是否消除锯齿、字体颜色、背景颜色 text = a.render("gisoracle",True,(255,0,0),(0,0,0)) # 取消初始化字体模块 # pygame.font.quit() # 设置屏幕 screen = pygame.display.set_mode((500,100)) # 设置矩形区域 ztx, zty, ztw, zth = text.get_rect() # 绘制显示文字的矩形区域 jx = pygame.Rect(500,50-zth/2,ztw, zth) # 初始位置设置屏幕右边,并居住显示,2/1屏幕的高度 - 2/1字体的高度 向上移动是减 # 设置游戏时钟 clock = pygame.time.Clock() while True: # 文字滚动的频率 clock.tick(30) # 重绘屏幕 screen.fill((0,0,0)) # 退出事件 for event in pygame.event.get(): if event.type == pygame.QUIT: pygame.quit() exit(0) # 文字从右向左移动 jx.x -= 5 # 如果字体全部移动出屏幕,则设置字体X轴位置为510, 500的话会出现的比较突然 if jx.x < 0 - ztw: jx.x = 510 # 屏幕绘制字体, screen.blit(text,[jx.x,jx.y]) # 更新屏幕显示 pygame.display.update() if __name__ == '__main__': main()
以上就是本文的全部内容,希望对大家的学习有所帮助
您可能感兴趣的文章:
相关文章推荐
- Python箱型图绘制与特征值获取过程解析
- Python散点图与折线图绘制过程解析
- Python爬虫使用浏览器cookies:browsercookie过程解析
- python实现WebSocket服务端过程解析
- python使用PyGame绘制图像并保存为图片文件的方法
- Linux下Ramdisk根文件系统制作过程解析
- (原创)自定义view(view的绘制过程)、无限轮播并触碰停止轮播的viewpage、水平和垂直滚动的TextView、仿QQ滑动删除、下拉刷新上拉加载view、毛玻璃效果、低版本水波纹、圆环头像图
- python学习笔记(三)绘制训练过程的loss和accuracy曲线
- python中pygame安装过程(超级详细)
- 制作大漠字库并用python调用大漠工具方法来识别文字
- python正则爬取某段子网站前20页段子(request库)过程解析
- Python使用scrapy爬取阳光热线问政平台过程解析
- Python使用mongodb保存爬取豆瓣电影的数据过程解析
- python for循环remove同一个list过程解析
- Python facenet进行人脸识别测试过程解析
- caffe 使能python接口使用draw_net.py绘制网络结构图过程
- 【神经网络与深度学习】【python开发】caffe-windows使能python接口使用draw_net.py绘制网络结构图过程
- Android开发——View绘制过程源码解析(一)
- Python Request爬取seo.chinaz.com百度权重网站的查询结果过程解析
- 【python个人项目】python 爬淘宝评论文字、图片并且自定义制作优惠券图片