Pygame编程(10)freetype模块

news2024/9/21 2:41:48

Pygame编程(10)freetype模块

  • 函数
  • 示例

函数

  • pygame.freetype.get_error
    • 返回最新的FreeType错误
    • get_error() -> str
    • get_error() -> None
  • pygame.freetype.get_version
    • 返回FreeType版本
    • get_version(linked=True) -> (int, int, int)
  • pygame.freetype.init
    • 初始化FreeType库
    • init(cache_size=64, resolution=72) -> None
  • pygame.freetype.quit
    • 反初始化FreeType库
    • quit() -> None
  • pygame.freetype.get_init
    • True,如果FreeType库已经初始化
    • get_init() -> bool
  • pygame.freetype.was_init
    • 已弃用:改用 get_init()。
  • pygame.freetype.get_cache_size
    • 返回字形大小写大小
    • get_cache_size() -> long
  • pygame.freetype.get_default_resolution
    • 返回默认像素大小(以每英寸点数为单位)
    • get_default_resolution() -> long
  • pygame.freetype.set_default_resolution
    • 设置模块的默认像素大小(以每英寸点数为单位)
    • set_default_resolution([resolution])
  • pygame.freetype.get_default_font
    • 获取默认字体的文件名
    • get_default_font() -> string
  • pygame.freetype.SysFont
    • 从系统字体创建字体对象
    • SysFont(name, size, bold=False, italic=False) -> Font
  • pygame.freetype.Font
    • 从支持的字体文件创建新的字体实例。
    • Font(file, size=0, font_index=0, resolution=0, ucs4=False) -> Font
    • Font(pathlib.Path) -> Font
    • Font和SysFont类函数:
      • pygame.freetype.Font.name
        • 正确的字体名称。
        • name -> string
      • pygame.freetype.Font.path
        • 字体路径
        • path -> unicode
      • pygame.freetype.Font.size
        • 渲染中使用的默认点大小
        • size -> float
        • size -> (float, float)
      • pygame.freetype.Font.get_rect
        • 返回呈现文本的大小和偏移量
        • get_rect(text, style=STYLE_DEFAULT, rotation=0, size=0) -> rect
      • pygame.freetype.Font.get_metrics
        • 返回给定文本的字形指标
        • get_metrics(text, size=0) -> [(…), …]
        • (min_x, max_x, min_y, max_y, horizontal_advance_x, horizontal_advance_y)
      • pygame.freetype.Font.height
        • 字体的未缩放高度(以字体单位表示)
        • height -> int
      • pygame.freetype.Font.ascender
        • 字体以字体单位的未缩放上升
        • ascender -> int
      • pygame.freetype.Font.descender
        • 字体的未缩放下降(以字体单位表示)
        • descender -> int
      • pygame.freetype.Font.descender
        • 字体的缩放上升(以像素为单位)
        • get_sized_ascender(=0) -> int
      • pygame.freetype.Font.get_sized_descender
        • 字体的缩放下降(以像素为单位)
        • get_sized_descender(=0) -> int
      • pygame.freetype.Font.get_sized_height
        • 字体的缩放高度(以像素为单位)
        • get_sized_height(=0) -> int
      • pygame.freetype.Font.get_sized_glyph_height
        • 字体的缩放边界框高度(以像素为单位)
        • get_sized_glyph_height(=0) -> int
      • pygame.freetype.Font.get_sizes
        • 返回嵌入位图的可用大小
        • get_sizes() -> [(int, int, int, float, float), …]
        • get_sizes() -> []
      • pygame.freetype.Font.render
        • 将渲染文本作为表面返回
        • render(text, fgcolor=None, bgcolor=None, style=STYLE_DEFAULT, rotation=0, size=0) -> (Surface, Rect)
      • pygame.freetype.Font.render_to
        • 将文本渲染到现有图面上
        • render_to(surf, dest, text, fgcolor=None, bgcolor=None, style=STYLE_DEFAULT, rotation=0, size=0) -> Rect
      • pygame.freetype.Font.render_raw
        • 以字节字符串形式返回呈现的文本
        • render_raw(text, style=STYLE_DEFAULT, rotation=0, size=0, invert=False) -> (bytes, (int, int))
      • pygame.freetype.Font.render_raw_to
        • 将文本呈现为整数数组
        • render_raw_to(array, text, dest=None, style=STYLE_DEFAULT, rotation=0, size=0, invert=False) -> Rect
      • pygame.freetype.Font.style
        • 字体的样式标志
        • style -> int
          • STYLE_NORMAL
          • STYLE_UNDERLINE
          • STYLE_OBLIQUE
          • STYLE_STRONG
          • STYLE_WIDE
          • STYLE_DEFAULT
      • pygame.freetype.Font.underline
        • 字体的下划线样式标志的状态
        • underline -> bool
      • pygame.freetype.Font.strong
        • 字体的强样式标志的状态
        • strong -> bool
      • pygame.freetype.Font.oblique
        • 字体的倾斜样式标志的状态
        • oblique -> bool
      • pygame.freetype.Font.wide
        • 字体的宽样式标志的状态
        • wide -> bool
      • pygame.freetype.Font.strength
        • 与强字体样式或宽字体样式相关的强度
        • strength -> float
      • pygame.freetype.Font.underline_adjustment
        • 下划线位置的调整系数
        • underline_adjustment -> float
      • pygame.freetype.Font.fixed_width
        • 获取字体是否为固定宽度
        • fixed_width -> bool
      • pygame.freetype.Font.fixed_sizes
        • 字体的可用位图大小数
        • fixed_sizes -> int
      • pygame.freetype.Font.scalable
        • 获取字体是否可缩放
        • scalable -> bool
      • pygame.freetype.Font.use_bitmap_strikes
        • 允许在大纲字体文件中使用嵌入的位图
        • use_bitmap_strikes -> bool
      • pygame.freetype.Font.antialiased
        • 字体抗锯齿模式
        • antialiased -> bool
      • pygame.freetype.Font.kerning
        • 字符字距调整模式
        • kerning -> bool
      • pygame.freetype.Font.vertical
        • 字体垂直模式
        • vertical -> bool
      • pygame.freetype.Font.rotation
        • 文本逆时针旋转度数
        • rotation -> int
      • pygame.freetype.Font.fgcolor
        • 默认前景色
        • fgcolor -> Color
      • pygame.freetype.Font.bgcolor
        • 默认背景色
        • bgcolor -> Color
      • pygame.freetype.Font.origin
        • 字体呈现为文本源模式
        • bgcolor -> Color
      • pygame.freetype.Font.pad
        • 填充边界模式
        • pad -> bool
      • pygame.freetype.Font.ucs4
        • 启用 UCS-4 模式
        • ucs4 -> bool
      • pygame.freetype.Font.resolution
        • 像素分辨率(以每英寸点数为单位)
        • resolution -> int

