Class reference
SystemFont
Inherits Font
A font loaded from a system font. Falls back to a default theme font if not implemented on the host OS.
Description
SystemFont loads a font from a system font with the first matching name from font_names. It will attempt to match font style, but it's not guaranteed. The returned font might be part of a font collection or be a variable font with OpenType "weight", "width" and/or "italic" features set. You can create FontVariation of the system font for precise control over its features. Note: This class is implemented on iOS, Linux, macOS and Windows, on other platforms it will fallback to default theme font.
Properties
bool allow_system_fallback = true
bool allow_system_fallback = trueIf set to true, system fonts can be automatically used as fallbacks.
int antialiasing = 1
int antialiasing = 1Font anti-aliasing mode.
bool disable_embedded_bitmaps = true
bool disable_embedded_bitmaps = trueIf set to true, embedded font bitmap loading is disabled (bitmap-only and color fonts ignore this property).
bool font_italic = false
bool font_italic = falseIf set to true, italic or oblique font is preferred.
PackedStringArray font_names = PackedStringArray()
PackedStringArray font_names = PackedStringArray()Array of font family names to search, first matching font found is used.
int font_stretch = 100
int font_stretch = 100Preferred font stretch amount, compared to a normal width. A percentage value between 50% and 200%.
int font_weight = 400
int font_weight = 400Preferred weight (boldness) of the font. A value in the 100...999 range, normal font weight is 400, bold font weight is 700.
bool force_autohinter = false
bool force_autohinter = falseIf set to true, auto-hinting is supported and preferred over font built-in hinting.
bool generate_mipmaps = false
bool generate_mipmaps = falseIf set to true, generate mipmaps for the font textures.
int hinting = 1
int hinting = 1Font hinting mode.
bool keep_rounding_remainders = true
bool keep_rounding_remainders = trueIf set to true, when aligning glyphs to the pixel boundaries rounding remainders are accumulated to ensure more uniform glyph distribution. This setting has no effect if subpixel positioning is enabled.
bool modulate_color_glyphs = false
bool modulate_color_glyphs = falseIf set to true, color modulation is applied when drawing colored glyphs, otherwise it's applied to the monochrome glyphs only.
int msdf_pixel_range = 16
int msdf_pixel_range = 16The width of the range around the shape between the minimum and maximum representable signed distance. If using font outlines, msdf_pixel_range must be set to at least twice the size of the largest font outline. The default msdf_pixel_range value of 16 allows outline sizes up to 8 to look correct.
int msdf_size = 48
int msdf_size = 48Source font size used to generate MSDF textures. Higher values allow for more precision, but are slower to render and require more memory. Only increase this value if you notice a visible lack of precision in glyph rendering.
bool multichannel_signed_distance_field = false
bool multichannel_signed_distance_field = falseIf set to true, glyphs of all sizes are rendered using single multichannel signed distance field generated from the dynamic font vector data.
float oversampling = 0.0
float oversampling = 0.0If set to a positive value, overrides the oversampling factor of the viewport this font is used in. See Viewport.oversampling. This value doesn't override the [code skip-lint]oversampling[/code] parameter of [code skip-lint]draw_*[/code] methods.
int subpixel_positioning = 1
int subpixel_positioning = 1Font glyph subpixel positioning mode. Subpixel positioning provides shaper text and better kerning for smaller font sizes, at the cost of memory usage and font rasterization speed. Use TextServer.SUBPIXEL_POSITIONING_AUTO to automatically enable it based on the font size.