python中font模块详解
⽬录
系统⽅法
pygame.font.init()
副词
功能:初始化字体模块
属性:init() -> None
此⽅法由 pygame.init()⾃动调⽤,初始化字体模块。在任何其他函数⼯作之前,必须初始化模块。
多次调⽤此函数是安全的。
pygame.font.quit()
功能:取消字体模块的初始化
属性:quit() -> None
⼿动取消初始化 SDL_ttf 的字体系统,由 pygame.quit()⾃动调⽤。
即使字体当前未初始化,也可以安全地调⽤此函数。
_init()
功能:测试字体模块是否已初始化【如果字体模块已初始化,则为true】
属性:get_init() -> bool
_default_font()
功能:获取默认字体的⽂件名
属性:get_default_font() -> string
返回系统字体的⽂件名,但不是⽂件的完整路径。此⽂件通常与字体模块位于同⼀⽬录中,但也可以捆绑在单独的存档中。
_fonts()
功能:获取所有可⽤字体
属性:get_fonts() -> list of strings
返回系统上所有可⽤字体的列表。字体名称将设置为⼩写,并删除所有空格和标点符号。这在⼤多数系统上都有效,但如果找不到字体,有些系统会返回空列表。
pygame.font.match_font()
功能:在系统上查找特定字体
属性:match_font(name, bold=Fal, italic=Fal) -> path
返回系统上字体⽂件的完整路径。如果粗体(bold)或斜体(italic)设置为true,则将尝试查找正确的字体系列。
gloomy
字体名实际上可以是⼀个逗号分隔的字体名列表。如果没有找到给定的名称,则不返回任何名称。
pygame.font.SysFont()
hou of cards
功能:从系统字体创建字体对象
属性:SysFont(name, size, bold=Fal, italic=Fal) -> Font
返回从系统字体加载的新字体对象。字体将与请求的粗体和斜体标志匹配。如果找不到合适的系统字体,这将取决于加载默认的pygame字体。字体名可以是要查找的以逗号分隔的字体名列表。
pygame.font.Font
功能:从⽂件创建新字体对象
属性:
Font(filename, size) -> Font
Font(object, size) -> Font
从给定的⽂件名或python⽂件对象加载新字体。⼤⼩是字体的⾼度(以像素为单位)。如果⽂件名为None,则将加载pygame默认字体。如果⽆法从参数加载字体,将引发异常。⼀旦字体被创建,⼤⼩就不能改变。
字体对象主要⽤于将⽂本呈现为新的Surface对象。渲染可以模拟粗体或斜体功能,但最好从具有实际斜体或粗体标志符号的字体加载。呈现的⽂本可以是常规字符串或unicode。
pygame.der()
功能:在新Surface上绘制⽂本
属性:render(text, antialias, color, background=None) -> Surface
创建⼀个新Surface,并在其上呈现指定的⽂本。pygame不提供直接在现有surface上绘制⽂本的⽅法:若要创建⽂本的图像(Surface)必须使⽤ der(),然后将此图像blit到另⼀个surface上。
⽂本只能是单独⼀⾏:换⾏符不能呈现。空字符('x00') 会引发TypeError。Unicode和字符(byte)字符串都可以。对于Unicode字符串,只能识别UCS-2字符('u0001' to 'uFFFF')。任何更⼤的值都会引发UnicodeError。对于字符字符串,假定采⽤ LATIN1 编码。抗锯齿参数(antialias)是布尔值:如果为真,字符将具有平滑的边。颜⾊参数是⽂本的颜⾊[例如:(0,0255)表⽰蓝⾊]。可选的背景参数是⽤于⽂本背景的颜⾊。如果没有传递背景,⽂本外部的区域将是透明的。长春韩语培训
返回的Surface应保存⽂本所需尺⼨。(与Font.size()⼀致)。如果为⽂本传递空字符串,则将返回零像素宽和⾼的空⽩surface。
根据背景和抗锯齿使⽤的类型,返回不同类型的曲⾯。出于性能原因,最好知道将使⽤哪种类型的图像。如果不使⽤抗锯齿,则返回图像将始终是带有双调⾊板的8-bit图像。如果背景是透明的,则设置colorkey。抗锯齿图像被渲染为24-bit RGB图像。如果背景是透明的,将包括像素alpha。
优化:
如果已知⽂本的最终⽬标(在屏幕上)将始终有⼀个实⼼的背景,并且⽂本是抗锯齿的,则可以通过指定背景颜⾊来提⾼性能。这将导致⽣成的图像通过colorkey值⽽不是alpha值来维护透明度信息。
如果呈现'\n',将呈现未知字符,通常是⼀个长⽅形。需要⾃⼰处理。
字体呈现不是线程安全的:任何时候只有⼀个线程可以呈现⽂本。
pygame.font.Font.size()
功能:确定呈现⽂本所需的空间量
属性:size(text) -> (width, height)
waffle返回呈现⽂本所需的维度。这可⽤于帮助确定⽂本在呈现之前所需的位置。它还可以⽤于换⾏和其他布局效果。
请注意,⼤多数字体使⽤字距调整来调整特定字母对的宽度。例如,“ae”的宽度并不总是与“a”“e”的宽度匹配。
pygame.font.Font.t_underline()
功能:控制⽂本是否⽤下划线呈现
属性:t_underline(bool) -> None
启⽤后,所有呈现的字体都将包含下划线。⽆论字体⼤⼩,下划线总是⼀个像素厚。可以与粗体和斜体模式混合使⽤。
pygame._underline()
功能:检查⽂本是否将⽤下划线呈现【启⽤字体下划线时返回True】
属性:get_underline() -> bool
donic
pygame.font.Font.t_bold()
功能:启⽤⽂本的粗体呈现
属性:t_bold(bool) -> None
是对字体的假拉伸。在许多字体类型上看起来不太好。如果可能,从真正的粗体字体⽂件加载字体。粗体字体的宽度将与正常字体的宽度不同。可以与斜体和下划线模式混合使⽤。
pygame._bold()
功能:检查⽂本是否显⽰为粗体【启⽤字体粗体呈现模式时返回True】
属性:get_bold() -> bool
keyrverpygame.font.Font.t_italic()
功能:启⽤⽂本的斜体呈现
t_italic(bool) -> None
是⼀个伪造的字体倾斜。在许多字体类型上看起来不太好。如果可能的话,从⼀个真正的斜体字体⽂件加载字体。斜体字体的宽度将不同于普通字体。可以与粗体和下划线模式混合使⽤。
pygame.ics()
哈尔滨新东方功能:获取传递字符串中每个字符的度量
属性:metrics(text) -> list
该列表包含每个字符的元组,其中包含字符的最⼩X偏移量、最⼤X偏移量、最⼩Y偏移量、最⼤Y偏移量和前进偏移量(⽅向⾓加宽度)。[(minx, maxx, miny, maxy, advance), (minx, maxx, miny, maxy, advance), ...]。列表中为每个⽆法识别的字符输⼊None。
pygame._italic()
功能:检查⽂本是否将呈现为斜体
属性:get_italic() -> bool
启⽤字体斜体呈现模式时返回True。
pygame._linesize()
功能:获取字体⽂本的⾏间距
属性:get_linesize() -> inthurricane sandy
返回带有字体的⽂本⾏的⾼度(以像素为单位)。当呈现多⾏⽂本时,这是⾏间距的建议值(recom
mended amount)。 pygame._height()
功能:获取字体的⾼度
责任演讲稿
属性:get_height() -> int
返回实际⽂本的⾼度(以像素为单位)。这是字体中每个字形的平均⼤⼩。
pygame._ascent()
功能:获取字体的上升⾼度
属性:get_ascent() -> int
返回字体上升的⾼度(以像素为单位)。上升⾼度是从字体基线到字体顶部的像素数。