示例

import sys
import pygame
import pygame.freetype
from pygame.locals import *


pygame.init()

screen = pygame.display.set_mode((800, 600), flags=0)

print('init:', pygame.freetype.get_init())
print('version:', pygame.freetype.get_version())
print('fonts:', pygame.freetype.get_fonts())
print('default_font', pygame.freetype.get_default_font())

path = pygame.freetype.match_font('humanst521roman')
print(path)

sysFont = pygame.freetype.SysFont(None, size=10)
text_SysFont, rect = sysFont.render('FreeType Text Test', (255, 0, 0), (0, 0, 255), 
                                    style=pygame.freetype.STYLE_NORMAL, 
                                    rotation=45, 
                                    size=50)
print(text_SysFont)
screen.blit(text_SysFont, (100, 50))

font = pygame.freetype.Font('C:/Windows/Fonts/Humanst521 BT Roman.ttf', size=10)
text_font, rect = font.render('Font text', (0, 255, 0), (0, 0, 255),
                        style=pygame.freetype.STYLE_NORMAL,
                        rotation=10,
                        size=25)
screen.blit(text_font, (100, 450))


while True:
    for event in pygame.event.get():
        if event.type == QUIT:
            pygame.quit()
            sys.exit()

    pygame.display.flip()

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/932315.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

斯坦福人生设计课——简略笔记

来源:⽐尔博内特 戴夫伊万斯 著图书《人生设计课》 目录 一、认清当下的情况,从四个维度观察自己的人生 二、平衡人生,但不要走入误区 2.1 记录你的“美好时光日志”: 2.1.1 记录内容: 2.1.2 辅助反思的方法&…

C# 学习笔记--个人学习使用 <2>

C# 学习笔记 Chapter 2 比较硬的基础部分Section 1 委托Part 1 Action 与 func 委托的示例Part 2 自定义委托Part 3 委托的一般使用Part 4 委托的高级使用Part 5 适时地使用接口 Interface 取代一些对委托的使用 Section 2 事件Part 1 初步了解事件Part 2 事件的应用Part 3 事件…

图神经网络与分子表征:番外——基组选择

学过高斯软件的人都知道,我们在撰写输入文件 gjf 时需要准备输入【泛函】和【基组】这两个关键词。 【泛函】敲定计算方法,【基组】则类似格点积分中的密度,与计算精度密切相关。 部分研究人员借用高斯中的一系列基组去包装输入几何信息&am…

快速安装Qt开发环境,克服在线安装慢等问题

自从Qt6之后,QtCreater的安装都需要注册账号,并且使用账号在线安装,继续使用官网的资源站下载的话,会特别的慢,以下是提高在线安装速度的做法。 官网下载很慢,快速安装的方式如下 1、winR,输入CMD&#xff…

深入分析负载均衡情景

本文出现的内核代码来自Linux5.4.28,为了减少篇幅,我们尽量不引用代码,如果有兴趣,读者可以配合代码阅读本文。 一、有几种负载均衡的方式? 整个Linux的负载均衡器有下面的几个类型: 实际上内核的负载均衡…

关于述职答辩的一点思考和总结

