class_fontfile.rst 92 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444
  1. :github_url: hide
  2. .. DO NOT EDIT THIS FILE!!!
  3. .. Generated automatically from Godot engine sources.
  4. .. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py.
  5. .. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/FontFile.xml.
  6. .. _class_FontFile:
  7. FontFile
  8. ========
  9. **Inherits:** :ref:`Font<class_Font>` **<** :ref:`Resource<class_Resource>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
  10. Holds font source data and prerendered glyph cache, imported from a dynamic or a bitmap font.
  11. .. rst-class:: classref-introduction-group
  12. Description
  13. -----------
  14. **FontFile** contains a set of glyphs to represent Unicode characters imported from a font file, as well as a cache of rasterized glyphs, and a set of fallback :ref:`Font<class_Font>`\ s to use.
  15. Use :ref:`FontVariation<class_FontVariation>` to access specific OpenType variation of the font, create simulated bold / slanted version, and draw lines of text.
  16. For more complex text processing, use :ref:`FontVariation<class_FontVariation>` in conjunction with :ref:`TextLine<class_TextLine>` or :ref:`TextParagraph<class_TextParagraph>`.
  17. Supported font formats:
  18. - Dynamic font importer: TrueType (.ttf), TrueType collection (.ttc), OpenType (.otf), OpenType collection (.otc), WOFF (.woff), WOFF2 (.woff2), Type 1 (.pfb, .pfm).
  19. - Bitmap font importer: AngelCode BMFont (.fnt, .font), text and binary (version 3) format variants.
  20. - Monospace image font importer: All supported image formats.
  21. \ **Note:** A character is a symbol that represents an item (letter, digit etc.) in an abstract way.
  22. \ **Note:** A glyph is a bitmap or a shape used to draw one or more characters in a context-dependent manner. Glyph indices are bound to the specific font data source.
  23. \ **Note:** If none of the font data sources contain glyphs for a character used in a string, the character in question will be replaced with a box displaying its hexadecimal code.
  24. .. tabs::
  25. .. code-tab:: gdscript
  26. var f = load("res://BarlowCondensed-Bold.ttf")
  27. $Label.add_theme_font_override("font", f)
  28. $Label.add_theme_font_size_override("font_size", 64)
  29. .. code-tab:: csharp
  30. var f = ResourceLoader.Load<FontFile>("res://BarlowCondensed-Bold.ttf");
  31. GetNode("Label").AddThemeFontOverride("font", f);
  32. GetNode("Label").AddThemeFontSizeOverride("font_size", 64);
  33. .. rst-class:: classref-introduction-group
  34. Tutorials
  35. ---------
  36. - :doc:`Runtime file loading and saving <../tutorials/io/runtime_file_loading_and_saving>`
  37. .. rst-class:: classref-reftable-group
  38. Properties
  39. ----------
  40. .. table::
  41. :widths: auto
  42. +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+
  43. | :ref:`bool<class_bool>` | :ref:`allow_system_fallback<class_FontFile_property_allow_system_fallback>` | ``true`` |
  44. +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+
  45. | :ref:`FontAntialiasing<enum_TextServer_FontAntialiasing>` | :ref:`antialiasing<class_FontFile_property_antialiasing>` | ``1`` |
  46. +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+
  47. | :ref:`PackedByteArray<class_PackedByteArray>` | :ref:`data<class_FontFile_property_data>` | ``PackedByteArray()`` |
  48. +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+
  49. | :ref:`bool<class_bool>` | :ref:`disable_embedded_bitmaps<class_FontFile_property_disable_embedded_bitmaps>` | ``true`` |
  50. +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+
  51. | :ref:`int<class_int>` | :ref:`fixed_size<class_FontFile_property_fixed_size>` | ``0`` |
  52. +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+
  53. | :ref:`FixedSizeScaleMode<enum_TextServer_FixedSizeScaleMode>` | :ref:`fixed_size_scale_mode<class_FontFile_property_fixed_size_scale_mode>` | ``0`` |
  54. +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+
  55. | :ref:`String<class_String>` | :ref:`font_name<class_FontFile_property_font_name>` | ``""`` |
  56. +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+
  57. | :ref:`int<class_int>` | :ref:`font_stretch<class_FontFile_property_font_stretch>` | ``100`` |
  58. +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+
  59. | |bitfield|\[:ref:`FontStyle<enum_TextServer_FontStyle>`\] | :ref:`font_style<class_FontFile_property_font_style>` | ``0`` |
  60. +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+
  61. | :ref:`int<class_int>` | :ref:`font_weight<class_FontFile_property_font_weight>` | ``400`` |
  62. +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+
  63. | :ref:`bool<class_bool>` | :ref:`force_autohinter<class_FontFile_property_force_autohinter>` | ``false`` |
  64. +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+
  65. | :ref:`bool<class_bool>` | :ref:`generate_mipmaps<class_FontFile_property_generate_mipmaps>` | ``false`` |
  66. +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+
  67. | :ref:`Hinting<enum_TextServer_Hinting>` | :ref:`hinting<class_FontFile_property_hinting>` | ``1`` |
  68. +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+
  69. | :ref:`int<class_int>` | :ref:`msdf_pixel_range<class_FontFile_property_msdf_pixel_range>` | ``16`` |
  70. +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+
  71. | :ref:`int<class_int>` | :ref:`msdf_size<class_FontFile_property_msdf_size>` | ``48`` |
  72. +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+
  73. | :ref:`bool<class_bool>` | :ref:`multichannel_signed_distance_field<class_FontFile_property_multichannel_signed_distance_field>` | ``false`` |
  74. +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+
  75. | :ref:`Dictionary<class_Dictionary>` | :ref:`opentype_feature_overrides<class_FontFile_property_opentype_feature_overrides>` | ``{}`` |
  76. +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+
  77. | :ref:`float<class_float>` | :ref:`oversampling<class_FontFile_property_oversampling>` | ``0.0`` |
  78. +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+
  79. | :ref:`String<class_String>` | :ref:`style_name<class_FontFile_property_style_name>` | ``""`` |
  80. +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+
  81. | :ref:`SubpixelPositioning<enum_TextServer_SubpixelPositioning>` | :ref:`subpixel_positioning<class_FontFile_property_subpixel_positioning>` | ``1`` |
  82. +-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+
  83. .. rst-class:: classref-reftable-group
  84. Methods
  85. -------
  86. .. table::
  87. :widths: auto
  88. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  89. | |void| | :ref:`clear_cache<class_FontFile_method_clear_cache>`\ (\ ) |
  90. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  91. | |void| | :ref:`clear_glyphs<class_FontFile_method_clear_glyphs>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`\ ) |
  92. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  93. | |void| | :ref:`clear_kerning_map<class_FontFile_method_clear_kerning_map>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`int<class_int>`\ ) |
  94. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  95. | |void| | :ref:`clear_size_cache<class_FontFile_method_clear_size_cache>`\ (\ cache_index\: :ref:`int<class_int>`\ ) |
  96. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  97. | |void| | :ref:`clear_textures<class_FontFile_method_clear_textures>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`\ ) |
  98. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  99. | :ref:`float<class_float>` | :ref:`get_cache_ascent<class_FontFile_method_get_cache_ascent>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`int<class_int>`\ ) |const| |
  100. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  101. | :ref:`int<class_int>` | :ref:`get_cache_count<class_FontFile_method_get_cache_count>`\ (\ ) |const| |
  102. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  103. | :ref:`float<class_float>` | :ref:`get_cache_descent<class_FontFile_method_get_cache_descent>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`int<class_int>`\ ) |const| |
  104. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  105. | :ref:`float<class_float>` | :ref:`get_cache_scale<class_FontFile_method_get_cache_scale>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`int<class_int>`\ ) |const| |
  106. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  107. | :ref:`float<class_float>` | :ref:`get_cache_underline_position<class_FontFile_method_get_cache_underline_position>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`int<class_int>`\ ) |const| |
  108. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  109. | :ref:`float<class_float>` | :ref:`get_cache_underline_thickness<class_FontFile_method_get_cache_underline_thickness>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`int<class_int>`\ ) |const| |
  110. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  111. | :ref:`int<class_int>` | :ref:`get_char_from_glyph_index<class_FontFile_method_get_char_from_glyph_index>`\ (\ size\: :ref:`int<class_int>`, glyph_index\: :ref:`int<class_int>`\ ) |const| |
  112. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  113. | :ref:`float<class_float>` | :ref:`get_embolden<class_FontFile_method_get_embolden>`\ (\ cache_index\: :ref:`int<class_int>`\ ) |const| |
  114. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  115. | :ref:`float<class_float>` | :ref:`get_extra_baseline_offset<class_FontFile_method_get_extra_baseline_offset>`\ (\ cache_index\: :ref:`int<class_int>`\ ) |const| |
  116. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  117. | :ref:`int<class_int>` | :ref:`get_extra_spacing<class_FontFile_method_get_extra_spacing>`\ (\ cache_index\: :ref:`int<class_int>`, spacing\: :ref:`SpacingType<enum_TextServer_SpacingType>`\ ) |const| |
  118. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  119. | :ref:`int<class_int>` | :ref:`get_face_index<class_FontFile_method_get_face_index>`\ (\ cache_index\: :ref:`int<class_int>`\ ) |const| |
  120. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  121. | :ref:`Vector2<class_Vector2>` | :ref:`get_glyph_advance<class_FontFile_method_get_glyph_advance>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`int<class_int>`, glyph\: :ref:`int<class_int>`\ ) |const| |
  122. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  123. | :ref:`int<class_int>` | :ref:`get_glyph_index<class_FontFile_method_get_glyph_index>`\ (\ size\: :ref:`int<class_int>`, char\: :ref:`int<class_int>`, variation_selector\: :ref:`int<class_int>`\ ) |const| |
  124. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  125. | :ref:`PackedInt32Array<class_PackedInt32Array>` | :ref:`get_glyph_list<class_FontFile_method_get_glyph_list>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`\ ) |const| |
  126. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  127. | :ref:`Vector2<class_Vector2>` | :ref:`get_glyph_offset<class_FontFile_method_get_glyph_offset>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`, glyph\: :ref:`int<class_int>`\ ) |const| |
  128. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  129. | :ref:`Vector2<class_Vector2>` | :ref:`get_glyph_size<class_FontFile_method_get_glyph_size>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`, glyph\: :ref:`int<class_int>`\ ) |const| |
  130. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  131. | :ref:`int<class_int>` | :ref:`get_glyph_texture_idx<class_FontFile_method_get_glyph_texture_idx>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`, glyph\: :ref:`int<class_int>`\ ) |const| |
  132. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  133. | :ref:`Rect2<class_Rect2>` | :ref:`get_glyph_uv_rect<class_FontFile_method_get_glyph_uv_rect>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`, glyph\: :ref:`int<class_int>`\ ) |const| |
  134. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  135. | :ref:`Vector2<class_Vector2>` | :ref:`get_kerning<class_FontFile_method_get_kerning>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`int<class_int>`, glyph_pair\: :ref:`Vector2i<class_Vector2i>`\ ) |const| |
  136. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  137. | :ref:`Array<class_Array>`\[:ref:`Vector2i<class_Vector2i>`\] | :ref:`get_kerning_list<class_FontFile_method_get_kerning_list>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`int<class_int>`\ ) |const| |
  138. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  139. | :ref:`bool<class_bool>` | :ref:`get_language_support_override<class_FontFile_method_get_language_support_override>`\ (\ language\: :ref:`String<class_String>`\ ) |const| |
  140. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  141. | :ref:`PackedStringArray<class_PackedStringArray>` | :ref:`get_language_support_overrides<class_FontFile_method_get_language_support_overrides>`\ (\ ) |const| |
  142. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  143. | :ref:`bool<class_bool>` | :ref:`get_script_support_override<class_FontFile_method_get_script_support_override>`\ (\ script\: :ref:`String<class_String>`\ ) |const| |
  144. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  145. | :ref:`PackedStringArray<class_PackedStringArray>` | :ref:`get_script_support_overrides<class_FontFile_method_get_script_support_overrides>`\ (\ ) |const| |
  146. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  147. | :ref:`Array<class_Array>`\[:ref:`Vector2i<class_Vector2i>`\] | :ref:`get_size_cache_list<class_FontFile_method_get_size_cache_list>`\ (\ cache_index\: :ref:`int<class_int>`\ ) |const| |
  148. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  149. | :ref:`int<class_int>` | :ref:`get_texture_count<class_FontFile_method_get_texture_count>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`\ ) |const| |
  150. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  151. | :ref:`Image<class_Image>` | :ref:`get_texture_image<class_FontFile_method_get_texture_image>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`, texture_index\: :ref:`int<class_int>`\ ) |const| |
  152. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  153. | :ref:`PackedInt32Array<class_PackedInt32Array>` | :ref:`get_texture_offsets<class_FontFile_method_get_texture_offsets>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`, texture_index\: :ref:`int<class_int>`\ ) |const| |
  154. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  155. | :ref:`Transform2D<class_Transform2D>` | :ref:`get_transform<class_FontFile_method_get_transform>`\ (\ cache_index\: :ref:`int<class_int>`\ ) |const| |
  156. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  157. | :ref:`Dictionary<class_Dictionary>` | :ref:`get_variation_coordinates<class_FontFile_method_get_variation_coordinates>`\ (\ cache_index\: :ref:`int<class_int>`\ ) |const| |
  158. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  159. | :ref:`Error<enum_@GlobalScope_Error>` | :ref:`load_bitmap_font<class_FontFile_method_load_bitmap_font>`\ (\ path\: :ref:`String<class_String>`\ ) |
  160. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  161. | :ref:`Error<enum_@GlobalScope_Error>` | :ref:`load_dynamic_font<class_FontFile_method_load_dynamic_font>`\ (\ path\: :ref:`String<class_String>`\ ) |
  162. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  163. | |void| | :ref:`remove_cache<class_FontFile_method_remove_cache>`\ (\ cache_index\: :ref:`int<class_int>`\ ) |
  164. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  165. | |void| | :ref:`remove_glyph<class_FontFile_method_remove_glyph>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`, glyph\: :ref:`int<class_int>`\ ) |
  166. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  167. | |void| | :ref:`remove_kerning<class_FontFile_method_remove_kerning>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`int<class_int>`, glyph_pair\: :ref:`Vector2i<class_Vector2i>`\ ) |
  168. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  169. | |void| | :ref:`remove_language_support_override<class_FontFile_method_remove_language_support_override>`\ (\ language\: :ref:`String<class_String>`\ ) |
  170. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  171. | |void| | :ref:`remove_script_support_override<class_FontFile_method_remove_script_support_override>`\ (\ script\: :ref:`String<class_String>`\ ) |
  172. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  173. | |void| | :ref:`remove_size_cache<class_FontFile_method_remove_size_cache>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`\ ) |
  174. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  175. | |void| | :ref:`remove_texture<class_FontFile_method_remove_texture>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`, texture_index\: :ref:`int<class_int>`\ ) |
  176. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  177. | |void| | :ref:`render_glyph<class_FontFile_method_render_glyph>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`, index\: :ref:`int<class_int>`\ ) |
  178. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  179. | |void| | :ref:`render_range<class_FontFile_method_render_range>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`, start\: :ref:`int<class_int>`, end\: :ref:`int<class_int>`\ ) |
  180. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  181. | |void| | :ref:`set_cache_ascent<class_FontFile_method_set_cache_ascent>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`int<class_int>`, ascent\: :ref:`float<class_float>`\ ) |
  182. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  183. | |void| | :ref:`set_cache_descent<class_FontFile_method_set_cache_descent>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`int<class_int>`, descent\: :ref:`float<class_float>`\ ) |
  184. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  185. | |void| | :ref:`set_cache_scale<class_FontFile_method_set_cache_scale>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`int<class_int>`, scale\: :ref:`float<class_float>`\ ) |
  186. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  187. | |void| | :ref:`set_cache_underline_position<class_FontFile_method_set_cache_underline_position>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`int<class_int>`, underline_position\: :ref:`float<class_float>`\ ) |
  188. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  189. | |void| | :ref:`set_cache_underline_thickness<class_FontFile_method_set_cache_underline_thickness>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`int<class_int>`, underline_thickness\: :ref:`float<class_float>`\ ) |
  190. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  191. | |void| | :ref:`set_embolden<class_FontFile_method_set_embolden>`\ (\ cache_index\: :ref:`int<class_int>`, strength\: :ref:`float<class_float>`\ ) |
  192. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  193. | |void| | :ref:`set_extra_baseline_offset<class_FontFile_method_set_extra_baseline_offset>`\ (\ cache_index\: :ref:`int<class_int>`, baseline_offset\: :ref:`float<class_float>`\ ) |
  194. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  195. | |void| | :ref:`set_extra_spacing<class_FontFile_method_set_extra_spacing>`\ (\ cache_index\: :ref:`int<class_int>`, spacing\: :ref:`SpacingType<enum_TextServer_SpacingType>`, value\: :ref:`int<class_int>`\ ) |
  196. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  197. | |void| | :ref:`set_face_index<class_FontFile_method_set_face_index>`\ (\ cache_index\: :ref:`int<class_int>`, face_index\: :ref:`int<class_int>`\ ) |
  198. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  199. | |void| | :ref:`set_glyph_advance<class_FontFile_method_set_glyph_advance>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`int<class_int>`, glyph\: :ref:`int<class_int>`, advance\: :ref:`Vector2<class_Vector2>`\ ) |
  200. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  201. | |void| | :ref:`set_glyph_offset<class_FontFile_method_set_glyph_offset>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`, glyph\: :ref:`int<class_int>`, offset\: :ref:`Vector2<class_Vector2>`\ ) |
  202. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  203. | |void| | :ref:`set_glyph_size<class_FontFile_method_set_glyph_size>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`, glyph\: :ref:`int<class_int>`, gl_size\: :ref:`Vector2<class_Vector2>`\ ) |
  204. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  205. | |void| | :ref:`set_glyph_texture_idx<class_FontFile_method_set_glyph_texture_idx>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`, glyph\: :ref:`int<class_int>`, texture_idx\: :ref:`int<class_int>`\ ) |
  206. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  207. | |void| | :ref:`set_glyph_uv_rect<class_FontFile_method_set_glyph_uv_rect>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`, glyph\: :ref:`int<class_int>`, uv_rect\: :ref:`Rect2<class_Rect2>`\ ) |
  208. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  209. | |void| | :ref:`set_kerning<class_FontFile_method_set_kerning>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`int<class_int>`, glyph_pair\: :ref:`Vector2i<class_Vector2i>`, kerning\: :ref:`Vector2<class_Vector2>`\ ) |
  210. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  211. | |void| | :ref:`set_language_support_override<class_FontFile_method_set_language_support_override>`\ (\ language\: :ref:`String<class_String>`, supported\: :ref:`bool<class_bool>`\ ) |
  212. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  213. | |void| | :ref:`set_script_support_override<class_FontFile_method_set_script_support_override>`\ (\ script\: :ref:`String<class_String>`, supported\: :ref:`bool<class_bool>`\ ) |
  214. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  215. | |void| | :ref:`set_texture_image<class_FontFile_method_set_texture_image>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`, texture_index\: :ref:`int<class_int>`, image\: :ref:`Image<class_Image>`\ ) |
  216. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  217. | |void| | :ref:`set_texture_offsets<class_FontFile_method_set_texture_offsets>`\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`, texture_index\: :ref:`int<class_int>`, offset\: :ref:`PackedInt32Array<class_PackedInt32Array>`\ ) |
  218. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  219. | |void| | :ref:`set_transform<class_FontFile_method_set_transform>`\ (\ cache_index\: :ref:`int<class_int>`, transform\: :ref:`Transform2D<class_Transform2D>`\ ) |
  220. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  221. | |void| | :ref:`set_variation_coordinates<class_FontFile_method_set_variation_coordinates>`\ (\ cache_index\: :ref:`int<class_int>`, variation_coordinates\: :ref:`Dictionary<class_Dictionary>`\ ) |
  222. +--------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  223. .. rst-class:: classref-section-separator
  224. ----
  225. .. rst-class:: classref-descriptions-group
  226. Property Descriptions
  227. ---------------------
  228. .. _class_FontFile_property_allow_system_fallback:
  229. .. rst-class:: classref-property
  230. :ref:`bool<class_bool>` **allow_system_fallback** = ``true`` :ref:`๐Ÿ”—<class_FontFile_property_allow_system_fallback>`
  231. .. rst-class:: classref-property-setget
  232. - |void| **set_allow_system_fallback**\ (\ value\: :ref:`bool<class_bool>`\ )
  233. - :ref:`bool<class_bool>` **is_allow_system_fallback**\ (\ )
  234. If set to ``true``, system fonts can be automatically used as fallbacks.
  235. .. rst-class:: classref-item-separator
  236. ----
  237. .. _class_FontFile_property_antialiasing:
  238. .. rst-class:: classref-property
  239. :ref:`FontAntialiasing<enum_TextServer_FontAntialiasing>` **antialiasing** = ``1`` :ref:`๐Ÿ”—<class_FontFile_property_antialiasing>`
  240. .. rst-class:: classref-property-setget
  241. - |void| **set_antialiasing**\ (\ value\: :ref:`FontAntialiasing<enum_TextServer_FontAntialiasing>`\ )
  242. - :ref:`FontAntialiasing<enum_TextServer_FontAntialiasing>` **get_antialiasing**\ (\ )
  243. Font anti-aliasing mode.
  244. .. rst-class:: classref-item-separator
  245. ----
  246. .. _class_FontFile_property_data:
  247. .. rst-class:: classref-property
  248. :ref:`PackedByteArray<class_PackedByteArray>` **data** = ``PackedByteArray()`` :ref:`๐Ÿ”—<class_FontFile_property_data>`
  249. .. rst-class:: classref-property-setget
  250. - |void| **set_data**\ (\ value\: :ref:`PackedByteArray<class_PackedByteArray>`\ )
  251. - :ref:`PackedByteArray<class_PackedByteArray>` **get_data**\ (\ )
  252. Contents of the dynamic font source file.
  253. **Note:** The returned array is *copied* and any changes to it will not update the original property value. See :ref:`PackedByteArray<class_PackedByteArray>` for more details.
  254. .. rst-class:: classref-item-separator
  255. ----
  256. .. _class_FontFile_property_disable_embedded_bitmaps:
  257. .. rst-class:: classref-property
  258. :ref:`bool<class_bool>` **disable_embedded_bitmaps** = ``true`` :ref:`๐Ÿ”—<class_FontFile_property_disable_embedded_bitmaps>`
  259. .. rst-class:: classref-property-setget
  260. - |void| **set_disable_embedded_bitmaps**\ (\ value\: :ref:`bool<class_bool>`\ )
  261. - :ref:`bool<class_bool>` **get_disable_embedded_bitmaps**\ (\ )
  262. If set to ``true``, embedded font bitmap loading is disabled (bitmap-only and color fonts ignore this property).
  263. .. rst-class:: classref-item-separator
  264. ----
  265. .. _class_FontFile_property_fixed_size:
  266. .. rst-class:: classref-property
  267. :ref:`int<class_int>` **fixed_size** = ``0`` :ref:`๐Ÿ”—<class_FontFile_property_fixed_size>`
  268. .. rst-class:: classref-property-setget
  269. - |void| **set_fixed_size**\ (\ value\: :ref:`int<class_int>`\ )
  270. - :ref:`int<class_int>` **get_fixed_size**\ (\ )
  271. Font size, used only for the bitmap fonts.
  272. .. rst-class:: classref-item-separator
  273. ----
  274. .. _class_FontFile_property_fixed_size_scale_mode:
  275. .. rst-class:: classref-property
  276. :ref:`FixedSizeScaleMode<enum_TextServer_FixedSizeScaleMode>` **fixed_size_scale_mode** = ``0`` :ref:`๐Ÿ”—<class_FontFile_property_fixed_size_scale_mode>`
  277. .. rst-class:: classref-property-setget
  278. - |void| **set_fixed_size_scale_mode**\ (\ value\: :ref:`FixedSizeScaleMode<enum_TextServer_FixedSizeScaleMode>`\ )
  279. - :ref:`FixedSizeScaleMode<enum_TextServer_FixedSizeScaleMode>` **get_fixed_size_scale_mode**\ (\ )
  280. Scaling mode, used only for the bitmap fonts with :ref:`fixed_size<class_FontFile_property_fixed_size>` greater than zero.
  281. .. rst-class:: classref-item-separator
  282. ----
  283. .. _class_FontFile_property_font_name:
  284. .. rst-class:: classref-property
  285. :ref:`String<class_String>` **font_name** = ``""`` :ref:`๐Ÿ”—<class_FontFile_property_font_name>`
  286. .. rst-class:: classref-property-setget
  287. - |void| **set_font_name**\ (\ value\: :ref:`String<class_String>`\ )
  288. - :ref:`String<class_String>` **get_font_name**\ (\ )
  289. Font family name.
  290. .. rst-class:: classref-item-separator
  291. ----
  292. .. _class_FontFile_property_font_stretch:
  293. .. rst-class:: classref-property
  294. :ref:`int<class_int>` **font_stretch** = ``100`` :ref:`๐Ÿ”—<class_FontFile_property_font_stretch>`
  295. .. rst-class:: classref-property-setget
  296. - |void| **set_font_stretch**\ (\ value\: :ref:`int<class_int>`\ )
  297. - :ref:`int<class_int>` **get_font_stretch**\ (\ )
  298. Font stretch amount, compared to a normal width. A percentage value between ``50%`` and ``200%``.
  299. .. rst-class:: classref-item-separator
  300. ----
  301. .. _class_FontFile_property_font_style:
  302. .. rst-class:: classref-property
  303. |bitfield|\[:ref:`FontStyle<enum_TextServer_FontStyle>`\] **font_style** = ``0`` :ref:`๐Ÿ”—<class_FontFile_property_font_style>`
  304. .. rst-class:: classref-property-setget
  305. - |void| **set_font_style**\ (\ value\: |bitfield|\[:ref:`FontStyle<enum_TextServer_FontStyle>`\]\ )
  306. - |bitfield|\[:ref:`FontStyle<enum_TextServer_FontStyle>`\] **get_font_style**\ (\ )
  307. Font style flags, see :ref:`FontStyle<enum_TextServer_FontStyle>`.
  308. .. rst-class:: classref-item-separator
  309. ----
  310. .. _class_FontFile_property_font_weight:
  311. .. rst-class:: classref-property
  312. :ref:`int<class_int>` **font_weight** = ``400`` :ref:`๐Ÿ”—<class_FontFile_property_font_weight>`
  313. .. rst-class:: classref-property-setget
  314. - |void| **set_font_weight**\ (\ value\: :ref:`int<class_int>`\ )
  315. - :ref:`int<class_int>` **get_font_weight**\ (\ )
  316. Weight (boldness) of the font. A value in the ``100...999`` range, normal font weight is ``400``, bold font weight is ``700``.
  317. .. rst-class:: classref-item-separator
  318. ----
  319. .. _class_FontFile_property_force_autohinter:
  320. .. rst-class:: classref-property
  321. :ref:`bool<class_bool>` **force_autohinter** = ``false`` :ref:`๐Ÿ”—<class_FontFile_property_force_autohinter>`
  322. .. rst-class:: classref-property-setget
  323. - |void| **set_force_autohinter**\ (\ value\: :ref:`bool<class_bool>`\ )
  324. - :ref:`bool<class_bool>` **is_force_autohinter**\ (\ )
  325. If set to ``true``, auto-hinting is supported and preferred over font built-in hinting. Used by dynamic fonts only (MSDF fonts don't support hinting).
  326. .. rst-class:: classref-item-separator
  327. ----
  328. .. _class_FontFile_property_generate_mipmaps:
  329. .. rst-class:: classref-property
  330. :ref:`bool<class_bool>` **generate_mipmaps** = ``false`` :ref:`๐Ÿ”—<class_FontFile_property_generate_mipmaps>`
  331. .. rst-class:: classref-property-setget
  332. - |void| **set_generate_mipmaps**\ (\ value\: :ref:`bool<class_bool>`\ )
  333. - :ref:`bool<class_bool>` **get_generate_mipmaps**\ (\ )
  334. If set to ``true``, generate mipmaps for the font textures.
  335. .. rst-class:: classref-item-separator
  336. ----
  337. .. _class_FontFile_property_hinting:
  338. .. rst-class:: classref-property
  339. :ref:`Hinting<enum_TextServer_Hinting>` **hinting** = ``1`` :ref:`๐Ÿ”—<class_FontFile_property_hinting>`
  340. .. rst-class:: classref-property-setget
  341. - |void| **set_hinting**\ (\ value\: :ref:`Hinting<enum_TextServer_Hinting>`\ )
  342. - :ref:`Hinting<enum_TextServer_Hinting>` **get_hinting**\ (\ )
  343. Font hinting mode. Used by dynamic fonts only.
  344. .. rst-class:: classref-item-separator
  345. ----
  346. .. _class_FontFile_property_msdf_pixel_range:
  347. .. rst-class:: classref-property
  348. :ref:`int<class_int>` **msdf_pixel_range** = ``16`` :ref:`๐Ÿ”—<class_FontFile_property_msdf_pixel_range>`
  349. .. rst-class:: classref-property-setget
  350. - |void| **set_msdf_pixel_range**\ (\ value\: :ref:`int<class_int>`\ )
  351. - :ref:`int<class_int>` **get_msdf_pixel_range**\ (\ )
  352. The width of the range around the shape between the minimum and maximum representable signed distance. If using font outlines, :ref:`msdf_pixel_range<class_FontFile_property_msdf_pixel_range>` must be set to at least *twice* the size of the largest font outline. The default :ref:`msdf_pixel_range<class_FontFile_property_msdf_pixel_range>` value of ``16`` allows outline sizes up to ``8`` to look correct.
  353. .. rst-class:: classref-item-separator
  354. ----
  355. .. _class_FontFile_property_msdf_size:
  356. .. rst-class:: classref-property
  357. :ref:`int<class_int>` **msdf_size** = ``48`` :ref:`๐Ÿ”—<class_FontFile_property_msdf_size>`
  358. .. rst-class:: classref-property-setget
  359. - |void| **set_msdf_size**\ (\ value\: :ref:`int<class_int>`\ )
  360. - :ref:`int<class_int>` **get_msdf_size**\ (\ )
  361. Source 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.
  362. .. rst-class:: classref-item-separator
  363. ----
  364. .. _class_FontFile_property_multichannel_signed_distance_field:
  365. .. rst-class:: classref-property
  366. :ref:`bool<class_bool>` **multichannel_signed_distance_field** = ``false`` :ref:`๐Ÿ”—<class_FontFile_property_multichannel_signed_distance_field>`
  367. .. rst-class:: classref-property-setget
  368. - |void| **set_multichannel_signed_distance_field**\ (\ value\: :ref:`bool<class_bool>`\ )
  369. - :ref:`bool<class_bool>` **is_multichannel_signed_distance_field**\ (\ )
  370. If set to ``true``, glyphs of all sizes are rendered using single multichannel signed distance field (MSDF) generated from the dynamic font vector data. Since this approach does not rely on rasterizing the font every time its size changes, this allows for resizing the font in real-time without any performance penalty. Text will also not look grainy for :ref:`Control<class_Control>`\ s that are scaled down (or for :ref:`Label3D<class_Label3D>`\ s viewed from a long distance). As a downside, font hinting is not available with MSDF. The lack of font hinting may result in less crisp and less readable fonts at small sizes.
  371. \ **Note:** If using font outlines, :ref:`msdf_pixel_range<class_FontFile_property_msdf_pixel_range>` must be set to at least *twice* the size of the largest font outline.
  372. \ **Note:** MSDF font rendering does not render glyphs with overlapping shapes correctly. Overlapping shapes are not valid per the OpenType standard, but are still commonly found in many font files, especially those converted by Google Fonts. To avoid issues with overlapping glyphs, consider downloading the font file directly from the type foundry instead of relying on Google Fonts.
  373. .. rst-class:: classref-item-separator
  374. ----
  375. .. _class_FontFile_property_opentype_feature_overrides:
  376. .. rst-class:: classref-property
  377. :ref:`Dictionary<class_Dictionary>` **opentype_feature_overrides** = ``{}`` :ref:`๐Ÿ”—<class_FontFile_property_opentype_feature_overrides>`
  378. .. rst-class:: classref-property-setget
  379. - |void| **set_opentype_feature_overrides**\ (\ value\: :ref:`Dictionary<class_Dictionary>`\ )
  380. - :ref:`Dictionary<class_Dictionary>` **get_opentype_feature_overrides**\ (\ )
  381. Font OpenType feature set override.
  382. .. rst-class:: classref-item-separator
  383. ----
  384. .. _class_FontFile_property_oversampling:
  385. .. rst-class:: classref-property
  386. :ref:`float<class_float>` **oversampling** = ``0.0`` :ref:`๐Ÿ”—<class_FontFile_property_oversampling>`
  387. .. rst-class:: classref-property-setget
  388. - |void| **set_oversampling**\ (\ value\: :ref:`float<class_float>`\ )
  389. - :ref:`float<class_float>` **get_oversampling**\ (\ )
  390. Font oversampling factor. If set to ``0.0``, the global oversampling factor is used instead. Used by dynamic fonts only (MSDF fonts ignore oversampling).
  391. .. rst-class:: classref-item-separator
  392. ----
  393. .. _class_FontFile_property_style_name:
  394. .. rst-class:: classref-property
  395. :ref:`String<class_String>` **style_name** = ``""`` :ref:`๐Ÿ”—<class_FontFile_property_style_name>`
  396. .. rst-class:: classref-property-setget
  397. - |void| **set_font_style_name**\ (\ value\: :ref:`String<class_String>`\ )
  398. - :ref:`String<class_String>` **get_font_style_name**\ (\ )
  399. Font style name.
  400. .. rst-class:: classref-item-separator
  401. ----
  402. .. _class_FontFile_property_subpixel_positioning:
  403. .. rst-class:: classref-property
  404. :ref:`SubpixelPositioning<enum_TextServer_SubpixelPositioning>` **subpixel_positioning** = ``1`` :ref:`๐Ÿ”—<class_FontFile_property_subpixel_positioning>`
  405. .. rst-class:: classref-property-setget
  406. - |void| **set_subpixel_positioning**\ (\ value\: :ref:`SubpixelPositioning<enum_TextServer_SubpixelPositioning>`\ )
  407. - :ref:`SubpixelPositioning<enum_TextServer_SubpixelPositioning>` **get_subpixel_positioning**\ (\ )
  408. Font glyph subpixel positioning mode. Subpixel positioning provides shaper text and better kerning for smaller font sizes, at the cost of higher memory usage and lower font rasterization speed. Use :ref:`TextServer.SUBPIXEL_POSITIONING_AUTO<class_TextServer_constant_SUBPIXEL_POSITIONING_AUTO>` to automatically enable it based on the font size.
  409. .. rst-class:: classref-section-separator
  410. ----
  411. .. rst-class:: classref-descriptions-group
  412. Method Descriptions
  413. -------------------
  414. .. _class_FontFile_method_clear_cache:
  415. .. rst-class:: classref-method
  416. |void| **clear_cache**\ (\ ) :ref:`๐Ÿ”—<class_FontFile_method_clear_cache>`
  417. Removes all font cache entries.
  418. .. rst-class:: classref-item-separator
  419. ----
  420. .. _class_FontFile_method_clear_glyphs:
  421. .. rst-class:: classref-method
  422. |void| **clear_glyphs**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_clear_glyphs>`
  423. Removes all rendered glyph information from the cache entry.
  424. \ **Note:** This function will not remove textures associated with the glyphs, use :ref:`remove_texture<class_FontFile_method_remove_texture>` to remove them manually.
  425. .. rst-class:: classref-item-separator
  426. ----
  427. .. _class_FontFile_method_clear_kerning_map:
  428. .. rst-class:: classref-method
  429. |void| **clear_kerning_map**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`int<class_int>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_clear_kerning_map>`
  430. Removes all kerning overrides.
  431. .. rst-class:: classref-item-separator
  432. ----
  433. .. _class_FontFile_method_clear_size_cache:
  434. .. rst-class:: classref-method
  435. |void| **clear_size_cache**\ (\ cache_index\: :ref:`int<class_int>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_clear_size_cache>`
  436. Removes all font sizes from the cache entry.
  437. .. rst-class:: classref-item-separator
  438. ----
  439. .. _class_FontFile_method_clear_textures:
  440. .. rst-class:: classref-method
  441. |void| **clear_textures**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_clear_textures>`
  442. Removes all textures from font cache entry.
  443. \ **Note:** This function will not remove glyphs associated with the texture, use :ref:`remove_glyph<class_FontFile_method_remove_glyph>` to remove them manually.
  444. .. rst-class:: classref-item-separator
  445. ----
  446. .. _class_FontFile_method_get_cache_ascent:
  447. .. rst-class:: classref-method
  448. :ref:`float<class_float>` **get_cache_ascent**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_FontFile_method_get_cache_ascent>`
  449. Returns the font ascent (number of pixels above the baseline).
  450. .. rst-class:: classref-item-separator
  451. ----
  452. .. _class_FontFile_method_get_cache_count:
  453. .. rst-class:: classref-method
  454. :ref:`int<class_int>` **get_cache_count**\ (\ ) |const| :ref:`๐Ÿ”—<class_FontFile_method_get_cache_count>`
  455. Returns number of the font cache entries.
  456. .. rst-class:: classref-item-separator
  457. ----
  458. .. _class_FontFile_method_get_cache_descent:
  459. .. rst-class:: classref-method
  460. :ref:`float<class_float>` **get_cache_descent**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_FontFile_method_get_cache_descent>`
  461. Returns the font descent (number of pixels below the baseline).
  462. .. rst-class:: classref-item-separator
  463. ----
  464. .. _class_FontFile_method_get_cache_scale:
  465. .. rst-class:: classref-method
  466. :ref:`float<class_float>` **get_cache_scale**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_FontFile_method_get_cache_scale>`
  467. Returns scaling factor of the color bitmap font.
  468. .. rst-class:: classref-item-separator
  469. ----
  470. .. _class_FontFile_method_get_cache_underline_position:
  471. .. rst-class:: classref-method
  472. :ref:`float<class_float>` **get_cache_underline_position**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_FontFile_method_get_cache_underline_position>`
  473. Returns pixel offset of the underline below the baseline.
  474. .. rst-class:: classref-item-separator
  475. ----
  476. .. _class_FontFile_method_get_cache_underline_thickness:
  477. .. rst-class:: classref-method
  478. :ref:`float<class_float>` **get_cache_underline_thickness**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_FontFile_method_get_cache_underline_thickness>`
  479. Returns thickness of the underline in pixels.
  480. .. rst-class:: classref-item-separator
  481. ----
  482. .. _class_FontFile_method_get_char_from_glyph_index:
  483. .. rst-class:: classref-method
  484. :ref:`int<class_int>` **get_char_from_glyph_index**\ (\ size\: :ref:`int<class_int>`, glyph_index\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_FontFile_method_get_char_from_glyph_index>`
  485. Returns character code associated with ``glyph_index``, or ``0`` if ``glyph_index`` is invalid. See :ref:`get_glyph_index<class_FontFile_method_get_glyph_index>`.
  486. .. rst-class:: classref-item-separator
  487. ----
  488. .. _class_FontFile_method_get_embolden:
  489. .. rst-class:: classref-method
  490. :ref:`float<class_float>` **get_embolden**\ (\ cache_index\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_FontFile_method_get_embolden>`
  491. Returns embolden strength, if is not equal to zero, emboldens the font outlines. Negative values reduce the outline thickness.
  492. .. rst-class:: classref-item-separator
  493. ----
  494. .. _class_FontFile_method_get_extra_baseline_offset:
  495. .. rst-class:: classref-method
  496. :ref:`float<class_float>` **get_extra_baseline_offset**\ (\ cache_index\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_FontFile_method_get_extra_baseline_offset>`
  497. Returns extra baseline offset (as a fraction of font height).
  498. .. rst-class:: classref-item-separator
  499. ----
  500. .. _class_FontFile_method_get_extra_spacing:
  501. .. rst-class:: classref-method
  502. :ref:`int<class_int>` **get_extra_spacing**\ (\ cache_index\: :ref:`int<class_int>`, spacing\: :ref:`SpacingType<enum_TextServer_SpacingType>`\ ) |const| :ref:`๐Ÿ”—<class_FontFile_method_get_extra_spacing>`
  503. Returns spacing for ``spacing`` (see :ref:`SpacingType<enum_TextServer_SpacingType>`) in pixels (not relative to the font size).
  504. .. rst-class:: classref-item-separator
  505. ----
  506. .. _class_FontFile_method_get_face_index:
  507. .. rst-class:: classref-method
  508. :ref:`int<class_int>` **get_face_index**\ (\ cache_index\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_FontFile_method_get_face_index>`
  509. Returns an active face index in the TrueType / OpenType collection.
  510. .. rst-class:: classref-item-separator
  511. ----
  512. .. _class_FontFile_method_get_glyph_advance:
  513. .. rst-class:: classref-method
  514. :ref:`Vector2<class_Vector2>` **get_glyph_advance**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`int<class_int>`, glyph\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_FontFile_method_get_glyph_advance>`
  515. Returns glyph advance (offset of the next glyph).
  516. \ **Note:** Advance for glyphs outlines is the same as the base glyph advance and is not saved.
  517. .. rst-class:: classref-item-separator
  518. ----
  519. .. _class_FontFile_method_get_glyph_index:
  520. .. rst-class:: classref-method
  521. :ref:`int<class_int>` **get_glyph_index**\ (\ size\: :ref:`int<class_int>`, char\: :ref:`int<class_int>`, variation_selector\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_FontFile_method_get_glyph_index>`
  522. Returns the glyph index of a ``char``, optionally modified by the ``variation_selector``.
  523. .. rst-class:: classref-item-separator
  524. ----
  525. .. _class_FontFile_method_get_glyph_list:
  526. .. rst-class:: classref-method
  527. :ref:`PackedInt32Array<class_PackedInt32Array>` **get_glyph_list**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`\ ) |const| :ref:`๐Ÿ”—<class_FontFile_method_get_glyph_list>`
  528. Returns list of rendered glyphs in the cache entry.
  529. .. rst-class:: classref-item-separator
  530. ----
  531. .. _class_FontFile_method_get_glyph_offset:
  532. .. rst-class:: classref-method
  533. :ref:`Vector2<class_Vector2>` **get_glyph_offset**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`, glyph\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_FontFile_method_get_glyph_offset>`
  534. Returns glyph offset from the baseline.
  535. .. rst-class:: classref-item-separator
  536. ----
  537. .. _class_FontFile_method_get_glyph_size:
  538. .. rst-class:: classref-method
  539. :ref:`Vector2<class_Vector2>` **get_glyph_size**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`, glyph\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_FontFile_method_get_glyph_size>`
  540. Returns glyph size.
  541. .. rst-class:: classref-item-separator
  542. ----
  543. .. _class_FontFile_method_get_glyph_texture_idx:
  544. .. rst-class:: classref-method
  545. :ref:`int<class_int>` **get_glyph_texture_idx**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`, glyph\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_FontFile_method_get_glyph_texture_idx>`
  546. Returns index of the cache texture containing the glyph.
  547. .. rst-class:: classref-item-separator
  548. ----
  549. .. _class_FontFile_method_get_glyph_uv_rect:
  550. .. rst-class:: classref-method
  551. :ref:`Rect2<class_Rect2>` **get_glyph_uv_rect**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`, glyph\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_FontFile_method_get_glyph_uv_rect>`
  552. Returns rectangle in the cache texture containing the glyph.
  553. .. rst-class:: classref-item-separator
  554. ----
  555. .. _class_FontFile_method_get_kerning:
  556. .. rst-class:: classref-method
  557. :ref:`Vector2<class_Vector2>` **get_kerning**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`int<class_int>`, glyph_pair\: :ref:`Vector2i<class_Vector2i>`\ ) |const| :ref:`๐Ÿ”—<class_FontFile_method_get_kerning>`
  558. Returns kerning for the pair of glyphs.
  559. .. rst-class:: classref-item-separator
  560. ----
  561. .. _class_FontFile_method_get_kerning_list:
  562. .. rst-class:: classref-method
  563. :ref:`Array<class_Array>`\[:ref:`Vector2i<class_Vector2i>`\] **get_kerning_list**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_FontFile_method_get_kerning_list>`
  564. Returns list of the kerning overrides.
  565. .. rst-class:: classref-item-separator
  566. ----
  567. .. _class_FontFile_method_get_language_support_override:
  568. .. rst-class:: classref-method
  569. :ref:`bool<class_bool>` **get_language_support_override**\ (\ language\: :ref:`String<class_String>`\ ) |const| :ref:`๐Ÿ”—<class_FontFile_method_get_language_support_override>`
  570. Returns ``true`` if support override is enabled for the ``language``.
  571. .. rst-class:: classref-item-separator
  572. ----
  573. .. _class_FontFile_method_get_language_support_overrides:
  574. .. rst-class:: classref-method
  575. :ref:`PackedStringArray<class_PackedStringArray>` **get_language_support_overrides**\ (\ ) |const| :ref:`๐Ÿ”—<class_FontFile_method_get_language_support_overrides>`
  576. Returns list of language support overrides.
  577. .. rst-class:: classref-item-separator
  578. ----
  579. .. _class_FontFile_method_get_script_support_override:
  580. .. rst-class:: classref-method
  581. :ref:`bool<class_bool>` **get_script_support_override**\ (\ script\: :ref:`String<class_String>`\ ) |const| :ref:`๐Ÿ”—<class_FontFile_method_get_script_support_override>`
  582. Returns ``true`` if support override is enabled for the ``script``.
  583. .. rst-class:: classref-item-separator
  584. ----
  585. .. _class_FontFile_method_get_script_support_overrides:
  586. .. rst-class:: classref-method
  587. :ref:`PackedStringArray<class_PackedStringArray>` **get_script_support_overrides**\ (\ ) |const| :ref:`๐Ÿ”—<class_FontFile_method_get_script_support_overrides>`
  588. Returns list of script support overrides.
  589. .. rst-class:: classref-item-separator
  590. ----
  591. .. _class_FontFile_method_get_size_cache_list:
  592. .. rst-class:: classref-method
  593. :ref:`Array<class_Array>`\[:ref:`Vector2i<class_Vector2i>`\] **get_size_cache_list**\ (\ cache_index\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_FontFile_method_get_size_cache_list>`
  594. Returns list of the font sizes in the cache. Each size is :ref:`Vector2i<class_Vector2i>` with font size and outline size.
  595. .. rst-class:: classref-item-separator
  596. ----
  597. .. _class_FontFile_method_get_texture_count:
  598. .. rst-class:: classref-method
  599. :ref:`int<class_int>` **get_texture_count**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`\ ) |const| :ref:`๐Ÿ”—<class_FontFile_method_get_texture_count>`
  600. Returns number of textures used by font cache entry.
  601. .. rst-class:: classref-item-separator
  602. ----
  603. .. _class_FontFile_method_get_texture_image:
  604. .. rst-class:: classref-method
  605. :ref:`Image<class_Image>` **get_texture_image**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`, texture_index\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_FontFile_method_get_texture_image>`
  606. Returns a copy of the font cache texture image.
  607. .. rst-class:: classref-item-separator
  608. ----
  609. .. _class_FontFile_method_get_texture_offsets:
  610. .. rst-class:: classref-method
  611. :ref:`PackedInt32Array<class_PackedInt32Array>` **get_texture_offsets**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`, texture_index\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_FontFile_method_get_texture_offsets>`
  612. Returns a copy of the array containing glyph packing data.
  613. .. rst-class:: classref-item-separator
  614. ----
  615. .. _class_FontFile_method_get_transform:
  616. .. rst-class:: classref-method
  617. :ref:`Transform2D<class_Transform2D>` **get_transform**\ (\ cache_index\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_FontFile_method_get_transform>`
  618. Returns 2D transform, applied to the font outlines, can be used for slanting, flipping and rotating glyphs.
  619. .. rst-class:: classref-item-separator
  620. ----
  621. .. _class_FontFile_method_get_variation_coordinates:
  622. .. rst-class:: classref-method
  623. :ref:`Dictionary<class_Dictionary>` **get_variation_coordinates**\ (\ cache_index\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_FontFile_method_get_variation_coordinates>`
  624. Returns variation coordinates for the specified font cache entry. See :ref:`Font.get_supported_variation_list<class_Font_method_get_supported_variation_list>` for more info.
  625. .. rst-class:: classref-item-separator
  626. ----
  627. .. _class_FontFile_method_load_bitmap_font:
  628. .. rst-class:: classref-method
  629. :ref:`Error<enum_@GlobalScope_Error>` **load_bitmap_font**\ (\ path\: :ref:`String<class_String>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_load_bitmap_font>`
  630. Loads an AngelCode BMFont (.fnt, .font) bitmap font from file ``path``.
  631. \ **Warning:** This method should only be used in the editor or in cases when you need to load external fonts at run-time, such as fonts located at the ``user://`` directory.
  632. .. rst-class:: classref-item-separator
  633. ----
  634. .. _class_FontFile_method_load_dynamic_font:
  635. .. rst-class:: classref-method
  636. :ref:`Error<enum_@GlobalScope_Error>` **load_dynamic_font**\ (\ path\: :ref:`String<class_String>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_load_dynamic_font>`
  637. Loads a TrueType (.ttf), OpenType (.otf), WOFF (.woff), WOFF2 (.woff2) or Type 1 (.pfb, .pfm) dynamic font from file ``path``.
  638. \ **Warning:** This method should only be used in the editor or in cases when you need to load external fonts at run-time, such as fonts located at the ``user://`` directory.
  639. .. rst-class:: classref-item-separator
  640. ----
  641. .. _class_FontFile_method_remove_cache:
  642. .. rst-class:: classref-method
  643. |void| **remove_cache**\ (\ cache_index\: :ref:`int<class_int>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_remove_cache>`
  644. Removes specified font cache entry.
  645. .. rst-class:: classref-item-separator
  646. ----
  647. .. _class_FontFile_method_remove_glyph:
  648. .. rst-class:: classref-method
  649. |void| **remove_glyph**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`, glyph\: :ref:`int<class_int>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_remove_glyph>`
  650. Removes specified rendered glyph information from the cache entry.
  651. \ **Note:** This function will not remove textures associated with the glyphs, use :ref:`remove_texture<class_FontFile_method_remove_texture>` to remove them manually.
  652. .. rst-class:: classref-item-separator
  653. ----
  654. .. _class_FontFile_method_remove_kerning:
  655. .. rst-class:: classref-method
  656. |void| **remove_kerning**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`int<class_int>`, glyph_pair\: :ref:`Vector2i<class_Vector2i>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_remove_kerning>`
  657. Removes kerning override for the pair of glyphs.
  658. .. rst-class:: classref-item-separator
  659. ----
  660. .. _class_FontFile_method_remove_language_support_override:
  661. .. rst-class:: classref-method
  662. |void| **remove_language_support_override**\ (\ language\: :ref:`String<class_String>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_remove_language_support_override>`
  663. Remove language support override.
  664. .. rst-class:: classref-item-separator
  665. ----
  666. .. _class_FontFile_method_remove_script_support_override:
  667. .. rst-class:: classref-method
  668. |void| **remove_script_support_override**\ (\ script\: :ref:`String<class_String>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_remove_script_support_override>`
  669. Removes script support override.
  670. .. rst-class:: classref-item-separator
  671. ----
  672. .. _class_FontFile_method_remove_size_cache:
  673. .. rst-class:: classref-method
  674. |void| **remove_size_cache**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_remove_size_cache>`
  675. Removes specified font size from the cache entry.
  676. .. rst-class:: classref-item-separator
  677. ----
  678. .. _class_FontFile_method_remove_texture:
  679. .. rst-class:: classref-method
  680. |void| **remove_texture**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`, texture_index\: :ref:`int<class_int>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_remove_texture>`
  681. Removes specified texture from the cache entry.
  682. \ **Note:** This function will not remove glyphs associated with the texture. Remove them manually using :ref:`remove_glyph<class_FontFile_method_remove_glyph>`.
  683. .. rst-class:: classref-item-separator
  684. ----
  685. .. _class_FontFile_method_render_glyph:
  686. .. rst-class:: classref-method
  687. |void| **render_glyph**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`, index\: :ref:`int<class_int>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_render_glyph>`
  688. Renders specified glyph to the font cache texture.
  689. .. rst-class:: classref-item-separator
  690. ----
  691. .. _class_FontFile_method_render_range:
  692. .. rst-class:: classref-method
  693. |void| **render_range**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`, start\: :ref:`int<class_int>`, end\: :ref:`int<class_int>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_render_range>`
  694. Renders the range of characters to the font cache texture.
  695. .. rst-class:: classref-item-separator
  696. ----
  697. .. _class_FontFile_method_set_cache_ascent:
  698. .. rst-class:: classref-method
  699. |void| **set_cache_ascent**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`int<class_int>`, ascent\: :ref:`float<class_float>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_set_cache_ascent>`
  700. Sets the font ascent (number of pixels above the baseline).
  701. .. rst-class:: classref-item-separator
  702. ----
  703. .. _class_FontFile_method_set_cache_descent:
  704. .. rst-class:: classref-method
  705. |void| **set_cache_descent**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`int<class_int>`, descent\: :ref:`float<class_float>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_set_cache_descent>`
  706. Sets the font descent (number of pixels below the baseline).
  707. .. rst-class:: classref-item-separator
  708. ----
  709. .. _class_FontFile_method_set_cache_scale:
  710. .. rst-class:: classref-method
  711. |void| **set_cache_scale**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`int<class_int>`, scale\: :ref:`float<class_float>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_set_cache_scale>`
  712. Sets scaling factor of the color bitmap font.
  713. .. rst-class:: classref-item-separator
  714. ----
  715. .. _class_FontFile_method_set_cache_underline_position:
  716. .. rst-class:: classref-method
  717. |void| **set_cache_underline_position**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`int<class_int>`, underline_position\: :ref:`float<class_float>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_set_cache_underline_position>`
  718. Sets pixel offset of the underline below the baseline.
  719. .. rst-class:: classref-item-separator
  720. ----
  721. .. _class_FontFile_method_set_cache_underline_thickness:
  722. .. rst-class:: classref-method
  723. |void| **set_cache_underline_thickness**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`int<class_int>`, underline_thickness\: :ref:`float<class_float>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_set_cache_underline_thickness>`
  724. Sets thickness of the underline in pixels.
  725. .. rst-class:: classref-item-separator
  726. ----
  727. .. _class_FontFile_method_set_embolden:
  728. .. rst-class:: classref-method
  729. |void| **set_embolden**\ (\ cache_index\: :ref:`int<class_int>`, strength\: :ref:`float<class_float>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_set_embolden>`
  730. Sets embolden strength, if is not equal to zero, emboldens the font outlines. Negative values reduce the outline thickness.
  731. .. rst-class:: classref-item-separator
  732. ----
  733. .. _class_FontFile_method_set_extra_baseline_offset:
  734. .. rst-class:: classref-method
  735. |void| **set_extra_baseline_offset**\ (\ cache_index\: :ref:`int<class_int>`, baseline_offset\: :ref:`float<class_float>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_set_extra_baseline_offset>`
  736. Sets extra baseline offset (as a fraction of font height).
  737. .. rst-class:: classref-item-separator
  738. ----
  739. .. _class_FontFile_method_set_extra_spacing:
  740. .. rst-class:: classref-method
  741. |void| **set_extra_spacing**\ (\ cache_index\: :ref:`int<class_int>`, spacing\: :ref:`SpacingType<enum_TextServer_SpacingType>`, value\: :ref:`int<class_int>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_set_extra_spacing>`
  742. Sets the spacing for ``spacing`` (see :ref:`SpacingType<enum_TextServer_SpacingType>`) to ``value`` in pixels (not relative to the font size).
  743. .. rst-class:: classref-item-separator
  744. ----
  745. .. _class_FontFile_method_set_face_index:
  746. .. rst-class:: classref-method
  747. |void| **set_face_index**\ (\ cache_index\: :ref:`int<class_int>`, face_index\: :ref:`int<class_int>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_set_face_index>`
  748. Sets an active face index in the TrueType / OpenType collection.
  749. .. rst-class:: classref-item-separator
  750. ----
  751. .. _class_FontFile_method_set_glyph_advance:
  752. .. rst-class:: classref-method
  753. |void| **set_glyph_advance**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`int<class_int>`, glyph\: :ref:`int<class_int>`, advance\: :ref:`Vector2<class_Vector2>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_set_glyph_advance>`
  754. Sets glyph advance (offset of the next glyph).
  755. \ **Note:** Advance for glyphs outlines is the same as the base glyph advance and is not saved.
  756. .. rst-class:: classref-item-separator
  757. ----
  758. .. _class_FontFile_method_set_glyph_offset:
  759. .. rst-class:: classref-method
  760. |void| **set_glyph_offset**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`, glyph\: :ref:`int<class_int>`, offset\: :ref:`Vector2<class_Vector2>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_set_glyph_offset>`
  761. Sets glyph offset from the baseline.
  762. .. rst-class:: classref-item-separator
  763. ----
  764. .. _class_FontFile_method_set_glyph_size:
  765. .. rst-class:: classref-method
  766. |void| **set_glyph_size**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`, glyph\: :ref:`int<class_int>`, gl_size\: :ref:`Vector2<class_Vector2>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_set_glyph_size>`
  767. Sets glyph size.
  768. .. rst-class:: classref-item-separator
  769. ----
  770. .. _class_FontFile_method_set_glyph_texture_idx:
  771. .. rst-class:: classref-method
  772. |void| **set_glyph_texture_idx**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`, glyph\: :ref:`int<class_int>`, texture_idx\: :ref:`int<class_int>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_set_glyph_texture_idx>`
  773. Sets index of the cache texture containing the glyph.
  774. .. rst-class:: classref-item-separator
  775. ----
  776. .. _class_FontFile_method_set_glyph_uv_rect:
  777. .. rst-class:: classref-method
  778. |void| **set_glyph_uv_rect**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`, glyph\: :ref:`int<class_int>`, uv_rect\: :ref:`Rect2<class_Rect2>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_set_glyph_uv_rect>`
  779. Sets rectangle in the cache texture containing the glyph.
  780. .. rst-class:: classref-item-separator
  781. ----
  782. .. _class_FontFile_method_set_kerning:
  783. .. rst-class:: classref-method
  784. |void| **set_kerning**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`int<class_int>`, glyph_pair\: :ref:`Vector2i<class_Vector2i>`, kerning\: :ref:`Vector2<class_Vector2>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_set_kerning>`
  785. Sets kerning for the pair of glyphs.
  786. .. rst-class:: classref-item-separator
  787. ----
  788. .. _class_FontFile_method_set_language_support_override:
  789. .. rst-class:: classref-method
  790. |void| **set_language_support_override**\ (\ language\: :ref:`String<class_String>`, supported\: :ref:`bool<class_bool>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_set_language_support_override>`
  791. Adds override for :ref:`Font.is_language_supported<class_Font_method_is_language_supported>`.
  792. .. rst-class:: classref-item-separator
  793. ----
  794. .. _class_FontFile_method_set_script_support_override:
  795. .. rst-class:: classref-method
  796. |void| **set_script_support_override**\ (\ script\: :ref:`String<class_String>`, supported\: :ref:`bool<class_bool>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_set_script_support_override>`
  797. Adds override for :ref:`Font.is_script_supported<class_Font_method_is_script_supported>`.
  798. .. rst-class:: classref-item-separator
  799. ----
  800. .. _class_FontFile_method_set_texture_image:
  801. .. rst-class:: classref-method
  802. |void| **set_texture_image**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`, texture_index\: :ref:`int<class_int>`, image\: :ref:`Image<class_Image>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_set_texture_image>`
  803. Sets font cache texture image.
  804. .. rst-class:: classref-item-separator
  805. ----
  806. .. _class_FontFile_method_set_texture_offsets:
  807. .. rst-class:: classref-method
  808. |void| **set_texture_offsets**\ (\ cache_index\: :ref:`int<class_int>`, size\: :ref:`Vector2i<class_Vector2i>`, texture_index\: :ref:`int<class_int>`, offset\: :ref:`PackedInt32Array<class_PackedInt32Array>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_set_texture_offsets>`
  809. Sets array containing glyph packing data.
  810. .. rst-class:: classref-item-separator
  811. ----
  812. .. _class_FontFile_method_set_transform:
  813. .. rst-class:: classref-method
  814. |void| **set_transform**\ (\ cache_index\: :ref:`int<class_int>`, transform\: :ref:`Transform2D<class_Transform2D>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_set_transform>`
  815. Sets 2D transform, applied to the font outlines, can be used for slanting, flipping, and rotating glyphs.
  816. .. rst-class:: classref-item-separator
  817. ----
  818. .. _class_FontFile_method_set_variation_coordinates:
  819. .. rst-class:: classref-method
  820. |void| **set_variation_coordinates**\ (\ cache_index\: :ref:`int<class_int>`, variation_coordinates\: :ref:`Dictionary<class_Dictionary>`\ ) :ref:`๐Ÿ”—<class_FontFile_method_set_variation_coordinates>`
  821. Sets variation coordinates for the specified font cache entry. See :ref:`Font.get_supported_variation_list<class_Font_method_get_supported_variation_list>` for more info.
  822. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
  823. .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
  824. .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
  825. .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
  826. .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
  827. .. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`
  828. .. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)`
  829. .. |void| replace:: :abbr:`void (No return value.)`