TextServerExtension.xml 53 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268
  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <class name="TextServerExtension" inherits="TextServer" version="4.0">
  3. <brief_description>
  4. Base class for TextServer custom implementations (plugins).
  5. </brief_description>
  6. <description>
  7. External TextServer implementations should inherit from this class.
  8. </description>
  9. <tutorials>
  10. </tutorials>
  11. <methods>
  12. <method name="_create_font" qualifiers="virtual">
  13. <return type="RID" />
  14. <description>
  15. Creates new, empty font cache entry resource. To free the resulting resourec, use [method _free] method.
  16. </description>
  17. </method>
  18. <method name="_create_shaped_text" qualifiers="virtual">
  19. <return type="RID" />
  20. <argument index="0" name="direction" type="int" enum="TextServer.Direction" />
  21. <argument index="1" name="orientation" type="int" enum="TextServer.Orientation" />
  22. <description>
  23. Creates new buffer for complex text layout, with the given [code]direction[/code] and [code]orientation[/code]. To free the resulting buffer, use [method _free] method.
  24. [b]Note:[/b] Direction is ignored if server does not support [code]FEATURE_BIDI_LAYOUT[/code] feature.
  25. [b]Note:[/b] Orientation is ignored if server does not support [code]FEATURE_VERTICAL_LAYOUT[/code] feature.
  26. </description>
  27. </method>
  28. <method name="_draw_hex_code_box" qualifiers="virtual const">
  29. <return type="void" />
  30. <argument index="0" name="canvas" type="RID" />
  31. <argument index="1" name="size" type="int" />
  32. <argument index="2" name="pos" type="Vector2" />
  33. <argument index="3" name="index" type="int" />
  34. <argument index="4" name="color" type="Color" />
  35. <description>
  36. Draws box displaying character hexadecimal code. Used for replacing missing characters.
  37. </description>
  38. </method>
  39. <method name="_font_clear_glyphs" qualifiers="virtual">
  40. <return type="void" />
  41. <argument index="0" name="font_rid" type="RID" />
  42. <argument index="1" name="size" type="Vector2i" />
  43. <description>
  44. Removes all rendered glyphs information from the cache entry.
  45. [b]Note:[/b] This function will not remove textures associated with the glyphs, use [method _font_remove_texture] to remove them manually.
  46. </description>
  47. </method>
  48. <method name="_font_clear_kerning_map" qualifiers="virtual">
  49. <return type="void" />
  50. <argument index="0" name="font_rid" type="RID" />
  51. <argument index="1" name="size" type="int" />
  52. <description>
  53. Removes all kerning overrides.
  54. </description>
  55. </method>
  56. <method name="_font_clear_size_cache" qualifiers="virtual">
  57. <return type="void" />
  58. <argument index="0" name="font_rid" type="RID" />
  59. <description>
  60. Removes all font sizes from the cache entry
  61. </description>
  62. </method>
  63. <method name="_font_clear_textures" qualifiers="virtual">
  64. <return type="void" />
  65. <argument index="0" name="font_rid" type="RID" />
  66. <argument index="1" name="size" type="Vector2i" />
  67. <description>
  68. Removes all textures from font cache entry.
  69. [b]Note:[/b] This function will not remove glyphs associated with the texture, use [method _font_remove_glyph] to remove them manually.
  70. </description>
  71. </method>
  72. <method name="_font_draw_glyph" qualifiers="virtual const">
  73. <return type="void" />
  74. <argument index="0" name="font_rid" type="RID" />
  75. <argument index="1" name="canvas" type="RID" />
  76. <argument index="2" name="size" type="int" />
  77. <argument index="3" name="pos" type="Vector2" />
  78. <argument index="4" name="index" type="int" />
  79. <argument index="5" name="color" type="Color" />
  80. <description>
  81. Draws single glyph into a canvas item at the position, using [code]font_rid[/code] at the size [code]size[/code].
  82. [b]Note:[/b] Glyph index is specific to the font, use glyphs indices returned by [method _shaped_text_get_glyphs] or [method _font_get_glyph_index].
  83. </description>
  84. </method>
  85. <method name="_font_draw_glyph_outline" qualifiers="virtual const">
  86. <return type="void" />
  87. <argument index="0" name="font_rid" type="RID" />
  88. <argument index="1" name="canvas" type="RID" />
  89. <argument index="2" name="size" type="int" />
  90. <argument index="3" name="outline_size" type="int" />
  91. <argument index="4" name="pos" type="Vector2" />
  92. <argument index="5" name="index" type="int" />
  93. <argument index="6" name="color" type="Color" />
  94. <description>
  95. Draws single glyph outline of size [code]outline_size[/code] into a canvas item at the position, using [code]font_rid[/code] at the size [code]size[/code].
  96. [b]Note:[/b] Glyph index is specific to the font, use glyphs indices returned by [method _shaped_text_get_glyphs] or [method _font_get_glyph_index].
  97. </description>
  98. </method>
  99. <method name="_font_get_ascent" qualifiers="virtual const">
  100. <return type="float" />
  101. <argument index="0" name="font_rid" type="RID" />
  102. <argument index="1" name="size" type="int" />
  103. <description>
  104. Returns the font ascent (number of pixels above the baseline).
  105. </description>
  106. </method>
  107. <method name="_font_get_descent" qualifiers="virtual const">
  108. <return type="float" />
  109. <argument index="0" name="font_rid" type="RID" />
  110. <argument index="1" name="size" type="int" />
  111. <description>
  112. Returns the font descent (number of pixels below the baseline).
  113. </description>
  114. </method>
  115. <method name="_font_get_fixed_size" qualifiers="virtual const">
  116. <return type="int" />
  117. <argument index="0" name="font_rid" type="RID" />
  118. <description>
  119. Returns bitmap font fixed size.
  120. </description>
  121. </method>
  122. <method name="_font_get_global_oversampling" qualifiers="virtual const">
  123. <return type="float" />
  124. <description>
  125. Returns the font oversampling factor, shared by all fonts in the TextServer.
  126. </description>
  127. </method>
  128. <method name="_font_get_glyph_advance" qualifiers="virtual const">
  129. <return type="Vector2" />
  130. <argument index="0" name="font_rid" type="RID" />
  131. <argument index="1" name="size" type="int" />
  132. <argument index="2" name="glyph" type="int" />
  133. <description>
  134. Returns glyph advance (offset of the next glyph).
  135. [b]Note:[/b] Advance for glyphs outlines is the same as the base glyph advance and is not saved.
  136. </description>
  137. </method>
  138. <method name="_font_get_glyph_contours" qualifiers="virtual const">
  139. <return type="Dictionary" />
  140. <argument index="0" name="font_rid" type="RID" />
  141. <argument index="1" name="size" type="int" />
  142. <argument index="2" name="index" type="int" />
  143. <description>
  144. Returns outline contours of the glyph as a [code]Dictionary[/code] with the following contents:
  145. [code]points[/code] - [PackedVector3Array], containing outline points. [code]x[/code] and [code]y[/code] are point coordinates. [code]z[/code] is the type of the point, using the [enum TextServer.ContourPointTag] values.
  146. [code]contours[/code] - [PackedInt32Array], containing indices the end points of each contour.
  147. [code]orientation[/code] - [bool], contour orientation. If [code]true[/code], clockwise contours must be filled.
  148. </description>
  149. </method>
  150. <method name="_font_get_glyph_index" qualifiers="virtual const">
  151. <return type="int" />
  152. <argument index="0" name="font_rid" type="RID" />
  153. <argument index="1" name="size" type="int" />
  154. <argument index="2" name="char" type="int" />
  155. <argument index="3" name="variation_selector" type="int" />
  156. <description>
  157. Returns the glyph index of a [code]char[/code], optionally modified by the [code]variation_selector[/code].
  158. </description>
  159. </method>
  160. <method name="_font_get_glyph_list" qualifiers="virtual const">
  161. <return type="Array" />
  162. <argument index="0" name="font_rid" type="RID" />
  163. <argument index="1" name="size" type="Vector2i" />
  164. <description>
  165. Returns list of rendered glyphs in the cache entry.
  166. </description>
  167. </method>
  168. <method name="_font_get_glyph_offset" qualifiers="virtual const">
  169. <return type="Vector2" />
  170. <argument index="0" name="font_rid" type="RID" />
  171. <argument index="1" name="size" type="Vector2i" />
  172. <argument index="2" name="glyph" type="int" />
  173. <description>
  174. Returns glyph offset from the baseline.
  175. </description>
  176. </method>
  177. <method name="_font_get_glyph_size" qualifiers="virtual const">
  178. <return type="Vector2" />
  179. <argument index="0" name="font_rid" type="RID" />
  180. <argument index="1" name="size" type="Vector2i" />
  181. <argument index="2" name="glyph" type="int" />
  182. <description>
  183. Returns size of the glyph.
  184. </description>
  185. </method>
  186. <method name="_font_get_glyph_texture_idx" qualifiers="virtual const">
  187. <return type="int" />
  188. <argument index="0" name="font_rid" type="RID" />
  189. <argument index="1" name="size" type="Vector2i" />
  190. <argument index="2" name="glyph" type="int" />
  191. <description>
  192. Returns index of the cache texture containing the glyph.
  193. </description>
  194. </method>
  195. <method name="_font_get_glyph_uv_rect" qualifiers="virtual const">
  196. <return type="Rect2" />
  197. <argument index="0" name="font_rid" type="RID" />
  198. <argument index="1" name="size" type="Vector2i" />
  199. <argument index="2" name="glyph" type="int" />
  200. <description>
  201. Returns rectangle in the cache texture containing the glyph.
  202. </description>
  203. </method>
  204. <method name="_font_get_hinting" qualifiers="virtual const">
  205. <return type="int" />
  206. <argument index="0" name="font_rid" type="RID" />
  207. <description>
  208. Returns the font hinting mode. Used by dynamic fonts only.
  209. </description>
  210. </method>
  211. <method name="_font_get_kerning" qualifiers="virtual const">
  212. <return type="Vector2" />
  213. <argument index="0" name="font_rid" type="RID" />
  214. <argument index="1" name="size" type="int" />
  215. <argument index="2" name="glyph_pair" type="Vector2i" />
  216. <description>
  217. Returns kerning for the pair of glyphs.
  218. </description>
  219. </method>
  220. <method name="_font_get_kerning_list" qualifiers="virtual const">
  221. <return type="Array" />
  222. <argument index="0" name="font_rid" type="RID" />
  223. <argument index="1" name="size" type="int" />
  224. <description>
  225. Returns list of the kerning overrides.
  226. </description>
  227. </method>
  228. <method name="_font_get_language_support_override" qualifiers="virtual">
  229. <return type="bool" />
  230. <argument index="0" name="font_rid" type="RID" />
  231. <argument index="1" name="language" type="String" />
  232. <description>
  233. Returns [code]true[/code] if support override is enabled for the [code]language[/code].
  234. </description>
  235. </method>
  236. <method name="_font_get_language_support_overrides" qualifiers="virtual">
  237. <return type="PackedStringArray" />
  238. <argument index="0" name="font_rid" type="RID" />
  239. <description>
  240. Returns list of language support overrides.
  241. </description>
  242. </method>
  243. <method name="_font_get_msdf_pixel_range" qualifiers="virtual const">
  244. <return type="int" />
  245. <argument index="0" name="font_rid" type="RID" />
  246. <description>
  247. Return the width of the range around the shape between the minimum and maximum representable signed distance.
  248. </description>
  249. </method>
  250. <method name="_font_get_msdf_size" qualifiers="virtual const">
  251. <return type="int" />
  252. <argument index="0" name="font_rid" type="RID" />
  253. <description>
  254. Returns source font size used to generate MSDF textures.
  255. </description>
  256. </method>
  257. <method name="_font_get_oversampling" qualifiers="virtual const">
  258. <return type="float" />
  259. <argument index="0" name="font_rid" type="RID" />
  260. <description>
  261. Returns font oversampling factor, if set to [code]0.0[/code] global oversampling factor is used instead. Used by dynamic fonts only.
  262. </description>
  263. </method>
  264. <method name="_font_get_scale" qualifiers="virtual const">
  265. <return type="float" />
  266. <argument index="0" name="font_rid" type="RID" />
  267. <argument index="1" name="size" type="int" />
  268. <description>
  269. Returns scaling factor of the color bitmap font.
  270. </description>
  271. </method>
  272. <method name="_font_get_script_support_override" qualifiers="virtual">
  273. <return type="bool" />
  274. <argument index="0" name="font_rid" type="RID" />
  275. <argument index="1" name="script" type="String" />
  276. <description>
  277. Returns [code]true[/code] if support override is enabled for the [code]script[/code].
  278. </description>
  279. </method>
  280. <method name="_font_get_script_support_overrides" qualifiers="virtual">
  281. <return type="PackedStringArray" />
  282. <argument index="0" name="font_rid" type="RID" />
  283. <description>
  284. Returns list of script support overrides.
  285. </description>
  286. </method>
  287. <method name="_font_get_size_cache_list" qualifiers="virtual const">
  288. <return type="Array" />
  289. <argument index="0" name="font_rid" type="RID" />
  290. <description>
  291. Return list of the font sizes in the cache. Each size is [code]Vector2i[/code] with font size and outline size.
  292. </description>
  293. </method>
  294. <method name="_font_get_spacing" qualifiers="virtual const">
  295. <return type="int" />
  296. <argument index="0" name="font_rid" type="RID" />
  297. <argument index="1" name="size" type="int" />
  298. <argument index="2" name="spacing" type="int" enum="TextServer.SpacingType" />
  299. <description>
  300. Returns extra spacing added between glyphs in pixels.
  301. </description>
  302. </method>
  303. <method name="_font_get_supported_chars" qualifiers="virtual const">
  304. <return type="String" />
  305. <argument index="0" name="font_rid" type="RID" />
  306. <description>
  307. Returns a string containing all the characters available in the font.
  308. </description>
  309. </method>
  310. <method name="_font_get_texture_count" qualifiers="virtual const">
  311. <return type="int" />
  312. <argument index="0" name="font_rid" type="RID" />
  313. <argument index="1" name="size" type="Vector2i" />
  314. <description>
  315. Returns number of textures used by font cache entry.
  316. </description>
  317. </method>
  318. <method name="_font_get_texture_image" qualifiers="virtual const">
  319. <return type="Image" />
  320. <argument index="0" name="font_rid" type="RID" />
  321. <argument index="1" name="size" type="Vector2i" />
  322. <argument index="2" name="texture_index" type="int" />
  323. <description>
  324. Returns font cache texture image data.
  325. </description>
  326. </method>
  327. <method name="_font_get_texture_offsets" qualifiers="virtual const">
  328. <return type="PackedInt32Array" />
  329. <argument index="0" name="font_rid" type="RID" />
  330. <argument index="1" name="size" type="Vector2i" />
  331. <argument index="2" name="texture_index" type="int" />
  332. <description>
  333. Returns array containing the first free pixel in the each column of texture. Should be the same size as texture width or empty.
  334. </description>
  335. </method>
  336. <method name="_font_get_underline_position" qualifiers="virtual const">
  337. <return type="float" />
  338. <argument index="0" name="font_rid" type="RID" />
  339. <argument index="1" name="size" type="int" />
  340. <description>
  341. Returns pixel offset of the underline below the baseline.
  342. </description>
  343. </method>
  344. <method name="_font_get_underline_thickness" qualifiers="virtual const">
  345. <return type="float" />
  346. <argument index="0" name="font_rid" type="RID" />
  347. <argument index="1" name="size" type="int" />
  348. <description>
  349. Returns thickness of the underline in pixels.
  350. </description>
  351. </method>
  352. <method name="_font_get_variation_coordinates" qualifiers="virtual const">
  353. <return type="Dictionary" />
  354. <argument index="0" name="font_rid" type="RID" />
  355. <description>
  356. Returns variation coordinates for the specified font cache entry. See [method _font_supported_variation_list] for more info.
  357. </description>
  358. </method>
  359. <method name="_font_has_char" qualifiers="virtual const">
  360. <return type="bool" />
  361. <argument index="0" name="font_rid" type="RID" />
  362. <argument index="1" name="char" type="int" />
  363. <description>
  364. Return [code]true[/code] if a Unicode [code]char[/code] is available in the font.
  365. </description>
  366. </method>
  367. <method name="_font_is_antialiased" qualifiers="virtual const">
  368. <return type="bool" />
  369. <argument index="0" name="font_rid" type="RID" />
  370. <description>
  371. Returns [code]true[/code] if font 8-bit anitialiased glyph rendering is supported and enabled.
  372. </description>
  373. </method>
  374. <method name="_font_is_force_autohinter" qualifiers="virtual const">
  375. <return type="bool" />
  376. <argument index="0" name="font_rid" type="RID" />
  377. <description>
  378. Returns [code]true[/code] if auto-hinting is supported and preffered over font built-in hinting. Used by dynamic fonts only.
  379. </description>
  380. </method>
  381. <method name="_font_is_language_supported" qualifiers="virtual const">
  382. <return type="bool" />
  383. <argument index="0" name="font_rid" type="RID" />
  384. <argument index="1" name="language" type="String" />
  385. <description>
  386. Returns [code]true[/code], if font supports given language ([url=https://en.wikipedia.org/wiki/ISO_639-1]ISO 639[/url] code).
  387. </description>
  388. </method>
  389. <method name="_font_is_multichannel_signed_distance_field" qualifiers="virtual const">
  390. <return type="bool" />
  391. <argument index="0" name="font_rid" type="RID" />
  392. <description>
  393. Returns [code]true[/code] if glyphs of all sizes are rendered using single multichannel signed distance field generated from the dynamic font vector data.
  394. </description>
  395. </method>
  396. <method name="_font_is_script_supported" qualifiers="virtual const">
  397. <return type="bool" />
  398. <argument index="0" name="font_rid" type="RID" />
  399. <argument index="1" name="script" type="String" />
  400. <description>
  401. Returns [code]true[/code], if font supports given script (ISO 15924 code).
  402. </description>
  403. </method>
  404. <method name="_font_remove_glyph" qualifiers="virtual">
  405. <return type="void" />
  406. <argument index="0" name="font_rid" type="RID" />
  407. <argument index="1" name="size" type="Vector2i" />
  408. <argument index="2" name="glyph" type="int" />
  409. <description>
  410. Removes specified rendered glyph information from the cache entry.
  411. [b]Note:[/b] This function will not remove textures associated with the glyphs, use [method _font_remove_texture] to remove them manually.
  412. </description>
  413. </method>
  414. <method name="_font_remove_kerning" qualifiers="virtual">
  415. <return type="void" />
  416. <argument index="0" name="font_rid" type="RID" />
  417. <argument index="1" name="size" type="int" />
  418. <argument index="2" name="glyph_pair" type="Vector2i" />
  419. <description>
  420. Removes kerning override for the pair of glyphs.
  421. </description>
  422. </method>
  423. <method name="_font_remove_language_support_override" qualifiers="virtual">
  424. <return type="void" />
  425. <argument index="0" name="font_rid" type="RID" />
  426. <argument index="1" name="language" type="String" />
  427. <description>
  428. Remove language support override.
  429. </description>
  430. </method>
  431. <method name="_font_remove_script_support_override" qualifiers="virtual">
  432. <return type="void" />
  433. <argument index="0" name="font_rid" type="RID" />
  434. <argument index="1" name="script" type="String" />
  435. <description>
  436. Removes script support override.
  437. </description>
  438. </method>
  439. <method name="_font_remove_size_cache" qualifiers="virtual">
  440. <return type="void" />
  441. <argument index="0" name="font_rid" type="RID" />
  442. <argument index="1" name="size" type="Vector2i" />
  443. <description>
  444. Removes specified font size from the cache entry.
  445. </description>
  446. </method>
  447. <method name="_font_remove_texture" qualifiers="virtual">
  448. <return type="void" />
  449. <argument index="0" name="font_rid" type="RID" />
  450. <argument index="1" name="size" type="Vector2i" />
  451. <argument index="2" name="texture_index" type="int" />
  452. <description>
  453. Removes specified texture from font cache entry.
  454. [b]Note:[/b] This function will not remove glyphs associated with the texture, remove them manually, using [method _font_remove_glyph].
  455. </description>
  456. </method>
  457. <method name="_font_render_glyph" qualifiers="virtual">
  458. <return type="void" />
  459. <argument index="0" name="font_rid" type="RID" />
  460. <argument index="1" name="size" type="Vector2i" />
  461. <argument index="2" name="index" type="int" />
  462. <description>
  463. Renders specified glyph the the font cache texture.
  464. </description>
  465. </method>
  466. <method name="_font_render_range" qualifiers="virtual">
  467. <return type="void" />
  468. <argument index="0" name="font_rid" type="RID" />
  469. <argument index="1" name="size" type="Vector2i" />
  470. <argument index="2" name="start" type="int" />
  471. <argument index="3" name="end" type="int" />
  472. <description>
  473. Renders the range of characters to the font cache texture.
  474. </description>
  475. </method>
  476. <method name="_font_set_antialiased" qualifiers="virtual">
  477. <return type="void" />
  478. <argument index="0" name="font_rid" type="RID" />
  479. <argument index="1" name="antialiased" type="bool" />
  480. <description>
  481. If set to [code]true[/code], 8-bit antialiased glyph rendering is used, otherwise 1-bit rendering is used. Used by dynamic fonts only.
  482. </description>
  483. </method>
  484. <method name="_font_set_ascent" qualifiers="virtual">
  485. <return type="void" />
  486. <argument index="0" name="font_rid" type="RID" />
  487. <argument index="1" name="size" type="int" />
  488. <argument index="2" name="ascent" type="float" />
  489. <description>
  490. Sets the font ascent (number of pixels above the baseline).
  491. </description>
  492. </method>
  493. <method name="_font_set_data" qualifiers="virtual">
  494. <return type="void" />
  495. <argument index="0" name="font_rid" type="RID" />
  496. <argument index="1" name="data" type="PackedByteArray" />
  497. <description>
  498. Sets font source data, e.g contents of the dynamic font source file.
  499. </description>
  500. </method>
  501. <method name="_font_set_data_ptr" qualifiers="virtual">
  502. <return type="void" />
  503. <argument index="0" name="font_rid" type="RID" />
  504. <argument index="1" name="data_ptr" type="const uint8_t*" />
  505. <argument index="2" name="data_size" type="int" />
  506. <description>
  507. Sets the font descent (number of pixels below the baseline).
  508. </description>
  509. </method>
  510. <method name="_font_set_descent" qualifiers="virtual">
  511. <return type="void" />
  512. <argument index="0" name="font_rid" type="RID" />
  513. <argument index="1" name="size" type="int" />
  514. <argument index="2" name="descent" type="float" />
  515. <description>
  516. Sets bitmap font fixed size. If set to value greater than zero, same cache entry will be used for all font sizes.
  517. </description>
  518. </method>
  519. <method name="_font_set_fixed_size" qualifiers="virtual">
  520. <return type="void" />
  521. <argument index="0" name="font_rid" type="RID" />
  522. <argument index="1" name="fixed_size" type="int" />
  523. <description>
  524. If set to [code]true[/code] auto-hinting is preffered over font built-in hinting.
  525. </description>
  526. </method>
  527. <method name="_font_set_force_autohinter" qualifiers="virtual">
  528. <return type="void" />
  529. <argument index="0" name="font_rid" type="RID" />
  530. <argument index="1" name="force_autohinter" type="bool" />
  531. <description>
  532. </description>
  533. </method>
  534. <method name="_font_set_global_oversampling" qualifiers="virtual">
  535. <return type="void" />
  536. <argument index="0" name="oversampling" type="float" />
  537. <description>
  538. Sets oversampling factor, shared by all font in the TextServer.
  539. [b]Note:[/b] This value can be automaticaly changed by display server.
  540. </description>
  541. </method>
  542. <method name="_font_set_glyph_advance" qualifiers="virtual">
  543. <return type="void" />
  544. <argument index="0" name="font_rid" type="RID" />
  545. <argument index="1" name="size" type="int" />
  546. <argument index="2" name="glyph" type="int" />
  547. <argument index="3" name="advance" type="Vector2" />
  548. <description>
  549. Sets glyph advance (offset of the next glyph).
  550. [b]Note:[/b] Advance for glyphs outlines is the same as the base glyph advance and is not saved.
  551. </description>
  552. </method>
  553. <method name="_font_set_glyph_offset" qualifiers="virtual">
  554. <return type="void" />
  555. <argument index="0" name="font_rid" type="RID" />
  556. <argument index="1" name="size" type="Vector2i" />
  557. <argument index="2" name="glyph" type="int" />
  558. <argument index="3" name="offset" type="Vector2" />
  559. <description>
  560. Sets glyph offset from the baseline.
  561. </description>
  562. </method>
  563. <method name="_font_set_glyph_size" qualifiers="virtual">
  564. <return type="void" />
  565. <argument index="0" name="font_rid" type="RID" />
  566. <argument index="1" name="size" type="Vector2i" />
  567. <argument index="2" name="glyph" type="int" />
  568. <argument index="3" name="gl_size" type="Vector2" />
  569. <description>
  570. Sets size of the glyph.
  571. </description>
  572. </method>
  573. <method name="_font_set_glyph_texture_idx" qualifiers="virtual">
  574. <return type="void" />
  575. <argument index="0" name="font_rid" type="RID" />
  576. <argument index="1" name="size" type="Vector2i" />
  577. <argument index="2" name="glyph" type="int" />
  578. <argument index="3" name="texture_idx" type="int" />
  579. <description>
  580. Sets index of the cache texture containing the glyph.
  581. </description>
  582. </method>
  583. <method name="_font_set_glyph_uv_rect" qualifiers="virtual">
  584. <return type="void" />
  585. <argument index="0" name="font_rid" type="RID" />
  586. <argument index="1" name="size" type="Vector2i" />
  587. <argument index="2" name="glyph" type="int" />
  588. <argument index="3" name="uv_rect" type="Rect2" />
  589. <description>
  590. Sets rectangle in the cache texture containing the glyph.
  591. </description>
  592. </method>
  593. <method name="_font_set_hinting" qualifiers="virtual">
  594. <return type="void" />
  595. <argument index="0" name="font_rid" type="RID" />
  596. <argument index="1" name="hinting" type="int" enum="TextServer.Hinting" />
  597. <description>
  598. Sets font hinting mode. Used by dynamic fonts only.
  599. </description>
  600. </method>
  601. <method name="_font_set_kerning" qualifiers="virtual">
  602. <return type="void" />
  603. <argument index="0" name="font_rid" type="RID" />
  604. <argument index="1" name="size" type="int" />
  605. <argument index="2" name="glyph_pair" type="Vector2i" />
  606. <argument index="3" name="kerning" type="Vector2" />
  607. <description>
  608. Sets kerning for the pair of glyphs.
  609. </description>
  610. </method>
  611. <method name="_font_set_language_support_override" qualifiers="virtual">
  612. <return type="void" />
  613. <argument index="0" name="font_rid" type="RID" />
  614. <argument index="1" name="language" type="String" />
  615. <argument index="2" name="supported" type="bool" />
  616. <description>
  617. Adds override for [method _font_is_language_supported].
  618. </description>
  619. </method>
  620. <method name="_font_set_msdf_pixel_range" qualifiers="virtual">
  621. <return type="void" />
  622. <argument index="0" name="font_rid" type="RID" />
  623. <argument index="1" name="msdf_pixel_range" type="int" />
  624. <description>
  625. Sets the width of the range around the shape between the minimum and maximum representable signed distance.
  626. </description>
  627. </method>
  628. <method name="_font_set_msdf_size" qualifiers="virtual">
  629. <return type="void" />
  630. <argument index="0" name="font_rid" type="RID" />
  631. <argument index="1" name="msdf_size" type="int" />
  632. <description>
  633. Sets source font size used to generate MSDF textures.
  634. </description>
  635. </method>
  636. <method name="_font_set_multichannel_signed_distance_field" qualifiers="virtual">
  637. <return type="void" />
  638. <argument index="0" name="font_rid" type="RID" />
  639. <argument index="1" name="msdf" type="bool" />
  640. <description>
  641. If set to [code]true[/code], glyphs of all sizes are rendered using single multichannel signed distance field generated from the dynamic font vector data.
  642. </description>
  643. </method>
  644. <method name="_font_set_oversampling" qualifiers="virtual">
  645. <return type="void" />
  646. <argument index="0" name="font_rid" type="RID" />
  647. <argument index="1" name="oversampling" type="float" />
  648. <description>
  649. Sets font oversampling factor, if set to [code]0.0[/code] global oversampling factor is used instead. Used by dynamic fonts only.
  650. </description>
  651. </method>
  652. <method name="_font_set_scale" qualifiers="virtual">
  653. <return type="void" />
  654. <argument index="0" name="font_rid" type="RID" />
  655. <argument index="1" name="size" type="int" />
  656. <argument index="2" name="scale" type="float" />
  657. <description>
  658. Sets scaling factor of the color bitmap font.
  659. </description>
  660. </method>
  661. <method name="_font_set_script_support_override" qualifiers="virtual">
  662. <return type="void" />
  663. <argument index="0" name="font_rid" type="RID" />
  664. <argument index="1" name="script" type="String" />
  665. <argument index="2" name="supported" type="bool" />
  666. <description>
  667. Adds override for [method _font_is_script_supported].
  668. </description>
  669. </method>
  670. <method name="_font_set_spacing" qualifiers="virtual">
  671. <return type="void" />
  672. <argument index="0" name="font_rid" type="RID" />
  673. <argument index="1" name="size" type="int" />
  674. <argument index="2" name="spacing" type="int" enum="TextServer.SpacingType" />
  675. <argument index="3" name="value" type="int" />
  676. <description>
  677. Sets extra spacing added between glyphs in pixels.
  678. </description>
  679. </method>
  680. <method name="_font_set_texture_image" qualifiers="virtual">
  681. <return type="void" />
  682. <argument index="0" name="font_rid" type="RID" />
  683. <argument index="1" name="size" type="Vector2i" />
  684. <argument index="2" name="texture_index" type="int" />
  685. <argument index="3" name="image" type="Image" />
  686. <description>
  687. Sets font cache texture image data.
  688. </description>
  689. </method>
  690. <method name="_font_set_texture_offsets" qualifiers="virtual">
  691. <return type="void" />
  692. <argument index="0" name="font_rid" type="RID" />
  693. <argument index="1" name="size" type="Vector2i" />
  694. <argument index="2" name="texture_index" type="int" />
  695. <argument index="3" name="offset" type="PackedInt32Array" />
  696. <description>
  697. Sets array containing the first free pixel in the each column of texture. Should be the same size as texture width or empty.
  698. </description>
  699. </method>
  700. <method name="_font_set_underline_position" qualifiers="virtual">
  701. <return type="void" />
  702. <argument index="0" name="font_rid" type="RID" />
  703. <argument index="1" name="size" type="int" />
  704. <argument index="2" name="underline_position" type="float" />
  705. <description>
  706. Sets pixel offset of the underline below the baseline.
  707. </description>
  708. </method>
  709. <method name="_font_set_underline_thickness" qualifiers="virtual">
  710. <return type="void" />
  711. <argument index="0" name="font_rid" type="RID" />
  712. <argument index="1" name="size" type="int" />
  713. <argument index="2" name="underline_thickness" type="float" />
  714. <description>
  715. Sets thickness of the underline in pixels.
  716. </description>
  717. </method>
  718. <method name="_font_set_variation_coordinates" qualifiers="virtual">
  719. <return type="void" />
  720. <argument index="0" name="font_rid" type="RID" />
  721. <argument index="1" name="variation_coordinates" type="Dictionary" />
  722. <description>
  723. Sets variation coordinates for the specified font cache entry. See [method _font_supported_variation_list] for more info.
  724. </description>
  725. </method>
  726. <method name="_font_supported_feature_list" qualifiers="virtual const">
  727. <return type="Dictionary" />
  728. <argument index="0" name="font_rid" type="RID" />
  729. <description>
  730. Returns the dictionary of the supported OpenType features.
  731. </description>
  732. </method>
  733. <method name="_font_supported_variation_list" qualifiers="virtual const">
  734. <return type="Dictionary" />
  735. <argument index="0" name="font_rid" type="RID" />
  736. <description>
  737. Returns the dictionary of the supported OpenType variation coordinates.
  738. </description>
  739. </method>
  740. <method name="_format_number" qualifiers="virtual const">
  741. <return type="String" />
  742. <argument index="0" name="string" type="String" />
  743. <argument index="1" name="language" type="String" />
  744. <description>
  745. Converts a number from the Western Arabic (0..9) to the numeral systems used in [code]language[/code].
  746. </description>
  747. </method>
  748. <method name="_free" qualifiers="virtual">
  749. <return type="void" />
  750. <argument index="0" name="rid" type="RID" />
  751. <description>
  752. Frees an object created by this [TextServer].
  753. </description>
  754. </method>
  755. <method name="_get_features" qualifiers="virtual const">
  756. <return type="int" />
  757. <description>
  758. Returns text server features, see [enum TextServer.Feature].
  759. </description>
  760. </method>
  761. <method name="_get_hex_code_box_size" qualifiers="virtual const">
  762. <return type="Vector2" />
  763. <argument index="0" name="size" type="int" />
  764. <argument index="1" name="index" type="int" />
  765. <description>
  766. Returns size of the replacement character (box with character hexadecimal code that is drawn in place of invalid characters).
  767. </description>
  768. </method>
  769. <method name="_get_name" qualifiers="virtual const">
  770. <return type="String" />
  771. <description>
  772. Returns the name of the server interface.
  773. </description>
  774. </method>
  775. <method name="_get_support_data_filename" qualifiers="virtual const">
  776. <return type="String" />
  777. <description>
  778. Returns default TextServer database (e.g. ICU break iterators and dictionaries) filename.
  779. </description>
  780. </method>
  781. <method name="_get_support_data_info" qualifiers="virtual const">
  782. <return type="String" />
  783. <description>
  784. Returns TextServer database (e.g. ICU break iterators and dictionaries) description.
  785. </description>
  786. </method>
  787. <method name="_has" qualifiers="virtual">
  788. <return type="bool" />
  789. <argument index="0" name="rid" type="RID" />
  790. <description>
  791. Returns [code]true[/code] if [code]rid[/code] is valid resource owned by this text server.
  792. </description>
  793. </method>
  794. <method name="_has_feature" qualifiers="virtual const">
  795. <return type="bool" />
  796. <argument index="0" name="feature" type="int" enum="TextServer.Feature" />
  797. <description>
  798. Returns [code]true[/code] if the server supports a feature.
  799. </description>
  800. </method>
  801. <method name="_is_locale_right_to_left" qualifiers="virtual const">
  802. <return type="bool" />
  803. <argument index="0" name="locale" type="String" />
  804. <description>
  805. Returns [code]true[/code] if locale is right-to-left.
  806. </description>
  807. </method>
  808. <method name="_load_support_data" qualifiers="virtual">
  809. <return type="bool" />
  810. <argument index="0" name="filename" type="String" />
  811. <description>
  812. Loads optional TextServer database (e.g. ICU break iterators and dictionaries).
  813. [b]Note:[/b] This function should be called before any other TextServer functions used, otherwise it won't have any effect.
  814. </description>
  815. </method>
  816. <method name="_name_to_tag" qualifiers="virtual const">
  817. <return type="int" />
  818. <argument index="0" name="name" type="String" />
  819. <description>
  820. Converts readable feature, variation, script or language name to OpenType tag.
  821. </description>
  822. </method>
  823. <method name="_parse_number" qualifiers="virtual const">
  824. <return type="String" />
  825. <argument index="0" name="string" type="String" />
  826. <argument index="1" name="language" type="String" />
  827. <description>
  828. Converts a number from the numeral systems used in [code]language[/code] to Western Arabic (0..9).
  829. </description>
  830. </method>
  831. <method name="_percent_sign" qualifiers="virtual const">
  832. <return type="String" />
  833. <argument index="0" name="language" type="String" />
  834. <description>
  835. Returns percent sign used in the [code]language[/code].
  836. </description>
  837. </method>
  838. <method name="_save_support_data" qualifiers="virtual const">
  839. <return type="bool" />
  840. <argument index="0" name="filename" type="String" />
  841. <description>
  842. Saves optional TextServer database (e.g. ICU break iterators and dictionaries) to the file.
  843. [b]Note:[/b] This function is used by during project export, to include TextServer database.
  844. </description>
  845. </method>
  846. <method name="_shaped_text_add_object" qualifiers="virtual">
  847. <return type="bool" />
  848. <argument index="0" name="shaped" type="RID" />
  849. <argument index="1" name="key" type="Variant" />
  850. <argument index="2" name="size" type="Vector2" />
  851. <argument index="3" name="inline_align" type="int" enum="InlineAlign" />
  852. <argument index="4" name="length" type="int" />
  853. <description>
  854. Adds inline object to the text buffer, [code]key[/code] must be unique. In the text, object is represented as [code]length[/code] object replacement characters.
  855. </description>
  856. </method>
  857. <method name="_shaped_text_add_string" qualifiers="virtual">
  858. <return type="bool" />
  859. <argument index="0" name="shaped" type="RID" />
  860. <argument index="1" name="text" type="String" />
  861. <argument index="2" name="fonts" type="Array" />
  862. <argument index="3" name="size" type="int" />
  863. <argument index="4" name="opentype_features" type="Dictionary" />
  864. <argument index="5" name="language" type="String" />
  865. <description>
  866. Adds text span and font to draw it to the text buffer.
  867. </description>
  868. </method>
  869. <method name="_shaped_text_clear" qualifiers="virtual">
  870. <return type="void" />
  871. <argument index="0" name="shaped" type="RID" />
  872. <description>
  873. Clears text buffer (removes text and inline objects).
  874. </description>
  875. </method>
  876. <method name="_shaped_text_draw" qualifiers="virtual const">
  877. <return type="void" />
  878. <argument index="0" name="shaped" type="RID" />
  879. <argument index="1" name="canvas" type="RID" />
  880. <argument index="2" name="pos" type="Vector2" />
  881. <argument index="3" name="clip_l" type="float" />
  882. <argument index="4" name="clip_r" type="float" />
  883. <argument index="5" name="color" type="Color" />
  884. <description>
  885. Draw shaped text into a canvas item at a given position, with [code]color[/code]. [code]pos[/code] specifies the leftmost point of the baseline (for horizontal layout) or topmost point of the baseline (for vertical layout).
  886. </description>
  887. </method>
  888. <method name="_shaped_text_draw_outline" qualifiers="virtual const">
  889. <return type="void" />
  890. <argument index="0" name="shaped" type="RID" />
  891. <argument index="1" name="canvas" type="RID" />
  892. <argument index="2" name="pos" type="Vector2" />
  893. <argument index="3" name="clip_l" type="float" />
  894. <argument index="4" name="clip_r" type="float" />
  895. <argument index="5" name="outline_size" type="int" />
  896. <argument index="6" name="color" type="Color" />
  897. <description>
  898. Draw the outline of the shaped text into a canvas item at a given position, with [code]color[/code]. [code]pos[/code] specifies the leftmost point of the baseline (for horizontal layout) or topmost point of the baseline (for vertical layout).
  899. </description>
  900. </method>
  901. <method name="_shaped_text_fit_to_width" qualifiers="virtual">
  902. <return type="float" />
  903. <argument index="0" name="shaped" type="RID" />
  904. <argument index="1" name="width" type="float" />
  905. <argument index="2" name="jst_flags" type="int" />
  906. <description>
  907. Adjusts text with to fit to specified width, returns new text width
  908. </description>
  909. </method>
  910. <method name="_shaped_text_get_ascent" qualifiers="virtual const">
  911. <return type="float" />
  912. <argument index="0" name="shaped" type="RID" />
  913. <description>
  914. Returns the text ascent (number of pixels above the baseline for horizontal layout or to the left of baseline for vertical).
  915. [b]Note:[/b] Overall ascent can be higher than font ascent, if some glyphs are displaced from the baseline.
  916. </description>
  917. </method>
  918. <method name="_shaped_text_get_carets" qualifiers="virtual const">
  919. <return type="void" />
  920. <argument index="0" name="shaped" type="RID" />
  921. <argument index="1" name="position" type="int" />
  922. <argument index="2" name="caret" type="CaretInfo*" />
  923. <description>
  924. Returns shapes of the carets corresponding to the character offset [code]position[/code] in the text. Returned caret shape is 1 pixel wide rectangle.
  925. </description>
  926. </method>
  927. <method name="_shaped_text_get_descent" qualifiers="virtual const">
  928. <return type="float" />
  929. <argument index="0" name="shaped" type="RID" />
  930. <description>
  931. Returns the text descent (number of pixels below the baseline for horizontal layout or to the right of baseline for vertical).
  932. [b]Note:[/b] Overall descent can be higher than font descent, if some glyphs are displaced from the baseline.
  933. </description>
  934. </method>
  935. <method name="_shaped_text_get_direction" qualifiers="virtual const">
  936. <return type="int" />
  937. <argument index="0" name="shaped" type="RID" />
  938. <description>
  939. Returns direction of the text.
  940. </description>
  941. </method>
  942. <method name="_shaped_text_get_dominant_direction_in_range" qualifiers="virtual const">
  943. <return type="int" />
  944. <argument index="0" name="shaped" type="RID" />
  945. <argument index="1" name="start" type="int" />
  946. <argument index="2" name="end" type="int" />
  947. <description>
  948. Returns dominant direction of in the range of text.
  949. </description>
  950. </method>
  951. <method name="_shaped_text_get_ellipsis_glyph_count" qualifiers="virtual const">
  952. <return type="int" />
  953. <argument index="0" name="shaped" type="RID" />
  954. <description>
  955. Returns number of glyphs in the ellipsis.
  956. </description>
  957. </method>
  958. <method name="_shaped_text_get_ellipsis_glyphs" qualifiers="virtual const">
  959. <return type="void" />
  960. <argument index="0" name="shaped" type="RID" />
  961. <argument index="1" name="r_glyphs" type="void*" />
  962. <description>
  963. Returns array of the glyphs in the ellipsis.
  964. </description>
  965. </method>
  966. <method name="_shaped_text_get_ellipsis_pos" qualifiers="virtual const">
  967. <return type="int" />
  968. <argument index="0" name="shaped" type="RID" />
  969. <description>
  970. Returns position of the ellipsis.
  971. </description>
  972. </method>
  973. <method name="_shaped_text_get_glyph_count" qualifiers="virtual const">
  974. <return type="int" />
  975. <argument index="0" name="shaped" type="RID" />
  976. <description>
  977. Returns text glyphs count.
  978. </description>
  979. </method>
  980. <method name="_shaped_text_get_glyphs" qualifiers="virtual const">
  981. <return type="void" />
  982. <argument index="0" name="shaped" type="RID" />
  983. <argument index="1" name="r_glyphs" type="void*" />
  984. <description>
  985. Copies text glyphs in the visual order, into preallocated array of the size returned by [method _shaped_text_get_glyph_count].
  986. </description>
  987. </method>
  988. <method name="_shaped_text_get_line_breaks" qualifiers="virtual const">
  989. <return type="PackedInt32Array" />
  990. <argument index="0" name="shaped" type="RID" />
  991. <argument index="1" name="width" type="float" />
  992. <argument index="2" name="start" type="int" />
  993. <argument index="3" name="break_flags" type="int" />
  994. <description>
  995. Breaks text to the lines and returns character ranges for each line.
  996. </description>
  997. </method>
  998. <method name="_shaped_text_get_line_breaks_adv" qualifiers="virtual const">
  999. <return type="PackedInt32Array" />
  1000. <argument index="0" name="shaped" type="RID" />
  1001. <argument index="1" name="width" type="PackedFloat32Array" />
  1002. <argument index="2" name="start" type="int" />
  1003. <argument index="3" name="once" type="bool" />
  1004. <argument index="4" name="break_flags" type="int" />
  1005. <description>
  1006. Breaks text to the lines and columns. Returns character ranges for each segment.
  1007. </description>
  1008. </method>
  1009. <method name="_shaped_text_get_object_rect" qualifiers="virtual const">
  1010. <return type="Rect2" />
  1011. <argument index="0" name="shaped" type="RID" />
  1012. <argument index="1" name="key" type="Variant" />
  1013. <description>
  1014. Returns bounding rectangle of the inline object.
  1015. </description>
  1016. </method>
  1017. <method name="_shaped_text_get_objects" qualifiers="virtual const">
  1018. <return type="Array" />
  1019. <argument index="0" name="shaped" type="RID" />
  1020. <description>
  1021. Returns array of inline objects.
  1022. </description>
  1023. </method>
  1024. <method name="_shaped_text_get_orientation" qualifiers="virtual const">
  1025. <return type="int" />
  1026. <argument index="0" name="shaped" type="RID" />
  1027. <description>
  1028. Returns text orientation.
  1029. </description>
  1030. </method>
  1031. <method name="_shaped_text_get_parent" qualifiers="virtual const">
  1032. <return type="RID" />
  1033. <argument index="0" name="shaped" type="RID" />
  1034. <description>
  1035. Sets text orientation.
  1036. </description>
  1037. </method>
  1038. <method name="_shaped_text_get_preserve_control" qualifiers="virtual const">
  1039. <return type="bool" />
  1040. <argument index="0" name="shaped" type="RID" />
  1041. <description>
  1042. Returns [code]true[/code] if text buffer is configured to display control characters.
  1043. </description>
  1044. </method>
  1045. <method name="_shaped_text_get_preserve_invalid" qualifiers="virtual const">
  1046. <return type="bool" />
  1047. <argument index="0" name="shaped" type="RID" />
  1048. <description>
  1049. Returns [code]true[/code] if text buffer is configured to display hexadecimal codes in place of invalid characters.
  1050. [b]Note:[/b] If set to [code]false[/code], nothing is displayed in place of invalid characters.
  1051. </description>
  1052. </method>
  1053. <method name="_shaped_text_get_range" qualifiers="virtual const">
  1054. <return type="Vector2i" />
  1055. <argument index="0" name="shaped" type="RID" />
  1056. <description>
  1057. Returns substring buffer character range in the parent buffer.
  1058. </description>
  1059. </method>
  1060. <method name="_shaped_text_get_selection" qualifiers="virtual const">
  1061. <return type="PackedVector2Array" />
  1062. <argument index="0" name="shaped" type="RID" />
  1063. <argument index="1" name="start" type="int" />
  1064. <argument index="2" name="end" type="int" />
  1065. <description>
  1066. Returns selection rectangles for the specified character range.
  1067. </description>
  1068. </method>
  1069. <method name="_shaped_text_get_size" qualifiers="virtual const">
  1070. <return type="Vector2" />
  1071. <argument index="0" name="shaped" type="RID" />
  1072. <description>
  1073. Returns size of the text.
  1074. </description>
  1075. </method>
  1076. <method name="_shaped_text_get_trim_pos" qualifiers="virtual const">
  1077. <return type="int" />
  1078. <argument index="0" name="shaped" type="RID" />
  1079. <description>
  1080. Returns ellipsis and trim positions.
  1081. </description>
  1082. </method>
  1083. <method name="_shaped_text_get_underline_position" qualifiers="virtual const">
  1084. <return type="float" />
  1085. <argument index="0" name="shaped" type="RID" />
  1086. <description>
  1087. Returns pixel offset of the underline below the baseline.
  1088. </description>
  1089. </method>
  1090. <method name="_shaped_text_get_underline_thickness" qualifiers="virtual const">
  1091. <return type="float" />
  1092. <argument index="0" name="shaped" type="RID" />
  1093. <description>
  1094. Returns thickness of the underline.
  1095. </description>
  1096. </method>
  1097. <method name="_shaped_text_get_width" qualifiers="virtual const">
  1098. <return type="float" />
  1099. <argument index="0" name="shaped" type="RID" />
  1100. <description>
  1101. Returns width (for horizontal layout) or height (for vertical) of the text.
  1102. </description>
  1103. </method>
  1104. <method name="_shaped_text_get_word_breaks" qualifiers="virtual const">
  1105. <return type="PackedInt32Array" />
  1106. <argument index="0" name="shaped" type="RID" />
  1107. <argument index="1" name="grapheme_flags" type="int" />
  1108. <description>
  1109. Breaks text into words and returns array of character ranges.
  1110. </description>
  1111. </method>
  1112. <method name="_shaped_text_hit_test_grapheme" qualifiers="virtual const">
  1113. <return type="int" />
  1114. <argument index="0" name="shaped" type="RID" />
  1115. <argument index="1" name="coord" type="float" />
  1116. <description>
  1117. Returns grapheme index at the specified pixel offset at the baseline, or [code]-1[/code] if none is found.
  1118. </description>
  1119. </method>
  1120. <method name="_shaped_text_hit_test_position" qualifiers="virtual const">
  1121. <return type="int" />
  1122. <argument index="0" name="shaped" type="RID" />
  1123. <argument index="1" name="coord" type="float" />
  1124. <description>
  1125. Returns caret character offset at the specified pixel offset at the baseline. This function always returns a valid position.
  1126. </description>
  1127. </method>
  1128. <method name="_shaped_text_is_ready" qualifiers="virtual const">
  1129. <return type="bool" />
  1130. <argument index="0" name="shaped" type="RID" />
  1131. <description>
  1132. Returns [code]true[/code] if buffer is successfully shaped.
  1133. </description>
  1134. </method>
  1135. <method name="_shaped_text_next_grapheme_pos" qualifiers="virtual const">
  1136. <return type="int" />
  1137. <argument index="0" name="shaped" type="RID" />
  1138. <argument index="1" name="pos" type="int" />
  1139. <description>
  1140. Returns composite character end position closest to the [code]pos[/code].
  1141. </description>
  1142. </method>
  1143. <method name="_shaped_text_overrun_trim_to_width" qualifiers="virtual">
  1144. <return type="void" />
  1145. <argument index="0" name="shaped" type="RID" />
  1146. <argument index="1" name="width" type="float" />
  1147. <argument index="2" name="trim_flags" type="int" />
  1148. <description>
  1149. Trims text if it exceeds the given width.
  1150. </description>
  1151. </method>
  1152. <method name="_shaped_text_prev_grapheme_pos" qualifiers="virtual const">
  1153. <return type="int" />
  1154. <argument index="0" name="shaped" type="RID" />
  1155. <argument index="1" name="pos" type="int" />
  1156. <description>
  1157. Returns composite character start position closest to the [code]pos[/code].
  1158. </description>
  1159. </method>
  1160. <method name="_shaped_text_resize_object" qualifiers="virtual">
  1161. <return type="bool" />
  1162. <argument index="0" name="shaped" type="RID" />
  1163. <argument index="1" name="key" type="Variant" />
  1164. <argument index="2" name="size" type="Vector2" />
  1165. <argument index="3" name="inline_align" type="int" enum="InlineAlign" />
  1166. <description>
  1167. Sets new size and alignment of embedded object.
  1168. </description>
  1169. </method>
  1170. <method name="_shaped_text_set_bidi_override" qualifiers="virtual">
  1171. <return type="void" />
  1172. <argument index="0" name="shaped" type="RID" />
  1173. <argument index="1" name="override" type="Array" />
  1174. <description>
  1175. Overrides BiDi for the structured text.
  1176. Override ranges should cover full source text without overlaps. BiDi algorithm will be used on each range separately.
  1177. </description>
  1178. </method>
  1179. <method name="_shaped_text_set_direction" qualifiers="virtual">
  1180. <return type="void" />
  1181. <argument index="0" name="shaped" type="RID" />
  1182. <argument index="1" name="direction" type="int" enum="TextServer.Direction" />
  1183. <description>
  1184. Sets desired text direction. If set to [code]TEXT_DIRECTION_AUTO[/code], direction will be detected based on the buffer contents and current locale.
  1185. [b]Note:[/b] Direction is ignored if server does not support [code]FEATURE_BIDI_LAYOUT[/code] feature.
  1186. </description>
  1187. </method>
  1188. <method name="_shaped_text_set_orientation" qualifiers="virtual">
  1189. <return type="void" />
  1190. <argument index="0" name="shaped" type="RID" />
  1191. <argument index="1" name="orientation" type="int" enum="TextServer.Orientation" />
  1192. <description>
  1193. Sets desired text orientation.
  1194. [b]Note:[/b] Orientation is ignored if server does not support [code]FEATURE_VERTICAL_LAYOUT[/code] feature.
  1195. </description>
  1196. </method>
  1197. <method name="_shaped_text_set_preserve_control" qualifiers="virtual">
  1198. <return type="void" />
  1199. <argument index="0" name="shaped" type="RID" />
  1200. <argument index="1" name="enabled" type="bool" />
  1201. <description>
  1202. If set to [code]true[/code] text buffer will display control characters.
  1203. </description>
  1204. </method>
  1205. <method name="_shaped_text_set_preserve_invalid" qualifiers="virtual">
  1206. <return type="void" />
  1207. <argument index="0" name="shaped" type="RID" />
  1208. <argument index="1" name="enabled" type="bool" />
  1209. <description>
  1210. If set to [code]true[/code] text buffer will display invalid characters as hexadecimal codes, otherwise nothing is displayed.
  1211. </description>
  1212. </method>
  1213. <method name="_shaped_text_shape" qualifiers="virtual">
  1214. <return type="bool" />
  1215. <argument index="0" name="shaped" type="RID" />
  1216. <description>
  1217. Shapes buffer if it's not shaped. Returns [code]true[/code] if the string is shaped successfully.
  1218. [b]Note:[/b] It is not necessary to call this function manually, buffer will be shaped automatically as soon as any of its output data is requested.
  1219. </description>
  1220. </method>
  1221. <method name="_shaped_text_sort_logical" qualifiers="virtual">
  1222. <return type="void" />
  1223. <argument index="0" name="shaped" type="RID" />
  1224. <argument index="1" name="r_glyphs" type="void*" />
  1225. <description>
  1226. Copies text glyphs in the logical order, into preallocated array of the size returned by [method _shaped_text_get_glyph_count].
  1227. </description>
  1228. </method>
  1229. <method name="_shaped_text_substr" qualifiers="virtual const">
  1230. <return type="RID" />
  1231. <argument index="0" name="shaped" type="RID" />
  1232. <argument index="1" name="start" type="int" />
  1233. <argument index="2" name="length" type="int" />
  1234. <description>
  1235. Returns text buffer for the substring of the text in the [code]shaped[/code] text buffer (including inline objects).
  1236. </description>
  1237. </method>
  1238. <method name="_shaped_text_tab_align" qualifiers="virtual">
  1239. <return type="float" />
  1240. <argument index="0" name="shaped" type="RID" />
  1241. <argument index="1" name="tab_stops" type="PackedFloat32Array" />
  1242. <description>
  1243. Aligns shaped text to the given tab-stops.
  1244. </description>
  1245. </method>
  1246. <method name="_shaped_text_update_breaks" qualifiers="virtual">
  1247. <return type="bool" />
  1248. <argument index="0" name="shaped" type="RID" />
  1249. <description>
  1250. Updates line and word breaks.
  1251. </description>
  1252. </method>
  1253. <method name="_shaped_text_update_justification_ops" qualifiers="virtual">
  1254. <return type="bool" />
  1255. <argument index="0" name="shaped" type="RID" />
  1256. <description>
  1257. Updates justification opportunities (spaces, kashidas, etc.).
  1258. </description>
  1259. </method>
  1260. <method name="_tag_to_name" qualifiers="virtual const">
  1261. <return type="String" />
  1262. <argument index="0" name="tag" type="int" />
  1263. <description>
  1264. Converts OpenType tag to readable feature, variation, script or language name.
  1265. </description>
  1266. </method>
  1267. </methods>
  1268. </class>