公众号:赵侠客 侠客说:优秀人才的四个特征:格局、思路、实干、写作 一、前言 1.1 述职答辩的重要性 公司都会有晋升通道,述职答辩是你想升职加薪除了跳槽以外的必由之路,其重要性对个人发展来说不言而喻&#xff0c…

python的文件操作

前言 打印内容到屏幕 最简单的输出方式是调用print函数,此函数会将你传递的表达式转化成字符串表达式,并将结果写道标准输出中。 读取键盘输入 python提供了两个raw_input和input内置函数从标准输入中读取一行文本,默认的标准输入是键盘。 …

7.接着跑一下triton官方教程

5.Model Ensemble 在此示例中,我们将探索使用模型集成来仅通过单个网络调用在服务器端执行多个模型。这样做的好处是减少了在客户端和服务器之间复制数据的次数,并消除了网络调用固有的一些延迟。 为了说明创建模型集成的过程,我们将重用第…

缺页异常与copy-on-write fork

缺页异常需要什么 当发生缺页异常时,内核需要以下信息才能响应这个异常: 出错的虚拟地址(引发缺页异常的源) 当一个用户程序触发了缺页异常,会切换到内核空间,将出错的地址放到STVAL寄存器中,…

JVM工具-1. jps:虚拟机进程状态工具

文章目录 1. jps介绍2. jps命令格式3. jps工具主要选项4. jps -q5. jps -m6. jps -l7. jps -v 1. jps介绍 jps(JVM Process Status Tool):虚拟机进程状态工具,可以列出正在运行的虚拟机进程,并显示虚拟机执行主类(Main Class&…

3.3.2:SUM作为一般函数及聚合函数的应用

【分享成果,随喜正能量】我们很多道友没受过什么苦,或受不了一句话、一点气,总想悠悠自在成佛。或是念上几十部经就想换取什么,法宝是无价的!你拿有价来换,不但换不到,还丧失了功德。应当不退初…

springboot整合jdbctemplate教程

这篇文章介绍一下springboot项目整合jdbctemplate的步骤,以及通过jdbctemplate完成数据库的增删改查功能。 目录 第一步:准备数据库 第二步:创建springboot项目 1、创建一个springboot项目并命名为jdbctemplate 2、添加spring-jdbc和项目…

探讨uniapp的路由与页面生命周期问题

1 首先我们引入页面路由 2 页面生命周期函数 onLoad() {console.log(页面加载)},onShow() {console.log(页面显示)},onReady(){console.log(页面初次显示)},onHide() {console.log(页面隐藏)},onUnload() {console.log(页面卸载)},onBackPress(){console.log(页面返回)}3 页面…

一串神奇的字符,就能让ChatGPT在内的AI聊天机器人变得不正常

一组看似随机的字符被添加到对话提示的末尾,就会发现几乎任何聊天机器人都显露了邪恶本性。 卡内基梅隆大学计算机科学教授Zico Kolter和博士生Andy Zou的一份报告,揭示了当前主流的聊天机器人,特别是ChatGPT,以及Bard、Claude等…

python print ljust 文本对齐打印 对齐打印名册

背景 在python部分场景下,我们需要打印输出一些文本消息,但我们又无法预测可能的打印内容是什么。这种情况下,我们要对齐打印这些文本,是比较比较难以处理的。 例如下面是一列姓名,和对应的一列手机/电话号&#xff0…

自然对数底e的一些事

自然对数底e的一些事 走的人多了就成了路 中国清代数学家李善兰(1811—1882) 凡此变数中函彼变数者,则此为彼之函数 自然对数底也是使用习惯 🍉 李善兰把function翻译为函数,函就是包含,含有变量&#xff…

C# Winfrom通过COM接口访问和控制Excel应用程序,将Excel数据导入DataGridView

1.首先要创建xlsx文件 2.在Com中添加引用 3. 添加命名空间 using ApExcel Microsoft.Office.Interop.Excel; --这样起个名字方面后面写 4.样例 //点击操作excelDataTable dt new DataTable();string fileName "D:\desktop\tmp\test.xlsx";ApExcel.Application exA…

【学习FreeRTOS】第20章——FreeRTOS内存管理

1.FreeRTOS内存管理简介 在使用 FreeRTOS 创建任务、队列、信号量等对象的时,一般都提供了两种方法: 动态方法创建:自动地从FreeRTOS管理的内存堆中申请创建对象所需的内存,并且在对象删除后,可将这块内存释放回Free…

牛客练习赛 114

C.Kevin的七彩旗 思路:贪心和dp均可以解决。 贪心:我们可以发现,最终想要获得合法的序列,我们必须是通过把几段连续的序列拼凑起来,但序列之间可能有重合,因此我们就转化为了,记录每一段最大的…

IP编址数据转发(md版)

IP编址&数据转发 一、IP编址1.1、二进制、十进制和十六进制1.2、进制之间的转换1.3、IP编址1.4、子网掩码1.5、二进制和十进制转换1.6、IP地址分类1.7、IP地址类型1.8、地址规划 二、VLSM与CIDR2.1、有类IP编址的缺陷2.2、变长子网掩码 VLSM2.3、缺省情况下的掩码2.4、子网…