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()

来自:https://cloud.tencent.com/developer/article/1489726

python怎样画动态文字_Python之pygame学习绘制文字制作滚动文字相关推荐

  1. python如何画动态海浪_python使用matplotlib画动态图

    matplotlib是python的核心绘图库,是python的一个开源项目,旨在为python提供一个绘图库. matplotlib matplotlib与numpy组合是一种可行的matlab替代 ...

  2. python如何画动态海浪_python 事务

    事务命令 事务指逻辑上的一组操作,组成这组操作的各个单元,要不全部成功,要不全部不成功. 数据库开启事务命令 --start transaction 开启事务--Rollback 回滚事务,即撤销指定 ...

  3. python turtle画滑稽表情_python使用turtle库绘制奥运五环

    python使用turtle库绘制奥运五环 Turtle库是Python语言中一个很流行的绘制图像的函数库,想象一个小乌龟,在一个横轴为x.纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令 ...

  4. python如何画贝塞尔曲线_Python使用matplotlib实现绘制自定义图形功能示例

    本文实例讲述了Python使用matplotlib实现绘制自定义图形功能.分享给大家供大家参考,具体如下: 一 代码 from matplotlib.path importPath from matp ...

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

    这篇文章主要介绍了Python pygame绘制文字制作滚动文字过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 字体常用的不是很多,在pyg ...

  6. python plt 画动态折线图

    python plt 画动态折线图 # coding=utf-8import matplotlib.pyplot as plt import numpy as npdef main():plt_lis ...

  7. php中如何滚动文字,HTML_网页HTML代码:滚动文字的制作,制作滚动文字 通过本章前面 - phpStudy...

    制作滚动文字 通过本章前面的学习,读者已经能够很好地控制各种段落文字的显示方式,不过无论怎么设置,文字都是静态的.本节笔者讲述HTML代码中比较特殊的标签,它能使网页中的文字滚动,并且可以控制其滚动的 ...

  8. html滚动图片代码加文字,HTML代码制作滚动文字

    这篇文章主要介绍了关于HTML代码制作滚动文字,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 本节笔者讲述HTML代码中比较特殊的标签,它能使网页中的文字滚动,并且可以控制其滚动的属性 ...

  9. Python Turtle 画动态圣诞贺卡

    Python画动态圣诞贺卡 兔兔大人的第一个博客 圣诞节制作了一款动态贺卡,有圣诞树,点亮彩灯,飘雪以及文字效果.这是我的第一个博客作品,希望大家喜欢. 效果如下,有动态效果. 代码如下: # -*- ...

最新文章

  1. 【免费CDN】俄罗斯DDOS-Guard 支持ssl 防御1.5T
  2. import的几种用法
  3. 自然语言处理之词向量技术(二)
  4. 边缘计算不“边缘”——助攻视频行业这几年
  5. concurre分段锁 put 流程图_一道有趣的笔试题(三)、锁存器Latch
  6. PostgreSQL 内存OOM控制策略导致数据库无法启动的诊断一例(如何有效避免oom)
  7. Redis--缓存设计与性能优化
  8. 并发容器ConcurrentHashMap——JDK1.7与JDK1.8区别
  9. ZABBIX 3.0 使用详解
  10. Android/安卓 文本添加中划线、下划线的方法
  11. 基于Redis生成递增序号
  12. Firebase入门使用 01
  13. 离散数学真值表(c语言编程实现),C语言 实现离散数学合式公式真值表
  14. tcpdump的使用方法
  15. 零基础学习CANoe Panel(6)—— 开关/显示控件(Switch/Indicator)
  16. Python continue的用法
  17. 漏洞原理——ssrf
  18. html+css 百度首页制作
  19. springboot集成log4j2 附完整配置
  20. python中的mul函数_mul函数的具体用法

热门文章

  1. 什么是禅?《禅与计算机程序设计艺术》 / 陈光剑
  2. linux解封ip,linux iptables禁IP与解封IP常用命令
  3. 主攻文推荐攻守都有系统_第一百四十八章:攻守之间 - 足球神话 - 找小说网
  4. 网络工程课程设计_某学校网络设计
  5. 简单易懂读《重构》 - Feature Envy (依恋情结)
  6. 【负荷预测】基于神经网络的负荷预测和价格预测(Matlab代码实现)
  7. GPON ITU-T G.xxx 标准协议下载
  8. 高情商的王维注解了低政商孟浩然的后半生
  9. 女程序员开淘宝店兼职---详细注册成为淘宝商家步骤
  10. 探索一下进制转换 (Python 实现源码)