Pygame编程(10)freetype模块

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

Pygame编程(10)freetype模块_第1张图片

你可能感兴趣的:(Pygame,pygame)