当前位置:   article > 正文

python 滚动字幕_Python pygame绘制文字制作滚动文字过程解析

python 微信向上滚动字幕怎么弄

这篇文章主要介绍了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()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/686897
推荐阅读
相关标签
  

闽ICP备14008679号