跳到主要内容

DynamicFont

继承

Font

简要描述

DynamicFont在运行时呈现矢量字体文件。

描述

DynamicFont在运行时动态地渲染矢量字体文件(例如TTF或OTF),而不是使用诸如BitmapFont之类的预渲染纹理图集。这需要用BitmapFont的更快加载时间来换取在运行时更改字体参数(如大小和间距)的能力。

DynamicFontData用于引用字体文件路径。DynamicFont还支持定义一种或多种后备字体,这些字体将在显示主字体不支持的字符时使用。

DynamicFont使用[url=https://www.freetype.org/]FreeType[/url]库进行栅格化。

var dynamic_font = DynamicFont.new()
dynamic_font.font_data = load("res://BarlowCondensed-Bold.ttf")
dynamic_font.size = 64
$"Label".set("custom_fonts/font", dynamic_font)

成员

类型属性名默认值
intextra_spacing_bottom0
intextra_spacing_char0
intextra_spacing_space0
intextra_spacing_top0
DynamicFontDatafont_data
Coloroutline_colorColor( 1, 1, 1, 1 )
intoutline_size0
intsize16
booluse_filterfalse
booluse_mipmapsfalse

方法

返回值类型方法名称
voidadd_fallback(data: DynamicFontData)
DynamicFontDataget_fallback(idx: int) const
intget_fallback_count() const
intget_spacing(type: int) const
voidremove_fallback(idx: int)
voidset_fallback(idx: int, data: DynamicFontData)
voidset_spacing(type: int, value: int)

枚举

enum SpacingType:

  • **SPACING_TOP = 0**

顶部间距。

  • **SPACING_BOTTOM = 1**

底部间距。

  • **SPACING_CHAR = 2**

字符间距。

  • **SPACING_SPACE = 3**

空格字符间距。


常量

成员说明

  • int extra_spacing_bottom
Default0
setterset_spacing(value)
getterget_spacing
  • int extra_spacing_char
Default0
setterset_spacing(value)
getterget_spacing
  • int extra_spacing_space
Default0
setterset_spacing(value)
getterget_spacing
  • int extra_spacing_top
Default0
setterset_spacing(value)
getterget_spacing
  • DynamicFontData font_data
setterset_font_data(value)
getterget_font_data
  • Color outline_color
DefaultColor( 1, 1, 1, 1 )
setterset_outline_color(value)
getterget_outline_color
  • int outline_size
Default0
setterset_outline_size(value)
getterget_outline_size
  • int size
Default16
setterset_size(value)
getterget_size
  • bool use_filter
Defaultfalse
setterset_use_filter(value)
getterget_use_filter
  • bool use_mipmaps
Defaultfalse
setterset_use_mipmaps(value)
getterget_use_mipmaps

方法说明

  • add_fallback add_fallback(data: DynamicFontData)

添加后备字体。


  • get_fallback get_fallback(idx: int) const

返回后备字体的索引idx


  • get_fallback_count get_fallback_count() const

返回后备字体的数量。


  • get_spacing get_spacing(type: int) const

返回给定type的间距(见SpacingType)。


  • remove_fallback remove_fallback(idx: int)

删除索引为idx的后备字体。


  • set_fallback set_fallback(idx: int, data: DynamicFontData)

在索引idx处设置后备字体。


  • set_spacing set_spacing(type: int, value: int)

type(见SpacingType)的间距设置为以value像素为单位(与字体大小无关)。