comparison CSP2/CSP2_env/env-d9b9114564458d9d-741b3de822f2aaca6c6caa4325c4afce/share/gir-1.0/HarfBuzz-0.0.gir @ 68:5028fdace37b

planemo upload commit 2e9511a184a1ca667c7be0c6321a36dc4e3d116d
author jpayne
date Tue, 18 Mar 2025 16:23:26 -0400
parents
children
comparison
equal deleted inserted replaced
67:0e9998148a16 68:5028fdace37b
1 <?xml version="1.0"?>
2 <!-- This file was automatically generated from C sources - DO NOT EDIT!
3 To affect the contents of this file, edit the original C definitions,
4 and/or use gtk-doc annotations. -->
5 <repository version="1.2"
6 xmlns="http://www.gtk.org/introspection/core/1.0"
7 xmlns:c="http://www.gtk.org/introspection/c/1.0"
8 xmlns:glib="http://www.gtk.org/introspection/glib/1.0">
9 <include name="GObject" version="2.0"/>
10 <package name="harfbuzz-gobject"/>
11 <c:include name="hb-gobject.h"/>
12 <namespace name="HarfBuzz"
13 version="0.0"
14 shared-library="libharfbuzz-gobject.so.0"
15 c:identifier-prefixes="hb_"
16 c:symbol-prefixes="hb,hb_gobject">
17 <alias name="bool_t" c:type="hb_bool_t">
18 <source-position filename="../src/hb-common.h" line="92"/>
19 <type name="gint" c:type="int"/>
20 </alias>
21 <alias name="codepoint_t" c:type="hb_codepoint_t">
22 <source-position filename="../src/hb-common.h" line="94"/>
23 <type name="guint32" c:type="uint32_t"/>
24 </alias>
25 <alias name="color_t" c:type="hb_color_t">
26 <doc xml:space="preserve"
27 filename="../src/hb-common.h"
28 line="484">Data type for holding color values.</doc>
29 <source-position filename="../src/hb-common.h" line="491"/>
30 <type name="guint32" c:type="uint32_t"/>
31 </alias>
32 <alias name="font_get_font_h_extents_func_t"
33 c:type="hb_font_get_font_h_extents_func_t">
34 <source-position filename="../src/hb-font.h" line="116"/>
35 <type name="font_get_font_extents_func_t"
36 c:type="hb_font_get_font_extents_func_t"/>
37 </alias>
38 <alias name="font_get_font_v_extents_func_t"
39 c:type="hb_font_get_font_v_extents_func_t">
40 <source-position filename="../src/hb-font.h" line="117"/>
41 <type name="font_get_font_extents_func_t"
42 c:type="hb_font_get_font_extents_func_t"/>
43 </alias>
44 <alias name="font_get_glyph_h_advance_func_t"
45 c:type="hb_font_get_glyph_h_advance_func_t">
46 <source-position filename="../src/hb-font.h" line="141"/>
47 <type name="font_get_glyph_advance_func_t"
48 c:type="hb_font_get_glyph_advance_func_t"/>
49 </alias>
50 <alias name="font_get_glyph_h_advances_func_t"
51 c:type="hb_font_get_glyph_h_advances_func_t">
52 <source-position filename="../src/hb-font.h" line="151"/>
53 <type name="font_get_glyph_advances_func_t"
54 c:type="hb_font_get_glyph_advances_func_t"/>
55 </alias>
56 <alias name="font_get_glyph_h_kerning_func_t"
57 c:type="hb_font_get_glyph_h_kerning_func_t">
58 <source-position filename="../src/hb-font.h" line="164"/>
59 <type name="font_get_glyph_kerning_func_t"
60 c:type="hb_font_get_glyph_kerning_func_t"/>
61 </alias>
62 <alias name="font_get_glyph_h_origin_func_t"
63 c:type="hb_font_get_glyph_h_origin_func_t">
64 <source-position filename="../src/hb-font.h" line="158"/>
65 <type name="font_get_glyph_origin_func_t"
66 c:type="hb_font_get_glyph_origin_func_t"/>
67 </alias>
68 <alias name="font_get_glyph_v_advance_func_t"
69 c:type="hb_font_get_glyph_v_advance_func_t">
70 <source-position filename="../src/hb-font.h" line="142"/>
71 <type name="font_get_glyph_advance_func_t"
72 c:type="hb_font_get_glyph_advance_func_t"/>
73 </alias>
74 <alias name="font_get_glyph_v_advances_func_t"
75 c:type="hb_font_get_glyph_v_advances_func_t">
76 <source-position filename="../src/hb-font.h" line="152"/>
77 <type name="font_get_glyph_advances_func_t"
78 c:type="hb_font_get_glyph_advances_func_t"/>
79 </alias>
80 <alias name="font_get_glyph_v_kerning_func_t"
81 c:type="hb_font_get_glyph_v_kerning_func_t">
82 <source-position filename="../src/hb-deprecated.h" line="168"/>
83 <type name="font_get_glyph_kerning_func_t"
84 c:type="hb_font_get_glyph_kerning_func_t"/>
85 </alias>
86 <alias name="font_get_glyph_v_origin_func_t"
87 c:type="hb_font_get_glyph_v_origin_func_t">
88 <source-position filename="../src/hb-font.h" line="159"/>
89 <type name="font_get_glyph_origin_func_t"
90 c:type="hb_font_get_glyph_origin_func_t"/>
91 </alias>
92 <alias name="mask_t" c:type="hb_mask_t">
93 <source-position filename="../src/hb-common.h" line="96"/>
94 <type name="guint32" c:type="uint32_t"/>
95 </alias>
96 <alias name="ot_name_id_t" c:type="hb_ot_name_id_t">
97 <doc xml:space="preserve"
98 filename="../src/hb-ot-name.h"
99 line="37">An integral type representing an OpenType 'name' table name identifier.
100 There are predefined name IDs, as well as name IDs return from other
101 API. These can be used to fetch name strings from a font face.</doc>
102 <source-position filename="../src/hb-ot-name.h" line="79"/>
103 <type name="guint" c:type="unsigned int"/>
104 </alias>
105 <alias name="position_t" c:type="hb_position_t">
106 <source-position filename="../src/hb-common.h" line="95"/>
107 <type name="gint32" c:type="int32_t"/>
108 </alias>
109 <alias name="tag_t" c:type="hb_tag_t">
110 <source-position filename="../src/hb-common.h" line="110"/>
111 <type name="guint32" c:type="uint32_t"/>
112 </alias>
113 <constant name="AAT_LAYOUT_NO_SELECTOR_INDEX"
114 value="65535"
115 c:type="HB_AAT_LAYOUT_NO_SELECTOR_INDEX">
116 <source-position filename="../src/hb-aat-layout.h" line="449"/>
117 <type name="gint" c:type="gint"/>
118 </constant>
119 <constant name="BUFFER_REPLACEMENT_CODEPOINT_DEFAULT"
120 value="65533"
121 c:type="HB_BUFFER_REPLACEMENT_CODEPOINT_DEFAULT"
122 version="0.9.31">
123 <doc xml:space="preserve"
124 filename="../src/hb-buffer.h"
125 line="335">The default code point for replacing invalid characters in a given encoding.
126 Set to U+FFFD REPLACEMENT CHARACTER.</doc>
127 <source-position filename="../src/hb-buffer.h" line="339"/>
128 <type name="gint" c:type="gint"/>
129 </constant>
130 <function-macro name="COLOR" c:identifier="HB_COLOR" introspectable="0">
131 <source-position filename="../src/hb-common.h" line="493"/>
132 <parameters>
133 <parameter name="b">
134 </parameter>
135 <parameter name="g">
136 </parameter>
137 <parameter name="r">
138 </parameter>
139 <parameter name="a">
140 </parameter>
141 </parameters>
142 </function-macro>
143 <function-macro name="DEPRECATED_FOR"
144 c:identifier="HB_DEPRECATED_FOR"
145 introspectable="0">
146 <source-position filename="../src/hb-common.h" line="81"/>
147 <parameters>
148 <parameter name="f">
149 </parameter>
150 </parameters>
151 </function-macro>
152 <function-macro name="DIRECTION_IS_BACKWARD"
153 c:identifier="HB_DIRECTION_IS_BACKWARD"
154 introspectable="0">
155 <source-position filename="../src/hb-common.h" line="156"/>
156 <parameters>
157 <parameter name="dir">
158 </parameter>
159 </parameters>
160 </function-macro>
161 <function-macro name="DIRECTION_IS_FORWARD"
162 c:identifier="HB_DIRECTION_IS_FORWARD"
163 introspectable="0">
164 <source-position filename="../src/hb-common.h" line="155"/>
165 <parameters>
166 <parameter name="dir">
167 </parameter>
168 </parameters>
169 </function-macro>
170 <function-macro name="DIRECTION_IS_HORIZONTAL"
171 c:identifier="HB_DIRECTION_IS_HORIZONTAL"
172 introspectable="0">
173 <source-position filename="../src/hb-common.h" line="153"/>
174 <parameters>
175 <parameter name="dir">
176 </parameter>
177 </parameters>
178 </function-macro>
179 <function-macro name="DIRECTION_IS_VALID"
180 c:identifier="HB_DIRECTION_IS_VALID"
181 introspectable="0">
182 <source-position filename="../src/hb-common.h" line="151"/>
183 <parameters>
184 <parameter name="dir">
185 </parameter>
186 </parameters>
187 </function-macro>
188 <function-macro name="DIRECTION_IS_VERTICAL"
189 c:identifier="HB_DIRECTION_IS_VERTICAL"
190 introspectable="0">
191 <source-position filename="../src/hb-common.h" line="154"/>
192 <parameters>
193 <parameter name="dir">
194 </parameter>
195 </parameters>
196 </function-macro>
197 <function-macro name="DIRECTION_REVERSE"
198 c:identifier="HB_DIRECTION_REVERSE"
199 introspectable="0">
200 <source-position filename="../src/hb-common.h" line="157"/>
201 <parameters>
202 <parameter name="dir">
203 </parameter>
204 </parameters>
205 </function-macro>
206 <constant name="FEATURE_GLOBAL_START"
207 value="0"
208 c:type="HB_FEATURE_GLOBAL_START"
209 version="2.0.0">
210 <source-position filename="../src/hb-common.h" line="428"/>
211 <type name="gint" c:type="gint"/>
212 </constant>
213 <constant name="LANGUAGE_INVALID" value="0" c:type="HB_LANGUAGE_INVALID">
214 <source-position filename="../src/hb-common.h" line="170"/>
215 <type name="language_t" c:type="hb_language_t"/>
216 </constant>
217 <constant name="MAP_VALUE_INVALID"
218 value="4294967295"
219 c:type="HB_MAP_VALUE_INVALID">
220 <source-position filename="../src/hb-map.h" line="42"/>
221 <type name="codepoint_t" c:type="hb_codepoint_t"/>
222 </constant>
223 <constant name="OT_LAYOUT_DEFAULT_LANGUAGE_INDEX"
224 value="65535"
225 c:type="HB_OT_LAYOUT_DEFAULT_LANGUAGE_INDEX">
226 <source-position filename="../src/hb-ot-layout.h" line="149"/>
227 <type name="gint" c:type="gint"/>
228 </constant>
229 <constant name="OT_LAYOUT_NO_FEATURE_INDEX"
230 value="65535"
231 c:type="HB_OT_LAYOUT_NO_FEATURE_INDEX">
232 <source-position filename="../src/hb-ot-layout.h" line="148"/>
233 <type name="gint" c:type="gint"/>
234 </constant>
235 <constant name="OT_LAYOUT_NO_SCRIPT_INDEX"
236 value="65535"
237 c:type="HB_OT_LAYOUT_NO_SCRIPT_INDEX">
238 <source-position filename="../src/hb-ot-layout.h" line="147"/>
239 <type name="gint" c:type="gint"/>
240 </constant>
241 <constant name="OT_LAYOUT_NO_VARIATIONS_INDEX"
242 value="4294967295"
243 c:type="HB_OT_LAYOUT_NO_VARIATIONS_INDEX">
244 <source-position filename="../src/hb-ot-layout.h" line="150"/>
245 <type name="gint" c:type="gint"/>
246 </constant>
247 <constant name="OT_MAX_TAGS_PER_LANGUAGE"
248 value="3"
249 c:type="HB_OT_MAX_TAGS_PER_LANGUAGE"
250 version="2.0.0">
251 <source-position filename="../src/hb-ot-layout.h" line="66"/>
252 <type name="gint" c:type="gint"/>
253 </constant>
254 <constant name="OT_MAX_TAGS_PER_SCRIPT"
255 value="3"
256 c:type="HB_OT_MAX_TAGS_PER_SCRIPT"
257 version="2.0.0">
258 <source-position filename="../src/hb-ot-layout.h" line="60"/>
259 <type name="gint" c:type="gint"/>
260 </constant>
261 <constant name="OT_VAR_NO_AXIS_INDEX"
262 value="4294967295"
263 c:type="HB_OT_VAR_NO_AXIS_INDEX"
264 version="1.4.2"
265 deprecated="1"
266 deprecated-version="2.2.0">
267 <source-position filename="../src/hb-ot-deprecated.h" line="77"/>
268 <type name="gint" c:type="gint"/>
269 </constant>
270 <constant name="SET_VALUE_INVALID"
271 value="4294967295"
272 c:type="HB_SET_VALUE_INVALID">
273 <source-position filename="../src/hb-set.h" line="42"/>
274 <type name="codepoint_t" c:type="hb_codepoint_t"/>
275 </constant>
276 <function-macro name="TAG" c:identifier="HB_TAG" introspectable="0">
277 <source-position filename="../src/hb-common.h" line="112"/>
278 <parameters>
279 <parameter name="c1">
280 </parameter>
281 <parameter name="c2">
282 </parameter>
283 <parameter name="c3">
284 </parameter>
285 <parameter name="c4">
286 </parameter>
287 </parameters>
288 </function-macro>
289 <constant name="UNICODE_MAX"
290 value="1114111"
291 c:type="HB_UNICODE_MAX"
292 version="1.9.0">
293 <source-position filename="../src/hb-unicode.h" line="48"/>
294 <type name="gint" c:type="gint"/>
295 </constant>
296 <constant name="UNICODE_MAX_DECOMPOSITION_LEN"
297 value="19"
298 c:type="HB_UNICODE_MAX_DECOMPOSITION_LEN"
299 deprecated="1"
300 deprecated-version="2.0.0">
301 <doc xml:space="preserve"
302 filename="../src/hb-deprecated.h"
303 line="136">See Unicode 6.1 for details on the maximum decomposition length.</doc>
304 <source-position filename="../src/hb-deprecated.h" line="143"/>
305 <type name="gint" c:type="gint"/>
306 </constant>
307 <function-macro name="UNTAG" c:identifier="HB_UNTAG" introspectable="0">
308 <source-position filename="../src/hb-common.h" line="113"/>
309 <parameters>
310 <parameter name="tag">
311 </parameter>
312 </parameters>
313 </function-macro>
314 <function-macro name="VERSION_ATLEAST"
315 c:identifier="HB_VERSION_ATLEAST"
316 introspectable="0">
317 <source-position filename="../src/hb-version.h" line="45"/>
318 <parameters>
319 <parameter name="major">
320 </parameter>
321 <parameter name="minor">
322 </parameter>
323 <parameter name="micro">
324 </parameter>
325 </parameters>
326 </function-macro>
327 <constant name="VERSION_MAJOR" value="2" c:type="HB_VERSION_MAJOR">
328 <source-position filename="../src/hb-version.h" line="39"/>
329 <type name="gint" c:type="gint"/>
330 </constant>
331 <constant name="VERSION_MICRO" value="2" c:type="HB_VERSION_MICRO">
332 <source-position filename="../src/hb-version.h" line="41"/>
333 <type name="gint" c:type="gint"/>
334 </constant>
335 <constant name="VERSION_MINOR" value="7" c:type="HB_VERSION_MINOR">
336 <source-position filename="../src/hb-version.h" line="40"/>
337 <type name="gint" c:type="gint"/>
338 </constant>
339 <constant name="VERSION_STRING" value="2.7.2" c:type="HB_VERSION_STRING">
340 <source-position filename="../src/hb-version.h" line="43"/>
341 <type name="utf8" c:type="gchar*"/>
342 </constant>
343 <enumeration name="aat_layout_feature_selector_t"
344 version="2.2.0"
345 glib:type-name="hb_aat_layout_feature_selector_t"
346 glib:get-type="hb_gobject_aat_layout_feature_selector_get_type"
347 c:type="hb_aat_layout_feature_selector_t">
348 <member name="invalid"
349 value="65535"
350 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_INVALID"
351 glib:nick="invalid">
352 </member>
353 <member name="all_type_features_on"
354 value="0"
355 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ALL_TYPE_FEATURES_ON"
356 glib:nick="all-type-features-on">
357 </member>
358 <member name="all_type_features_off"
359 value="1"
360 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ALL_TYPE_FEATURES_OFF"
361 glib:nick="all-type-features-off">
362 </member>
363 <member name="required_ligatures_on"
364 value="0"
365 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_REQUIRED_LIGATURES_ON"
366 glib:nick="required-ligatures-on">
367 </member>
368 <member name="required_ligatures_off"
369 value="1"
370 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_REQUIRED_LIGATURES_OFF"
371 glib:nick="required-ligatures-off">
372 </member>
373 <member name="common_ligatures_on"
374 value="2"
375 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_COMMON_LIGATURES_ON"
376 glib:nick="common-ligatures-on">
377 </member>
378 <member name="common_ligatures_off"
379 value="3"
380 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_COMMON_LIGATURES_OFF"
381 glib:nick="common-ligatures-off">
382 </member>
383 <member name="rare_ligatures_on"
384 value="4"
385 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_RARE_LIGATURES_ON"
386 glib:nick="rare-ligatures-on">
387 </member>
388 <member name="rare_ligatures_off"
389 value="5"
390 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_RARE_LIGATURES_OFF"
391 glib:nick="rare-ligatures-off">
392 </member>
393 <member name="logos_on"
394 value="6"
395 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_LOGOS_ON"
396 glib:nick="logos-on">
397 </member>
398 <member name="logos_off"
399 value="7"
400 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_LOGOS_OFF"
401 glib:nick="logos-off">
402 </member>
403 <member name="rebus_pictures_on"
404 value="8"
405 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_REBUS_PICTURES_ON"
406 glib:nick="rebus-pictures-on">
407 </member>
408 <member name="rebus_pictures_off"
409 value="9"
410 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_REBUS_PICTURES_OFF"
411 glib:nick="rebus-pictures-off">
412 </member>
413 <member name="diphthong_ligatures_on"
414 value="10"
415 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_DIPHTHONG_LIGATURES_ON"
416 glib:nick="diphthong-ligatures-on">
417 </member>
418 <member name="diphthong_ligatures_off"
419 value="11"
420 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_DIPHTHONG_LIGATURES_OFF"
421 glib:nick="diphthong-ligatures-off">
422 </member>
423 <member name="squared_ligatures_on"
424 value="12"
425 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SQUARED_LIGATURES_ON"
426 glib:nick="squared-ligatures-on">
427 </member>
428 <member name="squared_ligatures_off"
429 value="13"
430 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SQUARED_LIGATURES_OFF"
431 glib:nick="squared-ligatures-off">
432 </member>
433 <member name="abbrev_squared_ligatures_on"
434 value="14"
435 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ABBREV_SQUARED_LIGATURES_ON"
436 glib:nick="abbrev-squared-ligatures-on">
437 </member>
438 <member name="abbrev_squared_ligatures_off"
439 value="15"
440 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ABBREV_SQUARED_LIGATURES_OFF"
441 glib:nick="abbrev-squared-ligatures-off">
442 </member>
443 <member name="symbol_ligatures_on"
444 value="16"
445 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SYMBOL_LIGATURES_ON"
446 glib:nick="symbol-ligatures-on">
447 </member>
448 <member name="symbol_ligatures_off"
449 value="17"
450 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SYMBOL_LIGATURES_OFF"
451 glib:nick="symbol-ligatures-off">
452 </member>
453 <member name="contextual_ligatures_on"
454 value="18"
455 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CONTEXTUAL_LIGATURES_ON"
456 glib:nick="contextual-ligatures-on">
457 </member>
458 <member name="contextual_ligatures_off"
459 value="19"
460 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CONTEXTUAL_LIGATURES_OFF"
461 glib:nick="contextual-ligatures-off">
462 </member>
463 <member name="historical_ligatures_on"
464 value="20"
465 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HISTORICAL_LIGATURES_ON"
466 glib:nick="historical-ligatures-on">
467 </member>
468 <member name="historical_ligatures_off"
469 value="21"
470 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HISTORICAL_LIGATURES_OFF"
471 glib:nick="historical-ligatures-off">
472 </member>
473 <member name="unconnected"
474 value="0"
475 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_UNCONNECTED"
476 glib:nick="unconnected">
477 </member>
478 <member name="partially_connected"
479 value="1"
480 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_PARTIALLY_CONNECTED"
481 glib:nick="partially-connected">
482 </member>
483 <member name="cursive"
484 value="2"
485 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CURSIVE"
486 glib:nick="cursive">
487 </member>
488 <member name="upper_and_lower_case"
489 value="0"
490 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_UPPER_AND_LOWER_CASE"
491 glib:nick="upper-and-lower-case">
492 </member>
493 <member name="all_caps"
494 value="1"
495 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ALL_CAPS"
496 glib:nick="all-caps">
497 </member>
498 <member name="all_lower_case"
499 value="2"
500 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ALL_LOWER_CASE"
501 glib:nick="all-lower-case">
502 </member>
503 <member name="small_caps"
504 value="3"
505 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SMALL_CAPS"
506 glib:nick="small-caps">
507 </member>
508 <member name="initial_caps"
509 value="4"
510 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_INITIAL_CAPS"
511 glib:nick="initial-caps">
512 </member>
513 <member name="initial_caps_and_small_caps"
514 value="5"
515 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_INITIAL_CAPS_AND_SMALL_CAPS"
516 glib:nick="initial-caps-and-small-caps">
517 </member>
518 <member name="substitute_vertical_forms_on"
519 value="0"
520 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SUBSTITUTE_VERTICAL_FORMS_ON"
521 glib:nick="substitute-vertical-forms-on">
522 </member>
523 <member name="substitute_vertical_forms_off"
524 value="1"
525 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SUBSTITUTE_VERTICAL_FORMS_OFF"
526 glib:nick="substitute-vertical-forms-off">
527 </member>
528 <member name="linguistic_rearrangement_on"
529 value="0"
530 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_LINGUISTIC_REARRANGEMENT_ON"
531 glib:nick="linguistic-rearrangement-on">
532 </member>
533 <member name="linguistic_rearrangement_off"
534 value="1"
535 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_LINGUISTIC_REARRANGEMENT_OFF"
536 glib:nick="linguistic-rearrangement-off">
537 </member>
538 <member name="monospaced_numbers"
539 value="0"
540 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_MONOSPACED_NUMBERS"
541 glib:nick="monospaced-numbers">
542 </member>
543 <member name="proportional_numbers"
544 value="1"
545 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_PROPORTIONAL_NUMBERS"
546 glib:nick="proportional-numbers">
547 </member>
548 <member name="third_width_numbers"
549 value="2"
550 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_THIRD_WIDTH_NUMBERS"
551 glib:nick="third-width-numbers">
552 </member>
553 <member name="quarter_width_numbers"
554 value="3"
555 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_QUARTER_WIDTH_NUMBERS"
556 glib:nick="quarter-width-numbers">
557 </member>
558 <member name="word_initial_swashes_on"
559 value="0"
560 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_WORD_INITIAL_SWASHES_ON"
561 glib:nick="word-initial-swashes-on">
562 </member>
563 <member name="word_initial_swashes_off"
564 value="1"
565 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_WORD_INITIAL_SWASHES_OFF"
566 glib:nick="word-initial-swashes-off">
567 </member>
568 <member name="word_final_swashes_on"
569 value="2"
570 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_WORD_FINAL_SWASHES_ON"
571 glib:nick="word-final-swashes-on">
572 </member>
573 <member name="word_final_swashes_off"
574 value="3"
575 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_WORD_FINAL_SWASHES_OFF"
576 glib:nick="word-final-swashes-off">
577 </member>
578 <member name="line_initial_swashes_on"
579 value="4"
580 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_LINE_INITIAL_SWASHES_ON"
581 glib:nick="line-initial-swashes-on">
582 </member>
583 <member name="line_initial_swashes_off"
584 value="5"
585 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_LINE_INITIAL_SWASHES_OFF"
586 glib:nick="line-initial-swashes-off">
587 </member>
588 <member name="line_final_swashes_on"
589 value="6"
590 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_LINE_FINAL_SWASHES_ON"
591 glib:nick="line-final-swashes-on">
592 </member>
593 <member name="line_final_swashes_off"
594 value="7"
595 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_LINE_FINAL_SWASHES_OFF"
596 glib:nick="line-final-swashes-off">
597 </member>
598 <member name="non_final_swashes_on"
599 value="8"
600 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_NON_FINAL_SWASHES_ON"
601 glib:nick="non-final-swashes-on">
602 </member>
603 <member name="non_final_swashes_off"
604 value="9"
605 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_NON_FINAL_SWASHES_OFF"
606 glib:nick="non-final-swashes-off">
607 </member>
608 <member name="show_diacritics"
609 value="0"
610 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SHOW_DIACRITICS"
611 glib:nick="show-diacritics">
612 </member>
613 <member name="hide_diacritics"
614 value="1"
615 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HIDE_DIACRITICS"
616 glib:nick="hide-diacritics">
617 </member>
618 <member name="decompose_diacritics"
619 value="2"
620 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_DECOMPOSE_DIACRITICS"
621 glib:nick="decompose-diacritics">
622 </member>
623 <member name="normal_position"
624 value="0"
625 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_NORMAL_POSITION"
626 glib:nick="normal-position">
627 </member>
628 <member name="superiors"
629 value="1"
630 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SUPERIORS"
631 glib:nick="superiors">
632 </member>
633 <member name="inferiors"
634 value="2"
635 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_INFERIORS"
636 glib:nick="inferiors">
637 </member>
638 <member name="ordinals"
639 value="3"
640 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ORDINALS"
641 glib:nick="ordinals">
642 </member>
643 <member name="scientific_inferiors"
644 value="4"
645 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SCIENTIFIC_INFERIORS"
646 glib:nick="scientific-inferiors">
647 </member>
648 <member name="no_fractions"
649 value="0"
650 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_FRACTIONS"
651 glib:nick="no-fractions">
652 </member>
653 <member name="vertical_fractions"
654 value="1"
655 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_VERTICAL_FRACTIONS"
656 glib:nick="vertical-fractions">
657 </member>
658 <member name="diagonal_fractions"
659 value="2"
660 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_DIAGONAL_FRACTIONS"
661 glib:nick="diagonal-fractions">
662 </member>
663 <member name="prevent_overlap_on"
664 value="0"
665 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_PREVENT_OVERLAP_ON"
666 glib:nick="prevent-overlap-on">
667 </member>
668 <member name="prevent_overlap_off"
669 value="1"
670 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_PREVENT_OVERLAP_OFF"
671 glib:nick="prevent-overlap-off">
672 </member>
673 <member name="hyphens_to_em_dash_on"
674 value="0"
675 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HYPHENS_TO_EM_DASH_ON"
676 glib:nick="hyphens-to-em-dash-on">
677 </member>
678 <member name="hyphens_to_em_dash_off"
679 value="1"
680 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HYPHENS_TO_EM_DASH_OFF"
681 glib:nick="hyphens-to-em-dash-off">
682 </member>
683 <member name="hyphen_to_en_dash_on"
684 value="2"
685 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HYPHEN_TO_EN_DASH_ON"
686 glib:nick="hyphen-to-en-dash-on">
687 </member>
688 <member name="hyphen_to_en_dash_off"
689 value="3"
690 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HYPHEN_TO_EN_DASH_OFF"
691 glib:nick="hyphen-to-en-dash-off">
692 </member>
693 <member name="slashed_zero_on"
694 value="4"
695 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SLASHED_ZERO_ON"
696 glib:nick="slashed-zero-on">
697 </member>
698 <member name="slashed_zero_off"
699 value="5"
700 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SLASHED_ZERO_OFF"
701 glib:nick="slashed-zero-off">
702 </member>
703 <member name="form_interrobang_on"
704 value="6"
705 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_FORM_INTERROBANG_ON"
706 glib:nick="form-interrobang-on">
707 </member>
708 <member name="form_interrobang_off"
709 value="7"
710 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_FORM_INTERROBANG_OFF"
711 glib:nick="form-interrobang-off">
712 </member>
713 <member name="smart_quotes_on"
714 value="8"
715 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SMART_QUOTES_ON"
716 glib:nick="smart-quotes-on">
717 </member>
718 <member name="smart_quotes_off"
719 value="9"
720 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SMART_QUOTES_OFF"
721 glib:nick="smart-quotes-off">
722 </member>
723 <member name="periods_to_ellipsis_on"
724 value="10"
725 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_PERIODS_TO_ELLIPSIS_ON"
726 glib:nick="periods-to-ellipsis-on">
727 </member>
728 <member name="periods_to_ellipsis_off"
729 value="11"
730 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_PERIODS_TO_ELLIPSIS_OFF"
731 glib:nick="periods-to-ellipsis-off">
732 </member>
733 <member name="hyphen_to_minus_on"
734 value="0"
735 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HYPHEN_TO_MINUS_ON"
736 glib:nick="hyphen-to-minus-on">
737 </member>
738 <member name="hyphen_to_minus_off"
739 value="1"
740 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HYPHEN_TO_MINUS_OFF"
741 glib:nick="hyphen-to-minus-off">
742 </member>
743 <member name="asterisk_to_multiply_on"
744 value="2"
745 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ASTERISK_TO_MULTIPLY_ON"
746 glib:nick="asterisk-to-multiply-on">
747 </member>
748 <member name="asterisk_to_multiply_off"
749 value="3"
750 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ASTERISK_TO_MULTIPLY_OFF"
751 glib:nick="asterisk-to-multiply-off">
752 </member>
753 <member name="slash_to_divide_on"
754 value="4"
755 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SLASH_TO_DIVIDE_ON"
756 glib:nick="slash-to-divide-on">
757 </member>
758 <member name="slash_to_divide_off"
759 value="5"
760 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SLASH_TO_DIVIDE_OFF"
761 glib:nick="slash-to-divide-off">
762 </member>
763 <member name="inequality_ligatures_on"
764 value="6"
765 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_INEQUALITY_LIGATURES_ON"
766 glib:nick="inequality-ligatures-on">
767 </member>
768 <member name="inequality_ligatures_off"
769 value="7"
770 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_INEQUALITY_LIGATURES_OFF"
771 glib:nick="inequality-ligatures-off">
772 </member>
773 <member name="exponents_on"
774 value="8"
775 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_EXPONENTS_ON"
776 glib:nick="exponents-on">
777 </member>
778 <member name="exponents_off"
779 value="9"
780 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_EXPONENTS_OFF"
781 glib:nick="exponents-off">
782 </member>
783 <member name="mathematical_greek_on"
784 value="10"
785 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_MATHEMATICAL_GREEK_ON"
786 glib:nick="mathematical-greek-on">
787 </member>
788 <member name="mathematical_greek_off"
789 value="11"
790 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_MATHEMATICAL_GREEK_OFF"
791 glib:nick="mathematical-greek-off">
792 </member>
793 <member name="no_ornaments"
794 value="0"
795 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_ORNAMENTS"
796 glib:nick="no-ornaments">
797 </member>
798 <member name="dingbats"
799 value="1"
800 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_DINGBATS"
801 glib:nick="dingbats">
802 </member>
803 <member name="pi_characters"
804 value="2"
805 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_PI_CHARACTERS"
806 glib:nick="pi-characters">
807 </member>
808 <member name="fleurons"
809 value="3"
810 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_FLEURONS"
811 glib:nick="fleurons">
812 </member>
813 <member name="decorative_borders"
814 value="4"
815 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_DECORATIVE_BORDERS"
816 glib:nick="decorative-borders">
817 </member>
818 <member name="international_symbols"
819 value="5"
820 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_INTERNATIONAL_SYMBOLS"
821 glib:nick="international-symbols">
822 </member>
823 <member name="math_symbols"
824 value="6"
825 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_MATH_SYMBOLS"
826 glib:nick="math-symbols">
827 </member>
828 <member name="no_alternates"
829 value="0"
830 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_ALTERNATES"
831 glib:nick="no-alternates">
832 </member>
833 <member name="design_level1"
834 value="0"
835 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_DESIGN_LEVEL1"
836 glib:nick="design-level1">
837 </member>
838 <member name="design_level2"
839 value="1"
840 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_DESIGN_LEVEL2"
841 glib:nick="design-level2">
842 </member>
843 <member name="design_level3"
844 value="2"
845 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_DESIGN_LEVEL3"
846 glib:nick="design-level3">
847 </member>
848 <member name="design_level4"
849 value="3"
850 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_DESIGN_LEVEL4"
851 glib:nick="design-level4">
852 </member>
853 <member name="design_level5"
854 value="4"
855 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_DESIGN_LEVEL5"
856 glib:nick="design-level5">
857 </member>
858 <member name="no_style_options"
859 value="0"
860 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_STYLE_OPTIONS"
861 glib:nick="no-style-options">
862 </member>
863 <member name="display_text"
864 value="1"
865 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_DISPLAY_TEXT"
866 glib:nick="display-text">
867 </member>
868 <member name="engraved_text"
869 value="2"
870 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ENGRAVED_TEXT"
871 glib:nick="engraved-text">
872 </member>
873 <member name="illuminated_caps"
874 value="3"
875 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ILLUMINATED_CAPS"
876 glib:nick="illuminated-caps">
877 </member>
878 <member name="titling_caps"
879 value="4"
880 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_TITLING_CAPS"
881 glib:nick="titling-caps">
882 </member>
883 <member name="tall_caps"
884 value="5"
885 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_TALL_CAPS"
886 glib:nick="tall-caps">
887 </member>
888 <member name="traditional_characters"
889 value="0"
890 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_TRADITIONAL_CHARACTERS"
891 glib:nick="traditional-characters">
892 </member>
893 <member name="simplified_characters"
894 value="1"
895 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SIMPLIFIED_CHARACTERS"
896 glib:nick="simplified-characters">
897 </member>
898 <member name="jis1978_characters"
899 value="2"
900 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_JIS1978_CHARACTERS"
901 glib:nick="jis1978-characters">
902 </member>
903 <member name="jis1983_characters"
904 value="3"
905 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_JIS1983_CHARACTERS"
906 glib:nick="jis1983-characters">
907 </member>
908 <member name="jis1990_characters"
909 value="4"
910 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_JIS1990_CHARACTERS"
911 glib:nick="jis1990-characters">
912 </member>
913 <member name="traditional_alt_one"
914 value="5"
915 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_TRADITIONAL_ALT_ONE"
916 glib:nick="traditional-alt-one">
917 </member>
918 <member name="traditional_alt_two"
919 value="6"
920 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_TRADITIONAL_ALT_TWO"
921 glib:nick="traditional-alt-two">
922 </member>
923 <member name="traditional_alt_three"
924 value="7"
925 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_TRADITIONAL_ALT_THREE"
926 glib:nick="traditional-alt-three">
927 </member>
928 <member name="traditional_alt_four"
929 value="8"
930 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_TRADITIONAL_ALT_FOUR"
931 glib:nick="traditional-alt-four">
932 </member>
933 <member name="traditional_alt_five"
934 value="9"
935 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_TRADITIONAL_ALT_FIVE"
936 glib:nick="traditional-alt-five">
937 </member>
938 <member name="expert_characters"
939 value="10"
940 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_EXPERT_CHARACTERS"
941 glib:nick="expert-characters">
942 </member>
943 <member name="jis2004_characters"
944 value="11"
945 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_JIS2004_CHARACTERS"
946 glib:nick="jis2004-characters">
947 </member>
948 <member name="hojo_characters"
949 value="12"
950 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HOJO_CHARACTERS"
951 glib:nick="hojo-characters">
952 </member>
953 <member name="nlccharacters"
954 value="13"
955 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_NLCCHARACTERS"
956 glib:nick="nlccharacters">
957 </member>
958 <member name="traditional_names_characters"
959 value="14"
960 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_TRADITIONAL_NAMES_CHARACTERS"
961 glib:nick="traditional-names-characters">
962 </member>
963 <member name="lower_case_numbers"
964 value="0"
965 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_LOWER_CASE_NUMBERS"
966 glib:nick="lower-case-numbers">
967 </member>
968 <member name="upper_case_numbers"
969 value="1"
970 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_UPPER_CASE_NUMBERS"
971 glib:nick="upper-case-numbers">
972 </member>
973 <member name="proportional_text"
974 value="0"
975 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_PROPORTIONAL_TEXT"
976 glib:nick="proportional-text">
977 </member>
978 <member name="monospaced_text"
979 value="1"
980 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_MONOSPACED_TEXT"
981 glib:nick="monospaced-text">
982 </member>
983 <member name="half_width_text"
984 value="2"
985 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HALF_WIDTH_TEXT"
986 glib:nick="half-width-text">
987 </member>
988 <member name="third_width_text"
989 value="3"
990 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_THIRD_WIDTH_TEXT"
991 glib:nick="third-width-text">
992 </member>
993 <member name="quarter_width_text"
994 value="4"
995 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_QUARTER_WIDTH_TEXT"
996 glib:nick="quarter-width-text">
997 </member>
998 <member name="alt_proportional_text"
999 value="5"
1000 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ALT_PROPORTIONAL_TEXT"
1001 glib:nick="alt-proportional-text">
1002 </member>
1003 <member name="alt_half_width_text"
1004 value="6"
1005 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ALT_HALF_WIDTH_TEXT"
1006 glib:nick="alt-half-width-text">
1007 </member>
1008 <member name="no_transliteration"
1009 value="0"
1010 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_TRANSLITERATION"
1011 glib:nick="no-transliteration">
1012 </member>
1013 <member name="hanja_to_hangul"
1014 value="1"
1015 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HANJA_TO_HANGUL"
1016 glib:nick="hanja-to-hangul">
1017 </member>
1018 <member name="hiragana_to_katakana"
1019 value="2"
1020 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HIRAGANA_TO_KATAKANA"
1021 glib:nick="hiragana-to-katakana">
1022 </member>
1023 <member name="katakana_to_hiragana"
1024 value="3"
1025 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_KATAKANA_TO_HIRAGANA"
1026 glib:nick="katakana-to-hiragana">
1027 </member>
1028 <member name="kana_to_romanization"
1029 value="4"
1030 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_KANA_TO_ROMANIZATION"
1031 glib:nick="kana-to-romanization">
1032 </member>
1033 <member name="romanization_to_hiragana"
1034 value="5"
1035 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ROMANIZATION_TO_HIRAGANA"
1036 glib:nick="romanization-to-hiragana">
1037 </member>
1038 <member name="romanization_to_katakana"
1039 value="6"
1040 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ROMANIZATION_TO_KATAKANA"
1041 glib:nick="romanization-to-katakana">
1042 </member>
1043 <member name="hanja_to_hangul_alt_one"
1044 value="7"
1045 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HANJA_TO_HANGUL_ALT_ONE"
1046 glib:nick="hanja-to-hangul-alt-one">
1047 </member>
1048 <member name="hanja_to_hangul_alt_two"
1049 value="8"
1050 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HANJA_TO_HANGUL_ALT_TWO"
1051 glib:nick="hanja-to-hangul-alt-two">
1052 </member>
1053 <member name="hanja_to_hangul_alt_three"
1054 value="9"
1055 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HANJA_TO_HANGUL_ALT_THREE"
1056 glib:nick="hanja-to-hangul-alt-three">
1057 </member>
1058 <member name="no_annotation"
1059 value="0"
1060 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_ANNOTATION"
1061 glib:nick="no-annotation">
1062 </member>
1063 <member name="box_annotation"
1064 value="1"
1065 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_BOX_ANNOTATION"
1066 glib:nick="box-annotation">
1067 </member>
1068 <member name="rounded_box_annotation"
1069 value="2"
1070 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ROUNDED_BOX_ANNOTATION"
1071 glib:nick="rounded-box-annotation">
1072 </member>
1073 <member name="circle_annotation"
1074 value="3"
1075 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CIRCLE_ANNOTATION"
1076 glib:nick="circle-annotation">
1077 </member>
1078 <member name="inverted_circle_annotation"
1079 value="4"
1080 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_INVERTED_CIRCLE_ANNOTATION"
1081 glib:nick="inverted-circle-annotation">
1082 </member>
1083 <member name="parenthesis_annotation"
1084 value="5"
1085 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_PARENTHESIS_ANNOTATION"
1086 glib:nick="parenthesis-annotation">
1087 </member>
1088 <member name="period_annotation"
1089 value="6"
1090 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_PERIOD_ANNOTATION"
1091 glib:nick="period-annotation">
1092 </member>
1093 <member name="roman_numeral_annotation"
1094 value="7"
1095 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ROMAN_NUMERAL_ANNOTATION"
1096 glib:nick="roman-numeral-annotation">
1097 </member>
1098 <member name="diamond_annotation"
1099 value="8"
1100 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_DIAMOND_ANNOTATION"
1101 glib:nick="diamond-annotation">
1102 </member>
1103 <member name="inverted_box_annotation"
1104 value="9"
1105 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_INVERTED_BOX_ANNOTATION"
1106 glib:nick="inverted-box-annotation">
1107 </member>
1108 <member name="inverted_rounded_box_annotation"
1109 value="10"
1110 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_INVERTED_ROUNDED_BOX_ANNOTATION"
1111 glib:nick="inverted-rounded-box-annotation">
1112 </member>
1113 <member name="full_width_kana"
1114 value="0"
1115 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_FULL_WIDTH_KANA"
1116 glib:nick="full-width-kana">
1117 </member>
1118 <member name="proportional_kana"
1119 value="1"
1120 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_PROPORTIONAL_KANA"
1121 glib:nick="proportional-kana">
1122 </member>
1123 <member name="full_width_ideographs"
1124 value="0"
1125 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_FULL_WIDTH_IDEOGRAPHS"
1126 glib:nick="full-width-ideographs">
1127 </member>
1128 <member name="proportional_ideographs"
1129 value="1"
1130 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_PROPORTIONAL_IDEOGRAPHS"
1131 glib:nick="proportional-ideographs">
1132 </member>
1133 <member name="half_width_ideographs"
1134 value="2"
1135 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HALF_WIDTH_IDEOGRAPHS"
1136 glib:nick="half-width-ideographs">
1137 </member>
1138 <member name="canonical_composition_on"
1139 value="0"
1140 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CANONICAL_COMPOSITION_ON"
1141 glib:nick="canonical-composition-on">
1142 </member>
1143 <member name="canonical_composition_off"
1144 value="1"
1145 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CANONICAL_COMPOSITION_OFF"
1146 glib:nick="canonical-composition-off">
1147 </member>
1148 <member name="compatibility_composition_on"
1149 value="2"
1150 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_COMPATIBILITY_COMPOSITION_ON"
1151 glib:nick="compatibility-composition-on">
1152 </member>
1153 <member name="compatibility_composition_off"
1154 value="3"
1155 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_COMPATIBILITY_COMPOSITION_OFF"
1156 glib:nick="compatibility-composition-off">
1157 </member>
1158 <member name="transcoding_composition_on"
1159 value="4"
1160 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_TRANSCODING_COMPOSITION_ON"
1161 glib:nick="transcoding-composition-on">
1162 </member>
1163 <member name="transcoding_composition_off"
1164 value="5"
1165 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_TRANSCODING_COMPOSITION_OFF"
1166 glib:nick="transcoding-composition-off">
1167 </member>
1168 <member name="no_ruby_kana"
1169 value="0"
1170 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_RUBY_KANA"
1171 glib:nick="no-ruby-kana">
1172 </member>
1173 <member name="ruby_kana"
1174 value="1"
1175 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_RUBY_KANA"
1176 glib:nick="ruby-kana">
1177 </member>
1178 <member name="ruby_kana_on"
1179 value="2"
1180 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_RUBY_KANA_ON"
1181 glib:nick="ruby-kana-on">
1182 </member>
1183 <member name="ruby_kana_off"
1184 value="3"
1185 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_RUBY_KANA_OFF"
1186 glib:nick="ruby-kana-off">
1187 </member>
1188 <member name="no_cjk_symbol_alternatives"
1189 value="0"
1190 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_CJK_SYMBOL_ALTERNATIVES"
1191 glib:nick="no-cjk-symbol-alternatives">
1192 </member>
1193 <member name="cjk_symbol_alt_one"
1194 value="1"
1195 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_SYMBOL_ALT_ONE"
1196 glib:nick="cjk-symbol-alt-one">
1197 </member>
1198 <member name="cjk_symbol_alt_two"
1199 value="2"
1200 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_SYMBOL_ALT_TWO"
1201 glib:nick="cjk-symbol-alt-two">
1202 </member>
1203 <member name="cjk_symbol_alt_three"
1204 value="3"
1205 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_SYMBOL_ALT_THREE"
1206 glib:nick="cjk-symbol-alt-three">
1207 </member>
1208 <member name="cjk_symbol_alt_four"
1209 value="4"
1210 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_SYMBOL_ALT_FOUR"
1211 glib:nick="cjk-symbol-alt-four">
1212 </member>
1213 <member name="cjk_symbol_alt_five"
1214 value="5"
1215 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_SYMBOL_ALT_FIVE"
1216 glib:nick="cjk-symbol-alt-five">
1217 </member>
1218 <member name="no_ideographic_alternatives"
1219 value="0"
1220 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_IDEOGRAPHIC_ALTERNATIVES"
1221 glib:nick="no-ideographic-alternatives">
1222 </member>
1223 <member name="ideographic_alt_one"
1224 value="1"
1225 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_IDEOGRAPHIC_ALT_ONE"
1226 glib:nick="ideographic-alt-one">
1227 </member>
1228 <member name="ideographic_alt_two"
1229 value="2"
1230 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_IDEOGRAPHIC_ALT_TWO"
1231 glib:nick="ideographic-alt-two">
1232 </member>
1233 <member name="ideographic_alt_three"
1234 value="3"
1235 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_IDEOGRAPHIC_ALT_THREE"
1236 glib:nick="ideographic-alt-three">
1237 </member>
1238 <member name="ideographic_alt_four"
1239 value="4"
1240 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_IDEOGRAPHIC_ALT_FOUR"
1241 glib:nick="ideographic-alt-four">
1242 </member>
1243 <member name="ideographic_alt_five"
1244 value="5"
1245 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_IDEOGRAPHIC_ALT_FIVE"
1246 glib:nick="ideographic-alt-five">
1247 </member>
1248 <member name="cjk_vertical_roman_centered"
1249 value="0"
1250 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_VERTICAL_ROMAN_CENTERED"
1251 glib:nick="cjk-vertical-roman-centered">
1252 </member>
1253 <member name="cjk_vertical_roman_hbaseline"
1254 value="1"
1255 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_VERTICAL_ROMAN_HBASELINE"
1256 glib:nick="cjk-vertical-roman-hbaseline">
1257 </member>
1258 <member name="no_cjk_italic_roman"
1259 value="0"
1260 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_CJK_ITALIC_ROMAN"
1261 glib:nick="no-cjk-italic-roman">
1262 </member>
1263 <member name="cjk_italic_roman"
1264 value="1"
1265 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_ITALIC_ROMAN"
1266 glib:nick="cjk-italic-roman">
1267 </member>
1268 <member name="cjk_italic_roman_on"
1269 value="2"
1270 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_ITALIC_ROMAN_ON"
1271 glib:nick="cjk-italic-roman-on">
1272 </member>
1273 <member name="cjk_italic_roman_off"
1274 value="3"
1275 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CJK_ITALIC_ROMAN_OFF"
1276 glib:nick="cjk-italic-roman-off">
1277 </member>
1278 <member name="case_sensitive_layout_on"
1279 value="0"
1280 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CASE_SENSITIVE_LAYOUT_ON"
1281 glib:nick="case-sensitive-layout-on">
1282 </member>
1283 <member name="case_sensitive_layout_off"
1284 value="1"
1285 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CASE_SENSITIVE_LAYOUT_OFF"
1286 glib:nick="case-sensitive-layout-off">
1287 </member>
1288 <member name="case_sensitive_spacing_on"
1289 value="2"
1290 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CASE_SENSITIVE_SPACING_ON"
1291 glib:nick="case-sensitive-spacing-on">
1292 </member>
1293 <member name="case_sensitive_spacing_off"
1294 value="3"
1295 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CASE_SENSITIVE_SPACING_OFF"
1296 glib:nick="case-sensitive-spacing-off">
1297 </member>
1298 <member name="alternate_horiz_kana_on"
1299 value="0"
1300 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ALTERNATE_HORIZ_KANA_ON"
1301 glib:nick="alternate-horiz-kana-on">
1302 </member>
1303 <member name="alternate_horiz_kana_off"
1304 value="1"
1305 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ALTERNATE_HORIZ_KANA_OFF"
1306 glib:nick="alternate-horiz-kana-off">
1307 </member>
1308 <member name="alternate_vert_kana_on"
1309 value="2"
1310 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ALTERNATE_VERT_KANA_ON"
1311 glib:nick="alternate-vert-kana-on">
1312 </member>
1313 <member name="alternate_vert_kana_off"
1314 value="3"
1315 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_ALTERNATE_VERT_KANA_OFF"
1316 glib:nick="alternate-vert-kana-off">
1317 </member>
1318 <member name="no_stylistic_alternates"
1319 value="0"
1320 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_NO_STYLISTIC_ALTERNATES"
1321 glib:nick="no-stylistic-alternates">
1322 </member>
1323 <member name="stylistic_alt_one_on"
1324 value="2"
1325 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_ONE_ON"
1326 glib:nick="stylistic-alt-one-on">
1327 </member>
1328 <member name="stylistic_alt_one_off"
1329 value="3"
1330 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_ONE_OFF"
1331 glib:nick="stylistic-alt-one-off">
1332 </member>
1333 <member name="stylistic_alt_two_on"
1334 value="4"
1335 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_TWO_ON"
1336 glib:nick="stylistic-alt-two-on">
1337 </member>
1338 <member name="stylistic_alt_two_off"
1339 value="5"
1340 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_TWO_OFF"
1341 glib:nick="stylistic-alt-two-off">
1342 </member>
1343 <member name="stylistic_alt_three_on"
1344 value="6"
1345 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_THREE_ON"
1346 glib:nick="stylistic-alt-three-on">
1347 </member>
1348 <member name="stylistic_alt_three_off"
1349 value="7"
1350 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_THREE_OFF"
1351 glib:nick="stylistic-alt-three-off">
1352 </member>
1353 <member name="stylistic_alt_four_on"
1354 value="8"
1355 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_FOUR_ON"
1356 glib:nick="stylistic-alt-four-on">
1357 </member>
1358 <member name="stylistic_alt_four_off"
1359 value="9"
1360 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_FOUR_OFF"
1361 glib:nick="stylistic-alt-four-off">
1362 </member>
1363 <member name="stylistic_alt_five_on"
1364 value="10"
1365 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_FIVE_ON"
1366 glib:nick="stylistic-alt-five-on">
1367 </member>
1368 <member name="stylistic_alt_five_off"
1369 value="11"
1370 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_FIVE_OFF"
1371 glib:nick="stylistic-alt-five-off">
1372 </member>
1373 <member name="stylistic_alt_six_on"
1374 value="12"
1375 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_SIX_ON"
1376 glib:nick="stylistic-alt-six-on">
1377 </member>
1378 <member name="stylistic_alt_six_off"
1379 value="13"
1380 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_SIX_OFF"
1381 glib:nick="stylistic-alt-six-off">
1382 </member>
1383 <member name="stylistic_alt_seven_on"
1384 value="14"
1385 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_SEVEN_ON"
1386 glib:nick="stylistic-alt-seven-on">
1387 </member>
1388 <member name="stylistic_alt_seven_off"
1389 value="15"
1390 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_SEVEN_OFF"
1391 glib:nick="stylistic-alt-seven-off">
1392 </member>
1393 <member name="stylistic_alt_eight_on"
1394 value="16"
1395 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_EIGHT_ON"
1396 glib:nick="stylistic-alt-eight-on">
1397 </member>
1398 <member name="stylistic_alt_eight_off"
1399 value="17"
1400 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_EIGHT_OFF"
1401 glib:nick="stylistic-alt-eight-off">
1402 </member>
1403 <member name="stylistic_alt_nine_on"
1404 value="18"
1405 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_NINE_ON"
1406 glib:nick="stylistic-alt-nine-on">
1407 </member>
1408 <member name="stylistic_alt_nine_off"
1409 value="19"
1410 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_NINE_OFF"
1411 glib:nick="stylistic-alt-nine-off">
1412 </member>
1413 <member name="stylistic_alt_ten_on"
1414 value="20"
1415 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_TEN_ON"
1416 glib:nick="stylistic-alt-ten-on">
1417 </member>
1418 <member name="stylistic_alt_ten_off"
1419 value="21"
1420 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_TEN_OFF"
1421 glib:nick="stylistic-alt-ten-off">
1422 </member>
1423 <member name="stylistic_alt_eleven_on"
1424 value="22"
1425 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_ELEVEN_ON"
1426 glib:nick="stylistic-alt-eleven-on">
1427 </member>
1428 <member name="stylistic_alt_eleven_off"
1429 value="23"
1430 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_ELEVEN_OFF"
1431 glib:nick="stylistic-alt-eleven-off">
1432 </member>
1433 <member name="stylistic_alt_twelve_on"
1434 value="24"
1435 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_TWELVE_ON"
1436 glib:nick="stylistic-alt-twelve-on">
1437 </member>
1438 <member name="stylistic_alt_twelve_off"
1439 value="25"
1440 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_TWELVE_OFF"
1441 glib:nick="stylistic-alt-twelve-off">
1442 </member>
1443 <member name="stylistic_alt_thirteen_on"
1444 value="26"
1445 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_THIRTEEN_ON"
1446 glib:nick="stylistic-alt-thirteen-on">
1447 </member>
1448 <member name="stylistic_alt_thirteen_off"
1449 value="27"
1450 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_THIRTEEN_OFF"
1451 glib:nick="stylistic-alt-thirteen-off">
1452 </member>
1453 <member name="stylistic_alt_fourteen_on"
1454 value="28"
1455 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_FOURTEEN_ON"
1456 glib:nick="stylistic-alt-fourteen-on">
1457 </member>
1458 <member name="stylistic_alt_fourteen_off"
1459 value="29"
1460 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_FOURTEEN_OFF"
1461 glib:nick="stylistic-alt-fourteen-off">
1462 </member>
1463 <member name="stylistic_alt_fifteen_on"
1464 value="30"
1465 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_FIFTEEN_ON"
1466 glib:nick="stylistic-alt-fifteen-on">
1467 </member>
1468 <member name="stylistic_alt_fifteen_off"
1469 value="31"
1470 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_FIFTEEN_OFF"
1471 glib:nick="stylistic-alt-fifteen-off">
1472 </member>
1473 <member name="stylistic_alt_sixteen_on"
1474 value="32"
1475 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_SIXTEEN_ON"
1476 glib:nick="stylistic-alt-sixteen-on">
1477 </member>
1478 <member name="stylistic_alt_sixteen_off"
1479 value="33"
1480 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_SIXTEEN_OFF"
1481 glib:nick="stylistic-alt-sixteen-off">
1482 </member>
1483 <member name="stylistic_alt_seventeen_on"
1484 value="34"
1485 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_SEVENTEEN_ON"
1486 glib:nick="stylistic-alt-seventeen-on">
1487 </member>
1488 <member name="stylistic_alt_seventeen_off"
1489 value="35"
1490 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_SEVENTEEN_OFF"
1491 glib:nick="stylistic-alt-seventeen-off">
1492 </member>
1493 <member name="stylistic_alt_eighteen_on"
1494 value="36"
1495 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_EIGHTEEN_ON"
1496 glib:nick="stylistic-alt-eighteen-on">
1497 </member>
1498 <member name="stylistic_alt_eighteen_off"
1499 value="37"
1500 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_EIGHTEEN_OFF"
1501 glib:nick="stylistic-alt-eighteen-off">
1502 </member>
1503 <member name="stylistic_alt_nineteen_on"
1504 value="38"
1505 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_NINETEEN_ON"
1506 glib:nick="stylistic-alt-nineteen-on">
1507 </member>
1508 <member name="stylistic_alt_nineteen_off"
1509 value="39"
1510 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_NINETEEN_OFF"
1511 glib:nick="stylistic-alt-nineteen-off">
1512 </member>
1513 <member name="stylistic_alt_twenty_on"
1514 value="40"
1515 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_TWENTY_ON"
1516 glib:nick="stylistic-alt-twenty-on">
1517 </member>
1518 <member name="stylistic_alt_twenty_off"
1519 value="41"
1520 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_STYLISTIC_ALT_TWENTY_OFF"
1521 glib:nick="stylistic-alt-twenty-off">
1522 </member>
1523 <member name="contextual_alternates_on"
1524 value="0"
1525 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CONTEXTUAL_ALTERNATES_ON"
1526 glib:nick="contextual-alternates-on">
1527 </member>
1528 <member name="contextual_alternates_off"
1529 value="1"
1530 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CONTEXTUAL_ALTERNATES_OFF"
1531 glib:nick="contextual-alternates-off">
1532 </member>
1533 <member name="swash_alternates_on"
1534 value="2"
1535 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SWASH_ALTERNATES_ON"
1536 glib:nick="swash-alternates-on">
1537 </member>
1538 <member name="swash_alternates_off"
1539 value="3"
1540 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_SWASH_ALTERNATES_OFF"
1541 glib:nick="swash-alternates-off">
1542 </member>
1543 <member name="contextual_swash_alternates_on"
1544 value="4"
1545 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CONTEXTUAL_SWASH_ALTERNATES_ON"
1546 glib:nick="contextual-swash-alternates-on">
1547 </member>
1548 <member name="contextual_swash_alternates_off"
1549 value="5"
1550 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_CONTEXTUAL_SWASH_ALTERNATES_OFF"
1551 glib:nick="contextual-swash-alternates-off">
1552 </member>
1553 <member name="default_lower_case"
1554 value="0"
1555 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_DEFAULT_LOWER_CASE"
1556 glib:nick="default-lower-case">
1557 </member>
1558 <member name="lower_case_small_caps"
1559 value="1"
1560 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_LOWER_CASE_SMALL_CAPS"
1561 glib:nick="lower-case-small-caps">
1562 </member>
1563 <member name="lower_case_petite_caps"
1564 value="2"
1565 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_LOWER_CASE_PETITE_CAPS"
1566 glib:nick="lower-case-petite-caps">
1567 </member>
1568 <member name="default_upper_case"
1569 value="0"
1570 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_DEFAULT_UPPER_CASE"
1571 glib:nick="default-upper-case">
1572 </member>
1573 <member name="upper_case_small_caps"
1574 value="1"
1575 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_UPPER_CASE_SMALL_CAPS"
1576 glib:nick="upper-case-small-caps">
1577 </member>
1578 <member name="upper_case_petite_caps"
1579 value="2"
1580 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_UPPER_CASE_PETITE_CAPS"
1581 glib:nick="upper-case-petite-caps">
1582 </member>
1583 <member name="half_width_cjk_roman"
1584 value="0"
1585 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_HALF_WIDTH_CJK_ROMAN"
1586 glib:nick="half-width-cjk-roman">
1587 </member>
1588 <member name="proportional_cjk_roman"
1589 value="1"
1590 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_PROPORTIONAL_CJK_ROMAN"
1591 glib:nick="proportional-cjk-roman">
1592 </member>
1593 <member name="default_cjk_roman"
1594 value="2"
1595 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_DEFAULT_CJK_ROMAN"
1596 glib:nick="default-cjk-roman">
1597 </member>
1598 <member name="full_width_cjk_roman"
1599 value="3"
1600 c:identifier="HB_AAT_LAYOUT_FEATURE_SELECTOR_FULL_WIDTH_CJK_ROMAN"
1601 glib:nick="full-width-cjk-roman">
1602 </member>
1603 </enumeration>
1604 <enumeration name="aat_layout_feature_type_t"
1605 version="2.2.0"
1606 glib:type-name="hb_aat_layout_feature_type_t"
1607 glib:get-type="hb_gobject_aat_layout_feature_type_get_type"
1608 c:type="hb_aat_layout_feature_type_t">
1609 <member name="invalid"
1610 value="65535"
1611 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_INVALID"
1612 glib:nick="invalid">
1613 </member>
1614 <member name="all_typographic"
1615 value="0"
1616 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_ALL_TYPOGRAPHIC"
1617 glib:nick="all-typographic">
1618 </member>
1619 <member name="ligatures"
1620 value="1"
1621 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_LIGATURES"
1622 glib:nick="ligatures">
1623 </member>
1624 <member name="curisve_connection"
1625 value="2"
1626 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_CURISVE_CONNECTION"
1627 glib:nick="curisve-connection">
1628 </member>
1629 <member name="letter_case"
1630 value="3"
1631 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_LETTER_CASE"
1632 glib:nick="letter-case">
1633 </member>
1634 <member name="vertical_substitution"
1635 value="4"
1636 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_VERTICAL_SUBSTITUTION"
1637 glib:nick="vertical-substitution">
1638 </member>
1639 <member name="linguistic_rearrangement"
1640 value="5"
1641 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_LINGUISTIC_REARRANGEMENT"
1642 glib:nick="linguistic-rearrangement">
1643 </member>
1644 <member name="number_spacing"
1645 value="6"
1646 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_NUMBER_SPACING"
1647 glib:nick="number-spacing">
1648 </member>
1649 <member name="smart_swash_type"
1650 value="8"
1651 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_SMART_SWASH_TYPE"
1652 glib:nick="smart-swash-type">
1653 </member>
1654 <member name="diacritics_type"
1655 value="9"
1656 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_DIACRITICS_TYPE"
1657 glib:nick="diacritics-type">
1658 </member>
1659 <member name="vertical_position"
1660 value="10"
1661 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_VERTICAL_POSITION"
1662 glib:nick="vertical-position">
1663 </member>
1664 <member name="fractions"
1665 value="11"
1666 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_FRACTIONS"
1667 glib:nick="fractions">
1668 </member>
1669 <member name="overlapping_characters_type"
1670 value="13"
1671 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_OVERLAPPING_CHARACTERS_TYPE"
1672 glib:nick="overlapping-characters-type">
1673 </member>
1674 <member name="typographic_extras"
1675 value="14"
1676 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_TYPOGRAPHIC_EXTRAS"
1677 glib:nick="typographic-extras">
1678 </member>
1679 <member name="mathematical_extras"
1680 value="15"
1681 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_MATHEMATICAL_EXTRAS"
1682 glib:nick="mathematical-extras">
1683 </member>
1684 <member name="ornament_sets_type"
1685 value="16"
1686 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_ORNAMENT_SETS_TYPE"
1687 glib:nick="ornament-sets-type">
1688 </member>
1689 <member name="character_alternatives"
1690 value="17"
1691 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_CHARACTER_ALTERNATIVES"
1692 glib:nick="character-alternatives">
1693 </member>
1694 <member name="design_complexity_type"
1695 value="18"
1696 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_DESIGN_COMPLEXITY_TYPE"
1697 glib:nick="design-complexity-type">
1698 </member>
1699 <member name="style_options"
1700 value="19"
1701 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_STYLE_OPTIONS"
1702 glib:nick="style-options">
1703 </member>
1704 <member name="character_shape"
1705 value="20"
1706 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_CHARACTER_SHAPE"
1707 glib:nick="character-shape">
1708 </member>
1709 <member name="number_case"
1710 value="21"
1711 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_NUMBER_CASE"
1712 glib:nick="number-case">
1713 </member>
1714 <member name="text_spacing"
1715 value="22"
1716 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_TEXT_SPACING"
1717 glib:nick="text-spacing">
1718 </member>
1719 <member name="transliteration"
1720 value="23"
1721 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_TRANSLITERATION"
1722 glib:nick="transliteration">
1723 </member>
1724 <member name="annotation_type"
1725 value="24"
1726 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_ANNOTATION_TYPE"
1727 glib:nick="annotation-type">
1728 </member>
1729 <member name="kana_spacing_type"
1730 value="25"
1731 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_KANA_SPACING_TYPE"
1732 glib:nick="kana-spacing-type">
1733 </member>
1734 <member name="ideographic_spacing_type"
1735 value="26"
1736 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_IDEOGRAPHIC_SPACING_TYPE"
1737 glib:nick="ideographic-spacing-type">
1738 </member>
1739 <member name="unicode_decomposition_type"
1740 value="27"
1741 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_UNICODE_DECOMPOSITION_TYPE"
1742 glib:nick="unicode-decomposition-type">
1743 </member>
1744 <member name="ruby_kana"
1745 value="28"
1746 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_RUBY_KANA"
1747 glib:nick="ruby-kana">
1748 </member>
1749 <member name="cjk_symbol_alternatives_type"
1750 value="29"
1751 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_CJK_SYMBOL_ALTERNATIVES_TYPE"
1752 glib:nick="cjk-symbol-alternatives-type">
1753 </member>
1754 <member name="ideographic_alternatives_type"
1755 value="30"
1756 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_IDEOGRAPHIC_ALTERNATIVES_TYPE"
1757 glib:nick="ideographic-alternatives-type">
1758 </member>
1759 <member name="cjk_vertical_roman_placement_type"
1760 value="31"
1761 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_CJK_VERTICAL_ROMAN_PLACEMENT_TYPE"
1762 glib:nick="cjk-vertical-roman-placement-type">
1763 </member>
1764 <member name="italic_cjk_roman"
1765 value="32"
1766 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_ITALIC_CJK_ROMAN"
1767 glib:nick="italic-cjk-roman">
1768 </member>
1769 <member name="case_sensitive_layout"
1770 value="33"
1771 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_CASE_SENSITIVE_LAYOUT"
1772 glib:nick="case-sensitive-layout">
1773 </member>
1774 <member name="alternate_kana"
1775 value="34"
1776 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_ALTERNATE_KANA"
1777 glib:nick="alternate-kana">
1778 </member>
1779 <member name="stylistic_alternatives"
1780 value="35"
1781 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_STYLISTIC_ALTERNATIVES"
1782 glib:nick="stylistic-alternatives">
1783 </member>
1784 <member name="contextual_alternatives"
1785 value="36"
1786 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_CONTEXTUAL_ALTERNATIVES"
1787 glib:nick="contextual-alternatives">
1788 </member>
1789 <member name="lower_case"
1790 value="37"
1791 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_LOWER_CASE"
1792 glib:nick="lower-case">
1793 </member>
1794 <member name="upper_case"
1795 value="38"
1796 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_UPPER_CASE"
1797 glib:nick="upper-case">
1798 </member>
1799 <member name="language_tag_type"
1800 value="39"
1801 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_LANGUAGE_TAG_TYPE"
1802 glib:nick="language-tag-type">
1803 </member>
1804 <member name="cjk_roman_spacing_type"
1805 value="103"
1806 c:identifier="HB_AAT_LAYOUT_FEATURE_TYPE_CJK_ROMAN_SPACING_TYPE"
1807 glib:nick="cjk-roman-spacing-type">
1808 </member>
1809 </enumeration>
1810 <function name="blob_copy_writable_or_fail"
1811 c:identifier="hb_blob_copy_writable_or_fail"
1812 version="1.8.0">
1813 <doc xml:space="preserve"
1814 filename="../src/hb-blob.cc"
1815 line="153">Makes a writable copy of @blob.</doc>
1816 <source-position filename="../src/hb-blob.h" line="89"/>
1817 <return-value transfer-ownership="full">
1818 <doc xml:space="preserve"
1819 filename="../src/hb-blob.cc"
1820 line="159">New blob, or nullptr if allocation failed.</doc>
1821 <type name="blob_t" c:type="hb_blob_t*"/>
1822 </return-value>
1823 <parameters>
1824 <parameter name="blob" transfer-ownership="none">
1825 <doc xml:space="preserve"
1826 filename="../src/hb-blob.cc"
1827 line="155">A blob.</doc>
1828 <type name="blob_t" c:type="hb_blob_t*"/>
1829 </parameter>
1830 </parameters>
1831 </function>
1832 <function name="blob_create"
1833 c:identifier="hb_blob_create"
1834 version="0.9.2"
1835 introspectable="0">
1836 <doc xml:space="preserve"
1837 filename="../src/hb-blob.cc"
1838 line="55">Creates a new "blob" object wrapping @data. The @mode parameter is used
1839 to negotiate ownership and lifecycle of @data.</doc>
1840 <source-position filename="../src/hb-blob.h" line="68"/>
1841 <return-value transfer-ownership="full">
1842 <doc xml:space="preserve"
1843 filename="../src/hb-blob.cc"
1844 line="66">New blob, or the empty blob if something failed or if @length is
1845 zero. Destroy with hb_blob_destroy().</doc>
1846 <type name="blob_t" c:type="hb_blob_t*"/>
1847 </return-value>
1848 <parameters>
1849 <parameter name="data" transfer-ownership="none">
1850 <doc xml:space="preserve"
1851 filename="../src/hb-blob.cc"
1852 line="57">Pointer to blob data.</doc>
1853 <type name="utf8" c:type="const char*"/>
1854 </parameter>
1855 <parameter name="length" transfer-ownership="none">
1856 <doc xml:space="preserve"
1857 filename="../src/hb-blob.cc"
1858 line="58">Length of @data in bytes.</doc>
1859 <type name="guint" c:type="unsigned int"/>
1860 </parameter>
1861 <parameter name="mode" transfer-ownership="none">
1862 <doc xml:space="preserve"
1863 filename="../src/hb-blob.cc"
1864 line="59">Memory mode for @data.</doc>
1865 <type name="memory_mode_t" c:type="hb_memory_mode_t"/>
1866 </parameter>
1867 <parameter name="user_data"
1868 transfer-ownership="none"
1869 nullable="1"
1870 allow-none="1">
1871 <doc xml:space="preserve"
1872 filename="../src/hb-blob.cc"
1873 line="60">Data parameter to pass to @destroy.</doc>
1874 <type name="gpointer" c:type="void*"/>
1875 </parameter>
1876 <parameter name="destroy" transfer-ownership="none">
1877 <doc xml:space="preserve"
1878 filename="../src/hb-blob.cc"
1879 line="61">Callback to call when @data is not needed anymore.</doc>
1880 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
1881 </parameter>
1882 </parameters>
1883 </function>
1884 <function name="blob_create_from_file"
1885 c:identifier="hb_blob_create_from_file"
1886 version="1.7.7">
1887 <source-position filename="../src/hb-blob.h" line="75"/>
1888 <return-value transfer-ownership="full">
1889 <doc xml:space="preserve"
1890 filename="../src/hb-blob.cc"
1891 line="563">A hb_blob_t pointer with the content of the file</doc>
1892 <type name="blob_t" c:type="hb_blob_t*"/>
1893 </return-value>
1894 <parameters>
1895 <parameter name="file_name" transfer-ownership="none">
1896 <doc xml:space="preserve"
1897 filename="../src/hb-blob.cc"
1898 line="561">font filename.</doc>
1899 <type name="utf8" c:type="const char*"/>
1900 </parameter>
1901 </parameters>
1902 </function>
1903 <function name="blob_create_sub_blob"
1904 c:identifier="hb_blob_create_sub_blob"
1905 version="0.9.2">
1906 <doc xml:space="preserve"
1907 filename="../src/hb-blob.cc"
1908 line="112">Returns a blob that represents a range of bytes in @parent. The new
1909 blob is always created with %HB_MEMORY_MODE_READONLY, meaning that it
1910 will never modify data in the parent blob. The parent data is not
1911 expected to be modified, and will result in undefined behavior if it
1912 is.
1913
1914 Makes @parent immutable.</doc>
1915 <source-position filename="../src/hb-blob.h" line="84"/>
1916 <return-value transfer-ownership="full">
1917 <doc xml:space="preserve"
1918 filename="../src/hb-blob.cc"
1919 line="126">New blob, or the empty blob if something failed or if
1920 @length is zero or @offset is beyond the end of @parent's data. Destroy
1921 with hb_blob_destroy().</doc>
1922 <type name="blob_t" c:type="hb_blob_t*"/>
1923 </return-value>
1924 <parameters>
1925 <parameter name="parent" transfer-ownership="none">
1926 <doc xml:space="preserve"
1927 filename="../src/hb-blob.cc"
1928 line="114">Parent blob.</doc>
1929 <type name="blob_t" c:type="hb_blob_t*"/>
1930 </parameter>
1931 <parameter name="offset" transfer-ownership="none">
1932 <doc xml:space="preserve"
1933 filename="../src/hb-blob.cc"
1934 line="115">Start offset of sub-blob within @parent, in bytes.</doc>
1935 <type name="guint" c:type="unsigned int"/>
1936 </parameter>
1937 <parameter name="length" transfer-ownership="none">
1938 <doc xml:space="preserve"
1939 filename="../src/hb-blob.cc"
1940 line="116">Length of sub-blob.</doc>
1941 <type name="guint" c:type="unsigned int"/>
1942 </parameter>
1943 </parameters>
1944 </function>
1945 <function name="blob_destroy"
1946 c:identifier="hb_blob_destroy"
1947 version="0.9.2"
1948 introspectable="0">
1949 <doc xml:space="preserve"
1950 filename="../src/hb-blob.cc"
1951 line="213">Decreases the reference count on @blob, and if it reaches zero, destroys
1952 @blob, freeing all memory, possibly calling the destroy-callback the blob
1953 was created for if it has not been called already.
1954
1955 See TODO:link object types for more information.</doc>
1956 <source-position filename="../src/hb-blob.h" line="98"/>
1957 <return-value transfer-ownership="none">
1958 <type name="none" c:type="void"/>
1959 </return-value>
1960 <parameters>
1961 <parameter name="blob" transfer-ownership="none">
1962 <doc xml:space="preserve"
1963 filename="../src/hb-blob.cc"
1964 line="215">a blob.</doc>
1965 <type name="blob_t" c:type="hb_blob_t*"/>
1966 </parameter>
1967 </parameters>
1968 </function>
1969 <function name="blob_get_data"
1970 c:identifier="hb_blob_get_data"
1971 version="0.9.2">
1972 <source-position filename="../src/hb-blob.h" line="124"/>
1973 <return-value transfer-ownership="none">
1974 <array length="1" zero-terminated="0" c:type="const char*">
1975 <type name="utf8" c:type="char"/>
1976 </array>
1977 </return-value>
1978 <parameters>
1979 <parameter name="blob" transfer-ownership="none">
1980 <doc xml:space="preserve"
1981 filename="../src/hb-blob.cc"
1982 line="328">a blob.</doc>
1983 <type name="blob_t" c:type="hb_blob_t*"/>
1984 </parameter>
1985 <parameter name="length"
1986 direction="out"
1987 caller-allocates="0"
1988 transfer-ownership="full">
1989 <type name="guint" c:type="unsigned int*"/>
1990 </parameter>
1991 </parameters>
1992 </function>
1993 <function name="blob_get_data_writable"
1994 c:identifier="hb_blob_get_data_writable"
1995 version="0.9.2">
1996 <doc xml:space="preserve"
1997 filename="../src/hb-blob.cc"
1998 line="346">Tries to make blob data writable (possibly copying it) and
1999 return pointer to data.
2000
2001 Fails if blob has been made immutable, or if memory allocation
2002 fails.</doc>
2003 <source-position filename="../src/hb-blob.h" line="127"/>
2004 <return-value transfer-ownership="none">
2005 <doc xml:space="preserve"
2006 filename="../src/hb-blob.cc"
2007 line="357">Writable blob data,
2008 or %NULL if failed.</doc>
2009 <array length="1" zero-terminated="0" c:type="char*">
2010 <type name="utf8" c:type="char"/>
2011 </array>
2012 </return-value>
2013 <parameters>
2014 <parameter name="blob" transfer-ownership="none">
2015 <doc xml:space="preserve"
2016 filename="../src/hb-blob.cc"
2017 line="348">a blob.</doc>
2018 <type name="blob_t" c:type="hb_blob_t*"/>
2019 </parameter>
2020 <parameter name="length"
2021 direction="out"
2022 caller-allocates="0"
2023 transfer-ownership="full">
2024 <doc xml:space="preserve"
2025 filename="../src/hb-blob.cc"
2026 line="349">output length of the writable data.</doc>
2027 <type name="guint" c:type="unsigned int*"/>
2028 </parameter>
2029 </parameters>
2030 </function>
2031 <function name="blob_get_empty"
2032 c:identifier="hb_blob_get_empty"
2033 version="0.9.2">
2034 <doc xml:space="preserve"
2035 filename="../src/hb-blob.cc"
2036 line="178">Returns the singleton empty blob.
2037
2038 See TODO:link object types for more information.</doc>
2039 <source-position filename="../src/hb-blob.h" line="92"/>
2040 <return-value transfer-ownership="full">
2041 <doc xml:space="preserve"
2042 filename="../src/hb-blob.cc"
2043 line="185">the empty blob.</doc>
2044 <type name="blob_t" c:type="hb_blob_t*"/>
2045 </return-value>
2046 </function>
2047 <function name="blob_get_length"
2048 c:identifier="hb_blob_get_length"
2049 version="0.9.2">
2050 <source-position filename="../src/hb-blob.h" line="121"/>
2051 <return-value transfer-ownership="none">
2052 <doc xml:space="preserve"
2053 filename="../src/hb-blob.cc"
2054 line="316">the length of blob data in bytes.</doc>
2055 <type name="guint" c:type="unsigned int"/>
2056 </return-value>
2057 <parameters>
2058 <parameter name="blob" transfer-ownership="none">
2059 <doc xml:space="preserve"
2060 filename="../src/hb-blob.cc"
2061 line="312">a blob.</doc>
2062 <type name="blob_t" c:type="hb_blob_t*"/>
2063 </parameter>
2064 </parameters>
2065 </function>
2066 <function name="blob_get_user_data"
2067 c:identifier="hb_blob_get_user_data"
2068 version="0.9.2"
2069 introspectable="0">
2070 <source-position filename="../src/hb-blob.h" line="109"/>
2071 <return-value transfer-ownership="none" nullable="1">
2072 <type name="gpointer" c:type="void*"/>
2073 </return-value>
2074 <parameters>
2075 <parameter name="blob" transfer-ownership="none">
2076 <doc xml:space="preserve"
2077 filename="../src/hb-blob.cc"
2078 line="259">a blob.</doc>
2079 <type name="blob_t" c:type="hb_blob_t*"/>
2080 </parameter>
2081 <parameter name="key" transfer-ownership="none">
2082 <doc xml:space="preserve"
2083 filename="../src/hb-blob.cc"
2084 line="260">key for data to get.</doc>
2085 <type name="user_data_key_t" c:type="hb_user_data_key_t*"/>
2086 </parameter>
2087 </parameters>
2088 </function>
2089 <function name="blob_is_immutable"
2090 c:identifier="hb_blob_is_immutable"
2091 version="0.9.2">
2092 <source-position filename="../src/hb-blob.h" line="117"/>
2093 <return-value transfer-ownership="none">
2094 <doc xml:space="preserve"
2095 filename="../src/hb-blob.cc"
2096 line="299">TODO</doc>
2097 <type name="bool_t" c:type="hb_bool_t"/>
2098 </return-value>
2099 <parameters>
2100 <parameter name="blob" transfer-ownership="none">
2101 <doc xml:space="preserve"
2102 filename="../src/hb-blob.cc"
2103 line="295">a blob.</doc>
2104 <type name="blob_t" c:type="hb_blob_t*"/>
2105 </parameter>
2106 </parameters>
2107 </function>
2108 <function name="blob_make_immutable"
2109 c:identifier="hb_blob_make_immutable"
2110 version="0.9.2">
2111 <source-position filename="../src/hb-blob.h" line="114"/>
2112 <return-value transfer-ownership="none">
2113 <type name="none" c:type="void"/>
2114 </return-value>
2115 <parameters>
2116 <parameter name="blob" transfer-ownership="none">
2117 <doc xml:space="preserve"
2118 filename="../src/hb-blob.cc"
2119 line="278">a blob.</doc>
2120 <type name="blob_t" c:type="hb_blob_t*"/>
2121 </parameter>
2122 </parameters>
2123 </function>
2124 <function name="blob_reference"
2125 c:identifier="hb_blob_reference"
2126 version="0.9.2"
2127 introspectable="0">
2128 <doc xml:space="preserve"
2129 filename="../src/hb-blob.cc"
2130 line="195">Increases the reference count on @blob.
2131
2132 See TODO:link object types for more information.</doc>
2133 <source-position filename="../src/hb-blob.h" line="95"/>
2134 <return-value transfer-ownership="full">
2135 <doc xml:space="preserve"
2136 filename="../src/hb-blob.cc"
2137 line="203">@blob.</doc>
2138 <type name="blob_t" c:type="hb_blob_t*"/>
2139 </return-value>
2140 <parameters>
2141 <parameter name="blob" transfer-ownership="none">
2142 <doc xml:space="preserve"
2143 filename="../src/hb-blob.cc"
2144 line="197">a blob.</doc>
2145 <type name="blob_t" c:type="hb_blob_t*"/>
2146 </parameter>
2147 </parameters>
2148 </function>
2149 <function name="blob_set_user_data"
2150 c:identifier="hb_blob_set_user_data"
2151 version="0.9.2"
2152 introspectable="0">
2153 <source-position filename="../src/hb-blob.h" line="101"/>
2154 <return-value transfer-ownership="none">
2155 <type name="bool_t" c:type="hb_bool_t"/>
2156 </return-value>
2157 <parameters>
2158 <parameter name="blob" transfer-ownership="none">
2159 <doc xml:space="preserve"
2160 filename="../src/hb-blob.cc"
2161 line="237">a blob.</doc>
2162 <type name="blob_t" c:type="hb_blob_t*"/>
2163 </parameter>
2164 <parameter name="key" transfer-ownership="none">
2165 <doc xml:space="preserve"
2166 filename="../src/hb-blob.cc"
2167 line="238">key for data to set.</doc>
2168 <type name="user_data_key_t" c:type="hb_user_data_key_t*"/>
2169 </parameter>
2170 <parameter name="data"
2171 transfer-ownership="none"
2172 nullable="1"
2173 allow-none="1">
2174 <doc xml:space="preserve"
2175 filename="../src/hb-blob.cc"
2176 line="239">data to set.</doc>
2177 <type name="gpointer" c:type="void*"/>
2178 </parameter>
2179 <parameter name="destroy" transfer-ownership="none">
2180 <doc xml:space="preserve"
2181 filename="../src/hb-blob.cc"
2182 line="240">callback to call when @data is not needed anymore.</doc>
2183 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
2184 </parameter>
2185 <parameter name="replace" transfer-ownership="none">
2186 <doc xml:space="preserve"
2187 filename="../src/hb-blob.cc"
2188 line="241">whether to replace an existing data with the same key.</doc>
2189 <type name="bool_t" c:type="hb_bool_t"/>
2190 </parameter>
2191 </parameters>
2192 </function>
2193 <record name="blob_t"
2194 c:type="hb_blob_t"
2195 glib:type-name="hb_blob_t"
2196 glib:get-type="hb_gobject_blob_get_type"
2197 c:symbol-prefix="gobject_blob">
2198 <source-position filename="../src/hb-blob.h" line="65"/>
2199 </record>
2200 <function name="buffer_add" c:identifier="hb_buffer_add" version="0.9.7">
2201 <doc xml:space="preserve"
2202 filename="../src/hb-buffer.cc"
2203 line="1270">Appends a character with the Unicode value of @codepoint to @buffer, and
2204 gives it the initial cluster value of @cluster. Clusters can be any thing
2205 the client wants, they are usually used to refer to the index of the
2206 character in the input text stream and are output in
2207 #hb_glyph_info_t.cluster field.
2208
2209 This function does not check the validity of @codepoint, it is up to the
2210 caller to ensure it is a valid Unicode code point.</doc>
2211 <source-position filename="../src/hb-buffer.h" line="388"/>
2212 <return-value transfer-ownership="none">
2213 <type name="none" c:type="void"/>
2214 </return-value>
2215 <parameters>
2216 <parameter name="buffer" transfer-ownership="none">
2217 <doc xml:space="preserve"
2218 filename="../src/hb-buffer.cc"
2219 line="1272">an #hb_buffer_t.</doc>
2220 <type name="buffer_t" c:type="hb_buffer_t*"/>
2221 </parameter>
2222 <parameter name="codepoint" transfer-ownership="none">
2223 <doc xml:space="preserve"
2224 filename="../src/hb-buffer.cc"
2225 line="1273">a Unicode code point.</doc>
2226 <type name="codepoint_t" c:type="hb_codepoint_t"/>
2227 </parameter>
2228 <parameter name="cluster" transfer-ownership="none">
2229 <doc xml:space="preserve"
2230 filename="../src/hb-buffer.cc"
2231 line="1274">the cluster value of @codepoint.</doc>
2232 <type name="guint" c:type="unsigned int"/>
2233 </parameter>
2234 </parameters>
2235 </function>
2236 <function name="buffer_add_codepoints"
2237 c:identifier="hb_buffer_add_codepoints"
2238 version="0.9.31">
2239 <doc xml:space="preserve"
2240 filename="../src/hb-buffer.cc"
2241 line="1680">Appends characters from @text array to @buffer. The @item_offset is the
2242 position of the first character from @text that will be appended, and
2243 @item_length is the number of character. When shaping part of a larger text
2244 (e.g. a run of text from a paragraph), instead of passing just the substring
2245 corresponding to the run, it is preferable to pass the whole
2246 paragraph and specify the run start and length as @item_offset and
2247 @item_length, respectively, to give HarfBuzz the full context to be able,
2248 for example, to do cross-run Arabic shaping or properly handle combining
2249 marks at stat of run.
2250
2251 This function does not check the validity of @text, it is up to the caller
2252 to ensure it contains a valid Unicode code points.</doc>
2253 <source-position filename="../src/hb-buffer.h" line="421"/>
2254 <return-value transfer-ownership="none">
2255 <type name="none" c:type="void"/>
2256 </return-value>
2257 <parameters>
2258 <parameter name="buffer" transfer-ownership="none">
2259 <doc xml:space="preserve"
2260 filename="../src/hb-buffer.cc"
2261 line="1682">a #hb_buffer_t to append characters to.</doc>
2262 <type name="buffer_t" c:type="hb_buffer_t*"/>
2263 </parameter>
2264 <parameter name="text" transfer-ownership="none">
2265 <doc xml:space="preserve"
2266 filename="../src/hb-buffer.cc"
2267 line="1683">an array of Unicode code points to append.</doc>
2268 <array length="2" zero-terminated="0" c:type="const hb_codepoint_t*">
2269 <type name="codepoint_t" c:type="hb_codepoint_t"/>
2270 </array>
2271 </parameter>
2272 <parameter name="text_length" transfer-ownership="none">
2273 <doc xml:space="preserve"
2274 filename="../src/hb-buffer.cc"
2275 line="1684">the length of the @text, or -1 if it is %NULL terminated.</doc>
2276 <type name="gint" c:type="int"/>
2277 </parameter>
2278 <parameter name="item_offset" transfer-ownership="none">
2279 <doc xml:space="preserve"
2280 filename="../src/hb-buffer.cc"
2281 line="1685">the offset of the first code point to add to the @buffer.</doc>
2282 <type name="guint" c:type="unsigned int"/>
2283 </parameter>
2284 <parameter name="item_length" transfer-ownership="none">
2285 <doc xml:space="preserve"
2286 filename="../src/hb-buffer.cc"
2287 line="1686">the number of code points to add to the @buffer, or -1 for the
2288 end of @text (assuming it is %NULL terminated).</doc>
2289 <type name="gint" c:type="int"/>
2290 </parameter>
2291 </parameters>
2292 </function>
2293 <function name="buffer_add_latin1"
2294 c:identifier="hb_buffer_add_latin1"
2295 version="0.9.39">
2296 <doc xml:space="preserve"
2297 filename="../src/hb-buffer.cc"
2298 line="1653">Similar to hb_buffer_add_codepoints(), but allows only access to first 256
2299 Unicode code points that can fit in 8-bit strings.
2300
2301 &lt;note&gt;Has nothing to do with non-Unicode Latin-1 encoding.&lt;/note&gt;</doc>
2302 <source-position filename="../src/hb-buffer.h" line="414"/>
2303 <return-value transfer-ownership="none">
2304 <type name="none" c:type="void"/>
2305 </return-value>
2306 <parameters>
2307 <parameter name="buffer" transfer-ownership="none">
2308 <doc xml:space="preserve"
2309 filename="../src/hb-buffer.cc"
2310 line="1655">an #hb_buffer_t.</doc>
2311 <type name="buffer_t" c:type="hb_buffer_t*"/>
2312 </parameter>
2313 <parameter name="text" transfer-ownership="none">
2314 <doc xml:space="preserve"
2315 filename="../src/hb-buffer.cc"
2316 line="1656">an array of UTF-8
2317 characters to append.</doc>
2318 <array length="2" zero-terminated="0" c:type="const uint8_t*">
2319 <type name="guint8"/>
2320 </array>
2321 </parameter>
2322 <parameter name="text_length" transfer-ownership="none">
2323 <doc xml:space="preserve"
2324 filename="../src/hb-buffer.cc"
2325 line="1658">the length of the @text, or -1 if it is %NULL terminated.</doc>
2326 <type name="gint" c:type="int"/>
2327 </parameter>
2328 <parameter name="item_offset" transfer-ownership="none">
2329 <doc xml:space="preserve"
2330 filename="../src/hb-buffer.cc"
2331 line="1659">the offset of the first character to add to the @buffer.</doc>
2332 <type name="guint" c:type="unsigned int"/>
2333 </parameter>
2334 <parameter name="item_length" transfer-ownership="none">
2335 <doc xml:space="preserve"
2336 filename="../src/hb-buffer.cc"
2337 line="1660">the number of characters to add to the @buffer, or -1 for the
2338 end of @text (assuming it is %NULL terminated).</doc>
2339 <type name="gint" c:type="int"/>
2340 </parameter>
2341 </parameters>
2342 </function>
2343 <function name="buffer_add_utf16"
2344 c:identifier="hb_buffer_add_utf16"
2345 version="0.9.2">
2346 <doc xml:space="preserve"
2347 filename="../src/hb-buffer.cc"
2348 line="1601">See hb_buffer_add_codepoints().
2349
2350 Replaces invalid UTF-16 characters with the @buffer replacement code point,
2351 see hb_buffer_set_replacement_codepoint().</doc>
2352 <source-position filename="../src/hb-buffer.h" line="400"/>
2353 <return-value transfer-ownership="none">
2354 <type name="none" c:type="void"/>
2355 </return-value>
2356 <parameters>
2357 <parameter name="buffer" transfer-ownership="none">
2358 <doc xml:space="preserve"
2359 filename="../src/hb-buffer.cc"
2360 line="1603">an #hb_buffer_t.</doc>
2361 <type name="buffer_t" c:type="hb_buffer_t*"/>
2362 </parameter>
2363 <parameter name="text" transfer-ownership="none">
2364 <doc xml:space="preserve"
2365 filename="../src/hb-buffer.cc"
2366 line="1604">an array of UTF-16 characters to append.</doc>
2367 <array length="2" zero-terminated="0" c:type="const uint16_t*">
2368 <type name="guint16" c:type="uint16_t"/>
2369 </array>
2370 </parameter>
2371 <parameter name="text_length" transfer-ownership="none">
2372 <doc xml:space="preserve"
2373 filename="../src/hb-buffer.cc"
2374 line="1605">the length of the @text, or -1 if it is %NULL terminated.</doc>
2375 <type name="gint" c:type="int"/>
2376 </parameter>
2377 <parameter name="item_offset" transfer-ownership="none">
2378 <doc xml:space="preserve"
2379 filename="../src/hb-buffer.cc"
2380 line="1606">the offset of the first character to add to the @buffer.</doc>
2381 <type name="guint" c:type="unsigned int"/>
2382 </parameter>
2383 <parameter name="item_length" transfer-ownership="none">
2384 <doc xml:space="preserve"
2385 filename="../src/hb-buffer.cc"
2386 line="1607">the number of characters to add to the @buffer, or -1 for the
2387 end of @text (assuming it is %NULL terminated).</doc>
2388 <type name="gint" c:type="int"/>
2389 </parameter>
2390 </parameters>
2391 </function>
2392 <function name="buffer_add_utf32"
2393 c:identifier="hb_buffer_add_utf32"
2394 version="0.9.2">
2395 <doc xml:space="preserve"
2396 filename="../src/hb-buffer.cc"
2397 line="1627">See hb_buffer_add_codepoints().
2398
2399 Replaces invalid UTF-32 characters with the @buffer replacement code point,
2400 see hb_buffer_set_replacement_codepoint().</doc>
2401 <source-position filename="../src/hb-buffer.h" line="407"/>
2402 <return-value transfer-ownership="none">
2403 <type name="none" c:type="void"/>
2404 </return-value>
2405 <parameters>
2406 <parameter name="buffer" transfer-ownership="none">
2407 <doc xml:space="preserve"
2408 filename="../src/hb-buffer.cc"
2409 line="1629">an #hb_buffer_t.</doc>
2410 <type name="buffer_t" c:type="hb_buffer_t*"/>
2411 </parameter>
2412 <parameter name="text" transfer-ownership="none">
2413 <doc xml:space="preserve"
2414 filename="../src/hb-buffer.cc"
2415 line="1630">an array of UTF-32 characters to append.</doc>
2416 <array length="2" zero-terminated="0" c:type="const uint32_t*">
2417 <type name="guint32" c:type="uint32_t"/>
2418 </array>
2419 </parameter>
2420 <parameter name="text_length" transfer-ownership="none">
2421 <doc xml:space="preserve"
2422 filename="../src/hb-buffer.cc"
2423 line="1631">the length of the @text, or -1 if it is %NULL terminated.</doc>
2424 <type name="gint" c:type="int"/>
2425 </parameter>
2426 <parameter name="item_offset" transfer-ownership="none">
2427 <doc xml:space="preserve"
2428 filename="../src/hb-buffer.cc"
2429 line="1632">the offset of the first character to add to the @buffer.</doc>
2430 <type name="guint" c:type="unsigned int"/>
2431 </parameter>
2432 <parameter name="item_length" transfer-ownership="none">
2433 <doc xml:space="preserve"
2434 filename="../src/hb-buffer.cc"
2435 line="1633">the number of characters to add to the @buffer, or -1 for the
2436 end of @text (assuming it is %NULL terminated).</doc>
2437 <type name="gint" c:type="int"/>
2438 </parameter>
2439 </parameters>
2440 </function>
2441 <function name="buffer_add_utf8"
2442 c:identifier="hb_buffer_add_utf8"
2443 version="0.9.2">
2444 <doc xml:space="preserve"
2445 filename="../src/hb-buffer.cc"
2446 line="1574">See hb_buffer_add_codepoints().
2447
2448 Replaces invalid UTF-8 characters with the @buffer replacement code point,
2449 see hb_buffer_set_replacement_codepoint().</doc>
2450 <source-position filename="../src/hb-buffer.h" line="393"/>
2451 <return-value transfer-ownership="none">
2452 <type name="none" c:type="void"/>
2453 </return-value>
2454 <parameters>
2455 <parameter name="buffer" transfer-ownership="none">
2456 <doc xml:space="preserve"
2457 filename="../src/hb-buffer.cc"
2458 line="1576">an #hb_buffer_t.</doc>
2459 <type name="buffer_t" c:type="hb_buffer_t*"/>
2460 </parameter>
2461 <parameter name="text" transfer-ownership="none">
2462 <doc xml:space="preserve"
2463 filename="../src/hb-buffer.cc"
2464 line="1577">an array of UTF-8
2465 characters to append.</doc>
2466 <array length="2" zero-terminated="0" c:type="const char*">
2467 <type name="guint8"/>
2468 </array>
2469 </parameter>
2470 <parameter name="text_length" transfer-ownership="none">
2471 <doc xml:space="preserve"
2472 filename="../src/hb-buffer.cc"
2473 line="1579">the length of the @text, or -1 if it is %NULL terminated.</doc>
2474 <type name="gint" c:type="int"/>
2475 </parameter>
2476 <parameter name="item_offset" transfer-ownership="none">
2477 <doc xml:space="preserve"
2478 filename="../src/hb-buffer.cc"
2479 line="1580">the offset of the first character to add to the @buffer.</doc>
2480 <type name="guint" c:type="unsigned int"/>
2481 </parameter>
2482 <parameter name="item_length" transfer-ownership="none">
2483 <doc xml:space="preserve"
2484 filename="../src/hb-buffer.cc"
2485 line="1581">the number of characters to add to the @buffer, or -1 for the
2486 end of @text (assuming it is %NULL terminated).</doc>
2487 <type name="gint" c:type="int"/>
2488 </parameter>
2489 </parameters>
2490 </function>
2491 <function name="buffer_allocation_successful"
2492 c:identifier="hb_buffer_allocation_successful"
2493 version="0.9.2">
2494 <doc xml:space="preserve"
2495 filename="../src/hb-buffer.cc"
2496 line="1253">Check if allocating memory for the buffer succeeded.</doc>
2497 <source-position filename="../src/hb-buffer.h" line="372"/>
2498 <return-value transfer-ownership="none">
2499 <doc xml:space="preserve"
2500 filename="../src/hb-buffer.cc"
2501 line="1259">%true if @buffer memory allocation succeeded, %false otherwise.</doc>
2502 <type name="bool_t" c:type="hb_bool_t"/>
2503 </return-value>
2504 <parameters>
2505 <parameter name="buffer" transfer-ownership="none">
2506 <doc xml:space="preserve"
2507 filename="../src/hb-buffer.cc"
2508 line="1255">an #hb_buffer_t.</doc>
2509 <type name="buffer_t" c:type="hb_buffer_t*"/>
2510 </parameter>
2511 </parameters>
2512 </function>
2513 <function name="buffer_append"
2514 c:identifier="hb_buffer_append"
2515 version="1.5.0">
2516 <doc xml:space="preserve"
2517 filename="../src/hb-buffer.cc"
2518 line="1715">Append (part of) contents of another buffer to this buffer.</doc>
2519 <source-position filename="../src/hb-buffer.h" line="428"/>
2520 <return-value transfer-ownership="none">
2521 <type name="none" c:type="void"/>
2522 </return-value>
2523 <parameters>
2524 <parameter name="buffer" transfer-ownership="none">
2525 <doc xml:space="preserve"
2526 filename="../src/hb-buffer.cc"
2527 line="1717">an #hb_buffer_t.</doc>
2528 <type name="buffer_t" c:type="hb_buffer_t*"/>
2529 </parameter>
2530 <parameter name="source" transfer-ownership="none">
2531 <doc xml:space="preserve"
2532 filename="../src/hb-buffer.cc"
2533 line="1718">source #hb_buffer_t.</doc>
2534 <type name="buffer_t" c:type="hb_buffer_t*"/>
2535 </parameter>
2536 <parameter name="start" transfer-ownership="none">
2537 <doc xml:space="preserve"
2538 filename="../src/hb-buffer.cc"
2539 line="1719">start index into source buffer to copy. Use 0 to copy from start of buffer.</doc>
2540 <type name="guint" c:type="unsigned int"/>
2541 </parameter>
2542 <parameter name="end" transfer-ownership="none">
2543 <doc xml:space="preserve"
2544 filename="../src/hb-buffer.cc"
2545 line="1720">end index into source buffer to copy. Use @HB_FEATURE_GLOBAL_END to copy to end of buffer.</doc>
2546 <type name="guint" c:type="unsigned int"/>
2547 </parameter>
2548 </parameters>
2549 </function>
2550 <function name="buffer_clear_contents"
2551 c:identifier="hb_buffer_clear_contents"
2552 version="0.9.11">
2553 <doc xml:space="preserve"
2554 filename="../src/hb-buffer.cc"
2555 line="1220">Similar to hb_buffer_reset(), but does not clear the Unicode functions and
2556 the replacement code point.</doc>
2557 <source-position filename="../src/hb-buffer.h" line="364"/>
2558 <return-value transfer-ownership="none">
2559 <type name="none" c:type="void"/>
2560 </return-value>
2561 <parameters>
2562 <parameter name="buffer" transfer-ownership="none">
2563 <doc xml:space="preserve"
2564 filename="../src/hb-buffer.cc"
2565 line="1222">an #hb_buffer_t.</doc>
2566 <type name="buffer_t" c:type="hb_buffer_t*"/>
2567 </parameter>
2568 </parameters>
2569 </function>
2570 <enumeration name="buffer_cluster_level_t"
2571 version="0.9.42"
2572 glib:type-name="hb_buffer_cluster_level_t"
2573 glib:get-type="hb_gobject_buffer_cluster_level_get_type"
2574 c:type="hb_buffer_cluster_level_t">
2575 <member name="monotone_graphemes"
2576 value="0"
2577 c:identifier="HB_BUFFER_CLUSTER_LEVEL_MONOTONE_GRAPHEMES"
2578 glib:nick="monotone-graphemes">
2579 <doc xml:space="preserve"
2580 filename="../src/hb-buffer.h"
2581 line="312">Return cluster values grouped by graphemes into
2582 monotone order.</doc>
2583 </member>
2584 <member name="monotone_characters"
2585 value="1"
2586 c:identifier="HB_BUFFER_CLUSTER_LEVEL_MONOTONE_CHARACTERS"
2587 glib:nick="monotone-characters">
2588 <doc xml:space="preserve"
2589 filename="../src/hb-buffer.h"
2590 line="314">Return cluster values grouped into monotone order.</doc>
2591 </member>
2592 <member name="characters"
2593 value="2"
2594 c:identifier="HB_BUFFER_CLUSTER_LEVEL_CHARACTERS"
2595 glib:nick="characters">
2596 <doc xml:space="preserve"
2597 filename="../src/hb-buffer.h"
2598 line="315">Don't group cluster values.</doc>
2599 </member>
2600 <member name="default"
2601 value="0"
2602 c:identifier="HB_BUFFER_CLUSTER_LEVEL_DEFAULT"
2603 glib:nick="default">
2604 <doc xml:space="preserve"
2605 filename="../src/hb-buffer.h"
2606 line="316">Default cluster level,
2607 equal to @HB_BUFFER_CLUSTER_LEVEL_MONOTONE_GRAPHEMES.</doc>
2608 </member>
2609 </enumeration>
2610 <enumeration name="buffer_content_type_t"
2611 glib:type-name="hb_buffer_content_type_t"
2612 glib:get-type="hb_gobject_buffer_content_type_get_type"
2613 c:type="hb_buffer_content_type_t">
2614 <member name="invalid"
2615 value="0"
2616 c:identifier="HB_BUFFER_CONTENT_TYPE_INVALID"
2617 glib:nick="invalid">
2618 <doc xml:space="preserve"
2619 filename="../src/hb-buffer.h"
2620 line="204">Initial value for new buffer.</doc>
2621 </member>
2622 <member name="unicode"
2623 value="1"
2624 c:identifier="HB_BUFFER_CONTENT_TYPE_UNICODE"
2625 glib:nick="unicode">
2626 <doc xml:space="preserve"
2627 filename="../src/hb-buffer.h"
2628 line="205">The buffer contains input characters (before shaping).</doc>
2629 </member>
2630 <member name="glyphs"
2631 value="2"
2632 c:identifier="HB_BUFFER_CONTENT_TYPE_GLYPHS"
2633 glib:nick="glyphs">
2634 <doc xml:space="preserve"
2635 filename="../src/hb-buffer.h"
2636 line="206">The buffer contains output glyphs (after shaping).</doc>
2637 </member>
2638 </enumeration>
2639 <function name="buffer_create"
2640 c:identifier="hb_buffer_create"
2641 version="0.9.2">
2642 <doc xml:space="preserve"
2643 filename="../src/hb-buffer.cc"
2644 line="676">Creates a new #hb_buffer_t with all properties to defaults.</doc>
2645 <source-position filename="../src/hb-buffer.h" line="179"/>
2646 <return-value transfer-ownership="full">
2647 <doc xml:space="preserve"
2648 filename="../src/hb-buffer.cc"
2649 line="681">
2650 A newly allocated #hb_buffer_t with a reference count of 1. The initial
2651 reference count should be released with hb_buffer_destroy() when you are done
2652 using the #hb_buffer_t. This function never returns %NULL. If memory cannot
2653 be allocated, a special #hb_buffer_t object will be returned on which
2654 hb_buffer_allocation_successful() returns %false.</doc>
2655 <type name="buffer_t" c:type="hb_buffer_t*"/>
2656 </return-value>
2657 </function>
2658 <function name="buffer_deserialize_glyphs"
2659 c:identifier="hb_buffer_deserialize_glyphs"
2660 version="0.9.7">
2661 <source-position filename="../src/hb-buffer.h" line="522"/>
2662 <return-value transfer-ownership="none">
2663 <type name="bool_t" c:type="hb_bool_t"/>
2664 </return-value>
2665 <parameters>
2666 <parameter name="buffer" transfer-ownership="none">
2667 <doc xml:space="preserve"
2668 filename="../src/hb-buffer-serialize.cc"
2669 line="411">an #hb_buffer_t buffer.</doc>
2670 <type name="buffer_t" c:type="hb_buffer_t*"/>
2671 </parameter>
2672 <parameter name="buf" transfer-ownership="none">
2673 <array length="2" zero-terminated="0" c:type="const char*">
2674 <type name="utf8" c:type="char"/>
2675 </array>
2676 </parameter>
2677 <parameter name="buf_len" transfer-ownership="none">
2678 <type name="gint" c:type="int"/>
2679 </parameter>
2680 <parameter name="end_ptr"
2681 direction="out"
2682 caller-allocates="0"
2683 transfer-ownership="full">
2684 <type name="utf8" c:type="const char**"/>
2685 </parameter>
2686 <parameter name="font" transfer-ownership="none">
2687 <type name="font_t" c:type="hb_font_t*"/>
2688 </parameter>
2689 <parameter name="format" transfer-ownership="none">
2690 <type name="buffer_serialize_format_t"
2691 c:type="hb_buffer_serialize_format_t"/>
2692 </parameter>
2693 </parameters>
2694 </function>
2695 <function name="buffer_destroy"
2696 c:identifier="hb_buffer_destroy"
2697 version="0.9.2"
2698 introspectable="0">
2699 <doc xml:space="preserve"
2700 filename="../src/hb-buffer.cc"
2701 line="739">Deallocate the @buffer.
2702 Decreases the reference count on @buffer by one. If the result is zero, then
2703 @buffer and all associated resources are freed. See hb_buffer_reference().</doc>
2704 <source-position filename="../src/hb-buffer.h" line="188"/>
2705 <return-value transfer-ownership="none">
2706 <type name="none" c:type="void"/>
2707 </return-value>
2708 <parameters>
2709 <parameter name="buffer" transfer-ownership="none">
2710 <doc xml:space="preserve"
2711 filename="../src/hb-buffer.cc"
2712 line="741">an #hb_buffer_t.</doc>
2713 <type name="buffer_t" c:type="hb_buffer_t*"/>
2714 </parameter>
2715 </parameters>
2716 </function>
2717 <function name="buffer_diff" c:identifier="hb_buffer_diff" version="1.5.0">
2718 <doc xml:space="preserve"
2719 filename="../src/hb-buffer.cc"
2720 line="1872">If dottedcircle_glyph is (hb_codepoint_t) -1 then %HB_BUFFER_DIFF_FLAG_DOTTED_CIRCLE_PRESENT
2721 and %HB_BUFFER_DIFF_FLAG_NOTDEF_PRESENT are never returned. This should be used by most
2722 callers if just comparing two buffers is needed.</doc>
2723 <source-position filename="../src/hb-buffer.h" line="563"/>
2724 <return-value transfer-ownership="none">
2725 <type name="buffer_diff_flags_t" c:type="hb_buffer_diff_flags_t"/>
2726 </return-value>
2727 <parameters>
2728 <parameter name="buffer" transfer-ownership="none">
2729 <doc xml:space="preserve"
2730 filename="../src/hb-buffer.cc"
2731 line="1874">a buffer.</doc>
2732 <type name="buffer_t" c:type="hb_buffer_t*"/>
2733 </parameter>
2734 <parameter name="reference" transfer-ownership="none">
2735 <doc xml:space="preserve"
2736 filename="../src/hb-buffer.cc"
2737 line="1875">other buffer to compare to.</doc>
2738 <type name="buffer_t" c:type="hb_buffer_t*"/>
2739 </parameter>
2740 <parameter name="dottedcircle_glyph" transfer-ownership="none">
2741 <doc xml:space="preserve"
2742 filename="../src/hb-buffer.cc"
2743 line="1876">glyph id of U+25CC DOTTED CIRCLE, or (hb_codepont_t) -1.</doc>
2744 <type name="codepoint_t" c:type="hb_codepoint_t"/>
2745 </parameter>
2746 <parameter name="position_fuzz" transfer-ownership="none">
2747 <doc xml:space="preserve"
2748 filename="../src/hb-buffer.cc"
2749 line="1877">allowed absolute difference in position values.</doc>
2750 <type name="guint" c:type="unsigned int"/>
2751 </parameter>
2752 </parameters>
2753 </function>
2754 <bitfield name="buffer_diff_flags_t"
2755 glib:type-name="hb_buffer_diff_flags_t"
2756 glib:get-type="hb_gobject_buffer_diff_flags_get_type"
2757 c:type="hb_buffer_diff_flags_t">
2758 <member name="equal"
2759 value="0"
2760 c:identifier="HB_BUFFER_DIFF_FLAG_EQUAL"
2761 glib:nick="equal">
2762 </member>
2763 <member name="content_type_mismatch"
2764 value="1"
2765 c:identifier="HB_BUFFER_DIFF_FLAG_CONTENT_TYPE_MISMATCH"
2766 glib:nick="content-type-mismatch">
2767 </member>
2768 <member name="length_mismatch"
2769 value="2"
2770 c:identifier="HB_BUFFER_DIFF_FLAG_LENGTH_MISMATCH"
2771 glib:nick="length-mismatch">
2772 </member>
2773 <member name="notdef_present"
2774 value="4"
2775 c:identifier="HB_BUFFER_DIFF_FLAG_NOTDEF_PRESENT"
2776 glib:nick="notdef-present">
2777 </member>
2778 <member name="dotted_circle_present"
2779 value="8"
2780 c:identifier="HB_BUFFER_DIFF_FLAG_DOTTED_CIRCLE_PRESENT"
2781 glib:nick="dotted-circle-present">
2782 </member>
2783 <member name="codepoint_mismatch"
2784 value="16"
2785 c:identifier="HB_BUFFER_DIFF_FLAG_CODEPOINT_MISMATCH"
2786 glib:nick="codepoint-mismatch">
2787 </member>
2788 <member name="cluster_mismatch"
2789 value="32"
2790 c:identifier="HB_BUFFER_DIFF_FLAG_CLUSTER_MISMATCH"
2791 glib:nick="cluster-mismatch">
2792 </member>
2793 <member name="glyph_flags_mismatch"
2794 value="64"
2795 c:identifier="HB_BUFFER_DIFF_FLAG_GLYPH_FLAGS_MISMATCH"
2796 glib:nick="glyph-flags-mismatch">
2797 </member>
2798 <member name="position_mismatch"
2799 value="128"
2800 c:identifier="HB_BUFFER_DIFF_FLAG_POSITION_MISMATCH"
2801 glib:nick="position-mismatch">
2802 </member>
2803 </bitfield>
2804 <bitfield name="buffer_flags_t"
2805 version="0.9.20"
2806 glib:type-name="hb_buffer_flags_t"
2807 glib:get-type="hb_gobject_buffer_flags_get_type"
2808 c:type="hb_buffer_flags_t">
2809 <member name="default"
2810 value="0"
2811 c:identifier="HB_BUFFER_FLAG_DEFAULT"
2812 glib:nick="default">
2813 <doc xml:space="preserve"
2814 filename="../src/hb-buffer.h"
2815 line="265">the default buffer flag.</doc>
2816 </member>
2817 <member name="bot"
2818 value="1"
2819 c:identifier="HB_BUFFER_FLAG_BOT"
2820 glib:nick="bot">
2821 <doc xml:space="preserve"
2822 filename="../src/hb-buffer.h"
2823 line="266">flag indicating that special handling of the beginning
2824 of text paragraph can be applied to this buffer. Should usually
2825 be set, unless you are passing to the buffer only part
2826 of the text without the full context.</doc>
2827 </member>
2828 <member name="eot"
2829 value="2"
2830 c:identifier="HB_BUFFER_FLAG_EOT"
2831 glib:nick="eot">
2832 <doc xml:space="preserve"
2833 filename="../src/hb-buffer.h"
2834 line="270">flag indicating that special handling of the end of text
2835 paragraph can be applied to this buffer, similar to
2836 @HB_BUFFER_FLAG_BOT.</doc>
2837 </member>
2838 <member name="preserve_default_ignorables"
2839 value="4"
2840 c:identifier="HB_BUFFER_FLAG_PRESERVE_DEFAULT_IGNORABLES"
2841 glib:nick="preserve-default-ignorables">
2842 <doc xml:space="preserve"
2843 filename="../src/hb-buffer.h"
2844 line="273">flag indication that character with Default_Ignorable
2845 Unicode property should use the corresponding glyph
2846 from the font, instead of hiding them (done by
2847 replacing them with the space glyph and zeroing the
2848 advance width.) This flag takes precedence over
2849 @HB_BUFFER_FLAG_REMOVE_DEFAULT_IGNORABLES.</doc>
2850 </member>
2851 <member name="remove_default_ignorables"
2852 value="8"
2853 c:identifier="HB_BUFFER_FLAG_REMOVE_DEFAULT_IGNORABLES"
2854 glib:nick="remove-default-ignorables">
2855 <doc xml:space="preserve"
2856 filename="../src/hb-buffer.h"
2857 line="280">flag indication that character with Default_Ignorable
2858 Unicode property should be removed from glyph string
2859 instead of hiding them (done by replacing them with the
2860 space glyph and zeroing the advance width.)
2861 @HB_BUFFER_FLAG_PRESERVE_DEFAULT_IGNORABLES takes
2862 precedence over this flag. Since: 1.8.0</doc>
2863 </member>
2864 <member name="do_not_insert_dotted_circle"
2865 value="16"
2866 c:identifier="HB_BUFFER_FLAG_DO_NOT_INSERT_DOTTED_CIRCLE"
2867 glib:nick="do-not-insert-dotted-circle">
2868 <doc xml:space="preserve"
2869 filename="../src/hb-buffer.h"
2870 line="287">flag indicating that a dotted circle should
2871 not be inserted in the rendering of incorrect
2872 character sequences (such at &lt;0905 093E&gt;). Since: 2.4</doc>
2873 </member>
2874 </bitfield>
2875 <function name="buffer_get_cluster_level"
2876 c:identifier="hb_buffer_get_cluster_level"
2877 version="0.9.42">
2878 <source-position filename="../src/hb-buffer.h" line="333"/>
2879 <return-value transfer-ownership="none">
2880 <type name="buffer_cluster_level_t"
2881 c:type="hb_buffer_cluster_level_t"/>
2882 </return-value>
2883 <parameters>
2884 <parameter name="buffer" transfer-ownership="none">
2885 <doc xml:space="preserve"
2886 filename="../src/hb-buffer.cc"
2887 line="1110">an #hb_buffer_t.</doc>
2888 <type name="buffer_t" c:type="hb_buffer_t*"/>
2889 </parameter>
2890 </parameters>
2891 </function>
2892 <function name="buffer_get_content_type"
2893 c:identifier="hb_buffer_get_content_type"
2894 version="0.9.5">
2895 <doc xml:space="preserve"
2896 filename="../src/hb-buffer.cc"
2897 line="826">see hb_buffer_set_content_type().</doc>
2898 <source-position filename="../src/hb-buffer.h" line="219"/>
2899 <return-value transfer-ownership="none">
2900 <doc xml:space="preserve"
2901 filename="../src/hb-buffer.cc"
2902 line="832">The type of @buffer contents.</doc>
2903 <type name="buffer_content_type_t" c:type="hb_buffer_content_type_t"/>
2904 </return-value>
2905 <parameters>
2906 <parameter name="buffer" transfer-ownership="none">
2907 <doc xml:space="preserve"
2908 filename="../src/hb-buffer.cc"
2909 line="828">an #hb_buffer_t.</doc>
2910 <type name="buffer_t" c:type="hb_buffer_t*"/>
2911 </parameter>
2912 </parameters>
2913 </function>
2914 <function name="buffer_get_direction"
2915 c:identifier="hb_buffer_get_direction"
2916 version="0.9.2">
2917 <doc xml:space="preserve"
2918 filename="../src/hb-buffer.cc"
2919 line="910">See hb_buffer_set_direction()</doc>
2920 <source-position filename="../src/hb-buffer.h" line="234"/>
2921 <return-value transfer-ownership="none">
2922 <doc xml:space="preserve"
2923 filename="../src/hb-buffer.cc"
2924 line="916">The direction of the @buffer.</doc>
2925 <type name="direction_t" c:type="hb_direction_t"/>
2926 </return-value>
2927 <parameters>
2928 <parameter name="buffer" transfer-ownership="none">
2929 <doc xml:space="preserve"
2930 filename="../src/hb-buffer.cc"
2931 line="912">an #hb_buffer_t.</doc>
2932 <type name="buffer_t" c:type="hb_buffer_t*"/>
2933 </parameter>
2934 </parameters>
2935 </function>
2936 <function name="buffer_get_empty"
2937 c:identifier="hb_buffer_get_empty"
2938 version="0.9.2">
2939 <source-position filename="../src/hb-buffer.h" line="182"/>
2940 <return-value transfer-ownership="full">
2941 <type name="buffer_t" c:type="hb_buffer_t*"/>
2942 </return-value>
2943 </function>
2944 <function name="buffer_get_flags"
2945 c:identifier="hb_buffer_get_flags"
2946 version="0.9.7">
2947 <doc xml:space="preserve"
2948 filename="../src/hb-buffer.cc"
2949 line="1072">See hb_buffer_set_flags().</doc>
2950 <source-position filename="../src/hb-buffer.h" line="308"/>
2951 <return-value transfer-ownership="none">
2952 <doc xml:space="preserve"
2953 filename="../src/hb-buffer.cc"
2954 line="1078">The @buffer flags.</doc>
2955 <type name="buffer_flags_t" c:type="hb_buffer_flags_t"/>
2956 </return-value>
2957 <parameters>
2958 <parameter name="buffer" transfer-ownership="none">
2959 <doc xml:space="preserve"
2960 filename="../src/hb-buffer.cc"
2961 line="1074">an #hb_buffer_t.</doc>
2962 <type name="buffer_t" c:type="hb_buffer_t*"/>
2963 </parameter>
2964 </parameters>
2965 </function>
2966 <function name="buffer_get_glyph_infos"
2967 c:identifier="hb_buffer_get_glyph_infos"
2968 version="0.9.2">
2969 <doc xml:space="preserve"
2970 filename="../src/hb-buffer.cc"
2971 line="1356">Returns @buffer glyph information array. Returned pointer
2972 is valid as long as @buffer contents are not modified.</doc>
2973 <source-position filename="../src/hb-buffer.h" line="443"/>
2974 <return-value transfer-ownership="none">
2975 <doc xml:space="preserve"
2976 filename="../src/hb-buffer.cc"
2977 line="1364">
2978 The @buffer glyph information array.
2979 The value valid as long as buffer has not been modified.</doc>
2980 <array length="1" zero-terminated="0" c:type="hb_glyph_info_t*">
2981 <type name="glyph_info_t" c:type="hb_glyph_info_t"/>
2982 </array>
2983 </return-value>
2984 <parameters>
2985 <parameter name="buffer" transfer-ownership="none">
2986 <doc xml:space="preserve"
2987 filename="../src/hb-buffer.cc"
2988 line="1358">an #hb_buffer_t.</doc>
2989 <type name="buffer_t" c:type="hb_buffer_t*"/>
2990 </parameter>
2991 <parameter name="length"
2992 direction="out"
2993 caller-allocates="0"
2994 transfer-ownership="full">
2995 <doc xml:space="preserve"
2996 filename="../src/hb-buffer.cc"
2997 line="1359">output array length.</doc>
2998 <type name="guint" c:type="unsigned int*"/>
2999 </parameter>
3000 </parameters>
3001 </function>
3002 <function name="buffer_get_glyph_positions"
3003 c:identifier="hb_buffer_get_glyph_positions"
3004 version="0.9.2">
3005 <doc xml:space="preserve"
3006 filename="../src/hb-buffer.cc"
3007 line="1380">Returns @buffer glyph position array. Returned pointer
3008 is valid as long as @buffer contents are not modified.</doc>
3009 <source-position filename="../src/hb-buffer.h" line="447"/>
3010 <return-value transfer-ownership="none">
3011 <doc xml:space="preserve"
3012 filename="../src/hb-buffer.cc"
3013 line="1388">
3014 The @buffer glyph position array.
3015 The value valid as long as buffer has not been modified.</doc>
3016 <array length="1" zero-terminated="0" c:type="hb_glyph_position_t*">
3017 <type name="glyph_position_t" c:type="hb_glyph_position_t"/>
3018 </array>
3019 </return-value>
3020 <parameters>
3021 <parameter name="buffer" transfer-ownership="none">
3022 <doc xml:space="preserve"
3023 filename="../src/hb-buffer.cc"
3024 line="1382">an #hb_buffer_t.</doc>
3025 <type name="buffer_t" c:type="hb_buffer_t*"/>
3026 </parameter>
3027 <parameter name="length"
3028 direction="out"
3029 caller-allocates="0"
3030 transfer-ownership="full">
3031 <doc xml:space="preserve"
3032 filename="../src/hb-buffer.cc"
3033 line="1383">output length.</doc>
3034 <type name="guint" c:type="unsigned int*"/>
3035 </parameter>
3036 </parameters>
3037 </function>
3038 <function name="buffer_get_invisible_glyph"
3039 c:identifier="hb_buffer_get_invisible_glyph"
3040 version="2.0.0">
3041 <doc xml:space="preserve"
3042 filename="../src/hb-buffer.cc"
3043 line="1187">See hb_buffer_set_invisible_glyph().</doc>
3044 <source-position filename="../src/hb-buffer.h" line="357"/>
3045 <return-value transfer-ownership="none">
3046 <doc xml:space="preserve"
3047 filename="../src/hb-buffer.cc"
3048 line="1193">The @buffer invisible #hb_codepoint_t.</doc>
3049 <type name="codepoint_t" c:type="hb_codepoint_t"/>
3050 </return-value>
3051 <parameters>
3052 <parameter name="buffer" transfer-ownership="none">
3053 <doc xml:space="preserve"
3054 filename="../src/hb-buffer.cc"
3055 line="1189">an #hb_buffer_t.</doc>
3056 <type name="buffer_t" c:type="hb_buffer_t*"/>
3057 </parameter>
3058 </parameters>
3059 </function>
3060 <function name="buffer_get_language"
3061 c:identifier="hb_buffer_get_language"
3062 version="0.9.2">
3063 <doc xml:space="preserve"
3064 filename="../src/hb-buffer.cc"
3065 line="998">See hb_buffer_set_language().</doc>
3066 <source-position filename="../src/hb-buffer.h" line="249"/>
3067 <return-value transfer-ownership="none">
3068 <doc xml:space="preserve"
3069 filename="../src/hb-buffer.cc"
3070 line="1004">
3071 The #hb_language_t of the buffer. Must not be freed by the caller.</doc>
3072 <type name="language_t" c:type="hb_language_t"/>
3073 </return-value>
3074 <parameters>
3075 <parameter name="buffer" transfer-ownership="none">
3076 <doc xml:space="preserve"
3077 filename="../src/hb-buffer.cc"
3078 line="1000">an #hb_buffer_t.</doc>
3079 <type name="buffer_t" c:type="hb_buffer_t*"/>
3080 </parameter>
3081 </parameters>
3082 </function>
3083 <function name="buffer_get_length"
3084 c:identifier="hb_buffer_get_length"
3085 version="0.9.2">
3086 <doc xml:space="preserve"
3087 filename="../src/hb-buffer.cc"
3088 line="1338">Returns the number of items in the buffer.</doc>
3089 <source-position filename="../src/hb-buffer.h" line="438"/>
3090 <return-value transfer-ownership="none">
3091 <doc xml:space="preserve"
3092 filename="../src/hb-buffer.cc"
3093 line="1344">The @buffer length.
3094 The value valid as long as buffer has not been modified.</doc>
3095 <type name="guint" c:type="unsigned int"/>
3096 </return-value>
3097 <parameters>
3098 <parameter name="buffer" transfer-ownership="none">
3099 <doc xml:space="preserve"
3100 filename="../src/hb-buffer.cc"
3101 line="1340">an #hb_buffer_t.</doc>
3102 <type name="buffer_t" c:type="hb_buffer_t*"/>
3103 </parameter>
3104 </parameters>
3105 </function>
3106 <function name="buffer_get_replacement_codepoint"
3107 c:identifier="hb_buffer_get_replacement_codepoint"
3108 version="0.9.31">
3109 <doc xml:space="preserve"
3110 filename="../src/hb-buffer.cc"
3111 line="1147">See hb_buffer_set_replacement_codepoint().</doc>
3112 <source-position filename="../src/hb-buffer.h" line="350"/>
3113 <return-value transfer-ownership="none">
3114 <doc xml:space="preserve"
3115 filename="../src/hb-buffer.cc"
3116 line="1153">The @buffer replacement #hb_codepoint_t.</doc>
3117 <type name="codepoint_t" c:type="hb_codepoint_t"/>
3118 </return-value>
3119 <parameters>
3120 <parameter name="buffer" transfer-ownership="none">
3121 <doc xml:space="preserve"
3122 filename="../src/hb-buffer.cc"
3123 line="1149">an #hb_buffer_t.</doc>
3124 <type name="buffer_t" c:type="hb_buffer_t*"/>
3125 </parameter>
3126 </parameters>
3127 </function>
3128 <function name="buffer_get_script"
3129 c:identifier="hb_buffer_get_script"
3130 version="0.9.2">
3131 <doc xml:space="preserve"
3132 filename="../src/hb-buffer.cc"
3133 line="954">See hb_buffer_set_script().</doc>
3134 <source-position filename="../src/hb-buffer.h" line="241"/>
3135 <return-value transfer-ownership="none">
3136 <doc xml:space="preserve"
3137 filename="../src/hb-buffer.cc"
3138 line="960">The #hb_script_t of the @buffer.</doc>
3139 <type name="script_t" c:type="hb_script_t"/>
3140 </return-value>
3141 <parameters>
3142 <parameter name="buffer" transfer-ownership="none">
3143 <doc xml:space="preserve"
3144 filename="../src/hb-buffer.cc"
3145 line="956">an #hb_buffer_t.</doc>
3146 <type name="buffer_t" c:type="hb_buffer_t*"/>
3147 </parameter>
3148 </parameters>
3149 </function>
3150 <function name="buffer_get_segment_properties"
3151 c:identifier="hb_buffer_get_segment_properties"
3152 version="0.9.7">
3153 <doc xml:space="preserve"
3154 filename="../src/hb-buffer.cc"
3155 line="1036">Sets @props to the #hb_segment_properties_t of @buffer.</doc>
3156 <source-position filename="../src/hb-buffer.h" line="256"/>
3157 <return-value transfer-ownership="none">
3158 <type name="none" c:type="void"/>
3159 </return-value>
3160 <parameters>
3161 <parameter name="buffer" transfer-ownership="none">
3162 <doc xml:space="preserve"
3163 filename="../src/hb-buffer.cc"
3164 line="1038">an #hb_buffer_t.</doc>
3165 <type name="buffer_t" c:type="hb_buffer_t*"/>
3166 </parameter>
3167 <parameter name="props"
3168 direction="out"
3169 caller-allocates="1"
3170 transfer-ownership="none">
3171 <doc xml:space="preserve"
3172 filename="../src/hb-buffer.cc"
3173 line="1039">the output #hb_segment_properties_t.</doc>
3174 <type name="segment_properties_t" c:type="hb_segment_properties_t*"/>
3175 </parameter>
3176 </parameters>
3177 </function>
3178 <function name="buffer_get_unicode_funcs"
3179 c:identifier="hb_buffer_get_unicode_funcs"
3180 version="0.9.2">
3181 <source-position filename="../src/hb-buffer.h" line="227"/>
3182 <return-value transfer-ownership="full">
3183 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
3184 </return-value>
3185 <parameters>
3186 <parameter name="buffer" transfer-ownership="none">
3187 <doc xml:space="preserve"
3188 filename="../src/hb-buffer.cc"
3189 line="870">an #hb_buffer_t.</doc>
3190 <type name="buffer_t" c:type="hb_buffer_t*"/>
3191 </parameter>
3192 </parameters>
3193 </function>
3194 <function name="buffer_get_user_data"
3195 c:identifier="hb_buffer_get_user_data"
3196 version="0.9.2"
3197 introspectable="0">
3198 <source-position filename="../src/hb-buffer.h" line="198"/>
3199 <return-value transfer-ownership="none" nullable="1">
3200 <type name="gpointer" c:type="void*"/>
3201 </return-value>
3202 <parameters>
3203 <parameter name="buffer" transfer-ownership="none">
3204 <doc xml:space="preserve"
3205 filename="../src/hb-buffer.cc"
3206 line="792">an #hb_buffer_t.</doc>
3207 <type name="buffer_t" c:type="hb_buffer_t*"/>
3208 </parameter>
3209 <parameter name="key" transfer-ownership="none">
3210 <type name="user_data_key_t" c:type="hb_user_data_key_t*"/>
3211 </parameter>
3212 </parameters>
3213 </function>
3214 <function name="buffer_guess_segment_properties"
3215 c:identifier="hb_buffer_guess_segment_properties"
3216 version="0.9.7">
3217 <doc xml:space="preserve"
3218 filename="../src/hb-buffer.cc"
3219 line="1471">Sets unset buffer segment properties based on buffer Unicode
3220 contents. If buffer is not empty, it must have content type
3221 %HB_BUFFER_CONTENT_TYPE_UNICODE.
3222
3223 If buffer script is not set (ie. is %HB_SCRIPT_INVALID), it
3224 will be set to the Unicode script of the first character in
3225 the buffer that has a script other than %HB_SCRIPT_COMMON,
3226 %HB_SCRIPT_INHERITED, and %HB_SCRIPT_UNKNOWN.
3227
3228 Next, if buffer direction is not set (ie. is %HB_DIRECTION_INVALID),
3229 it will be set to the natural horizontal direction of the
3230 buffer script as returned by hb_script_get_horizontal_direction().
3231 If hb_script_get_horizontal_direction() returns %HB_DIRECTION_INVALID,
3232 then %HB_DIRECTION_LTR is used.
3233
3234 Finally, if buffer language is not set (ie. is %HB_LANGUAGE_INVALID),
3235 it will be set to the process's default language as returned by
3236 hb_language_get_default(). This may change in the future by
3237 taking buffer script into consideration when choosing a language.
3238 Note that hb_language_get_default() is NOT threadsafe the first time
3239 it is called. See documentation for that function for details.</doc>
3240 <source-position filename="../src/hb-buffer.h" line="260"/>
3241 <return-value transfer-ownership="none">
3242 <type name="none" c:type="void"/>
3243 </return-value>
3244 <parameters>
3245 <parameter name="buffer" transfer-ownership="none">
3246 <doc xml:space="preserve"
3247 filename="../src/hb-buffer.cc"
3248 line="1473">an #hb_buffer_t.</doc>
3249 <type name="buffer_t" c:type="hb_buffer_t*"/>
3250 </parameter>
3251 </parameters>
3252 </function>
3253 <callback name="buffer_message_func_t" c:type="hb_buffer_message_func_t">
3254 <source-position filename="../src/hb-buffer.h" line="573"/>
3255 <return-value transfer-ownership="none">
3256 <type name="bool_t" c:type="hb_bool_t"/>
3257 </return-value>
3258 <parameters>
3259 <parameter name="buffer" transfer-ownership="none">
3260 <type name="buffer_t" c:type="hb_buffer_t*"/>
3261 </parameter>
3262 <parameter name="font" transfer-ownership="none">
3263 <type name="font_t" c:type="hb_font_t*"/>
3264 </parameter>
3265 <parameter name="message" transfer-ownership="none">
3266 <type name="utf8" c:type="const char*"/>
3267 </parameter>
3268 <parameter name="user_data"
3269 transfer-ownership="none"
3270 nullable="1"
3271 allow-none="1"
3272 closure="3">
3273 <type name="gpointer" c:type="void*"/>
3274 </parameter>
3275 </parameters>
3276 </callback>
3277 <function name="buffer_normalize_glyphs"
3278 c:identifier="hb_buffer_normalize_glyphs"
3279 version="0.9.2">
3280 <doc xml:space="preserve"
3281 filename="../src/hb-buffer.cc"
3282 line="1822">Reorders a glyph buffer to have canonical in-cluster glyph order / position.
3283 The resulting clusters should behave identical to pre-reordering clusters.
3284
3285 &lt;note&gt;This has nothing to do with Unicode normalization.&lt;/note&gt;</doc>
3286 <source-position filename="../src/hb-buffer.h" line="452"/>
3287 <return-value transfer-ownership="none">
3288 <type name="none" c:type="void"/>
3289 </return-value>
3290 <parameters>
3291 <parameter name="buffer" transfer-ownership="none">
3292 <doc xml:space="preserve"
3293 filename="../src/hb-buffer.cc"
3294 line="1824">an #hb_buffer_t.</doc>
3295 <type name="buffer_t" c:type="hb_buffer_t*"/>
3296 </parameter>
3297 </parameters>
3298 </function>
3299 <function name="buffer_pre_allocate"
3300 c:identifier="hb_buffer_pre_allocate"
3301 version="0.9.2">
3302 <doc xml:space="preserve"
3303 filename="../src/hb-buffer.cc"
3304 line="1235">Pre allocates memory for @buffer to fit at least @size number of items.</doc>
3305 <source-position filename="../src/hb-buffer.h" line="367"/>
3306 <return-value transfer-ownership="none">
3307 <doc xml:space="preserve"
3308 filename="../src/hb-buffer.cc"
3309 line="1242">%true if @buffer memory allocation succeeded, %false otherwise.</doc>
3310 <type name="bool_t" c:type="hb_bool_t"/>
3311 </return-value>
3312 <parameters>
3313 <parameter name="buffer" transfer-ownership="none">
3314 <doc xml:space="preserve"
3315 filename="../src/hb-buffer.cc"
3316 line="1237">an #hb_buffer_t.</doc>
3317 <type name="buffer_t" c:type="hb_buffer_t*"/>
3318 </parameter>
3319 <parameter name="size" transfer-ownership="none">
3320 <doc xml:space="preserve"
3321 filename="../src/hb-buffer.cc"
3322 line="1238">number of items to pre allocate.</doc>
3323 <type name="guint" c:type="unsigned int"/>
3324 </parameter>
3325 </parameters>
3326 </function>
3327 <function name="buffer_reference"
3328 c:identifier="hb_buffer_reference"
3329 version="0.9.2"
3330 introspectable="0">
3331 <doc xml:space="preserve"
3332 filename="../src/hb-buffer.cc"
3333 line="721">Increases the reference count on @buffer by one. This prevents @buffer from
3334 being destroyed until a matching call to hb_buffer_destroy() is made.</doc>
3335 <source-position filename="../src/hb-buffer.h" line="185"/>
3336 <return-value transfer-ownership="full">
3337 <doc xml:space="preserve"
3338 filename="../src/hb-buffer.cc"
3339 line="728">
3340 The referenced #hb_buffer_t.</doc>
3341 <type name="buffer_t" c:type="hb_buffer_t*"/>
3342 </return-value>
3343 <parameters>
3344 <parameter name="buffer" transfer-ownership="none">
3345 <doc xml:space="preserve"
3346 filename="../src/hb-buffer.cc"
3347 line="723">an #hb_buffer_t.</doc>
3348 <type name="buffer_t" c:type="hb_buffer_t*"/>
3349 </parameter>
3350 </parameters>
3351 </function>
3352 <function name="buffer_reset"
3353 c:identifier="hb_buffer_reset"
3354 version="0.9.2">
3355 <doc xml:space="preserve"
3356 filename="../src/hb-buffer.cc"
3357 line="1205">Resets the buffer to its initial status, as if it was just newly created
3358 with hb_buffer_create().</doc>
3359 <source-position filename="../src/hb-buffer.h" line="361"/>
3360 <return-value transfer-ownership="none">
3361 <type name="none" c:type="void"/>
3362 </return-value>
3363 <parameters>
3364 <parameter name="buffer" transfer-ownership="none">
3365 <doc xml:space="preserve"
3366 filename="../src/hb-buffer.cc"
3367 line="1207">an #hb_buffer_t.</doc>
3368 <type name="buffer_t" c:type="hb_buffer_t*"/>
3369 </parameter>
3370 </parameters>
3371 </function>
3372 <function name="buffer_reverse"
3373 c:identifier="hb_buffer_reverse"
3374 version="0.9.2">
3375 <doc xml:space="preserve"
3376 filename="../src/hb-buffer.cc"
3377 line="1424">Reverses buffer contents.</doc>
3378 <source-position filename="../src/hb-buffer.h" line="375"/>
3379 <return-value transfer-ownership="none">
3380 <type name="none" c:type="void"/>
3381 </return-value>
3382 <parameters>
3383 <parameter name="buffer" transfer-ownership="none">
3384 <doc xml:space="preserve"
3385 filename="../src/hb-buffer.cc"
3386 line="1426">an #hb_buffer_t.</doc>
3387 <type name="buffer_t" c:type="hb_buffer_t*"/>
3388 </parameter>
3389 </parameters>
3390 </function>
3391 <function name="buffer_reverse_clusters"
3392 c:identifier="hb_buffer_reverse_clusters"
3393 version="0.9.2">
3394 <doc xml:space="preserve"
3395 filename="../src/hb-buffer.cc"
3396 line="1455">Reverses buffer clusters. That is, the buffer contents are
3397 reversed, then each cluster (consecutive items having the
3398 same cluster number) are reversed again.</doc>
3399 <source-position filename="../src/hb-buffer.h" line="382"/>
3400 <return-value transfer-ownership="none">
3401 <type name="none" c:type="void"/>
3402 </return-value>
3403 <parameters>
3404 <parameter name="buffer" transfer-ownership="none">
3405 <doc xml:space="preserve"
3406 filename="../src/hb-buffer.cc"
3407 line="1457">an #hb_buffer_t.</doc>
3408 <type name="buffer_t" c:type="hb_buffer_t*"/>
3409 </parameter>
3410 </parameters>
3411 </function>
3412 <function name="buffer_reverse_range"
3413 c:identifier="hb_buffer_reverse_range"
3414 version="0.9.41">
3415 <doc xml:space="preserve"
3416 filename="../src/hb-buffer.cc"
3417 line="1438">Reverses buffer contents between start to end.</doc>
3418 <source-position filename="../src/hb-buffer.h" line="378"/>
3419 <return-value transfer-ownership="none">
3420 <type name="none" c:type="void"/>
3421 </return-value>
3422 <parameters>
3423 <parameter name="buffer" transfer-ownership="none">
3424 <doc xml:space="preserve"
3425 filename="../src/hb-buffer.cc"
3426 line="1440">an #hb_buffer_t.</doc>
3427 <type name="buffer_t" c:type="hb_buffer_t*"/>
3428 </parameter>
3429 <parameter name="start" transfer-ownership="none">
3430 <doc xml:space="preserve"
3431 filename="../src/hb-buffer.cc"
3432 line="1441">start index.</doc>
3433 <type name="guint" c:type="unsigned int"/>
3434 </parameter>
3435 <parameter name="end" transfer-ownership="none">
3436 <doc xml:space="preserve"
3437 filename="../src/hb-buffer.cc"
3438 line="1442">end index.</doc>
3439 <type name="guint" c:type="unsigned int"/>
3440 </parameter>
3441 </parameters>
3442 </function>
3443 <bitfield name="buffer_serialize_flags_t"
3444 version="0.9.20"
3445 glib:type-name="hb_buffer_serialize_flags_t"
3446 glib:get-type="hb_gobject_buffer_serialize_flags_get_type"
3447 c:type="hb_buffer_serialize_flags_t">
3448 <doc xml:space="preserve"
3449 filename="../src/hb-buffer.h"
3450 line="459">Flags that control what glyph information are serialized in hb_buffer_serialize_glyphs().</doc>
3451 <member name="default"
3452 value="0"
3453 c:identifier="HB_BUFFER_SERIALIZE_FLAG_DEFAULT"
3454 glib:nick="default">
3455 <doc xml:space="preserve"
3456 filename="../src/hb-buffer.h"
3457 line="461">serialize glyph names, clusters and positions.</doc>
3458 </member>
3459 <member name="no_clusters"
3460 value="1"
3461 c:identifier="HB_BUFFER_SERIALIZE_FLAG_NO_CLUSTERS"
3462 glib:nick="no-clusters">
3463 <doc xml:space="preserve"
3464 filename="../src/hb-buffer.h"
3465 line="462">do not serialize glyph cluster.</doc>
3466 </member>
3467 <member name="no_positions"
3468 value="2"
3469 c:identifier="HB_BUFFER_SERIALIZE_FLAG_NO_POSITIONS"
3470 glib:nick="no-positions">
3471 <doc xml:space="preserve"
3472 filename="../src/hb-buffer.h"
3473 line="463">do not serialize glyph position information.</doc>
3474 </member>
3475 <member name="no_glyph_names"
3476 value="4"
3477 c:identifier="HB_BUFFER_SERIALIZE_FLAG_NO_GLYPH_NAMES"
3478 glib:nick="no-glyph-names">
3479 <doc xml:space="preserve"
3480 filename="../src/hb-buffer.h"
3481 line="464">do no serialize glyph name.</doc>
3482 </member>
3483 <member name="glyph_extents"
3484 value="8"
3485 c:identifier="HB_BUFFER_SERIALIZE_FLAG_GLYPH_EXTENTS"
3486 glib:nick="glyph-extents">
3487 <doc xml:space="preserve"
3488 filename="../src/hb-buffer.h"
3489 line="465">serialize glyph extents.</doc>
3490 </member>
3491 <member name="glyph_flags"
3492 value="16"
3493 c:identifier="HB_BUFFER_SERIALIZE_FLAG_GLYPH_FLAGS"
3494 glib:nick="glyph-flags">
3495 <doc xml:space="preserve"
3496 filename="../src/hb-buffer.h"
3497 line="466">serialize glyph flags. Since: 1.5.0</doc>
3498 </member>
3499 <member name="no_advances"
3500 value="32"
3501 c:identifier="HB_BUFFER_SERIALIZE_FLAG_NO_ADVANCES"
3502 glib:nick="no-advances">
3503 <doc xml:space="preserve"
3504 filename="../src/hb-buffer.h"
3505 line="467">do not serialize glyph advances,
3506 glyph offsets will reflect absolute glyph positions. Since: 1.8.0</doc>
3507 </member>
3508 </bitfield>
3509 <function name="buffer_serialize_format_from_string"
3510 c:identifier="hb_buffer_serialize_format_from_string"
3511 version="0.9.7">
3512 <doc xml:space="preserve"
3513 filename="../src/hb-buffer-serialize.cc"
3514 line="56">Parses a string into an #hb_buffer_serialize_format_t. Does not check if
3515 @str is a valid buffer serialization format, use
3516 hb_buffer_serialize_list_formats() to get the list of supported formats.</doc>
3517 <source-position filename="../src/hb-buffer.h" line="502"/>
3518 <return-value transfer-ownership="none">
3519 <doc xml:space="preserve"
3520 filename="../src/hb-buffer-serialize.cc"
3521 line="65">The parsed #hb_buffer_serialize_format_t.</doc>
3522 <type name="buffer_serialize_format_t"
3523 c:type="hb_buffer_serialize_format_t"/>
3524 </return-value>
3525 <parameters>
3526 <parameter name="str" transfer-ownership="none">
3527 <doc xml:space="preserve"
3528 filename="../src/hb-buffer-serialize.cc"
3529 line="58">a string to parse</doc>
3530 <array length="1" zero-terminated="0" c:type="const char*">
3531 <type name="guint8"/>
3532 </array>
3533 </parameter>
3534 <parameter name="len" transfer-ownership="none">
3535 <doc xml:space="preserve"
3536 filename="../src/hb-buffer-serialize.cc"
3537 line="59">length of @str, or -1 if string is %NULL terminated</doc>
3538 <type name="gint" c:type="int"/>
3539 </parameter>
3540 </parameters>
3541 </function>
3542 <enumeration name="buffer_serialize_format_t"
3543 version="0.9.2"
3544 glib:type-name="hb_buffer_serialize_format_t"
3545 glib:get-type="hb_gobject_buffer_serialize_format_get_type"
3546 c:type="hb_buffer_serialize_format_t">
3547 <doc xml:space="preserve"
3548 filename="../src/hb-buffer.h"
3549 line="484">The buffer serialization and de-serialization format used in
3550 hb_buffer_serialize_glyphs() and hb_buffer_deserialize_glyphs().</doc>
3551 <member name="text"
3552 value="1413830740"
3553 c:identifier="HB_BUFFER_SERIALIZE_FORMAT_TEXT"
3554 glib:nick="text">
3555 <doc xml:space="preserve"
3556 filename="../src/hb-buffer.h"
3557 line="486">a human-readable, plain text format.</doc>
3558 </member>
3559 <member name="json"
3560 value="1246973774"
3561 c:identifier="HB_BUFFER_SERIALIZE_FORMAT_JSON"
3562 glib:nick="json">
3563 <doc xml:space="preserve"
3564 filename="../src/hb-buffer.h"
3565 line="487">a machine-readable JSON format.</doc>
3566 </member>
3567 <member name="invalid"
3568 value="0"
3569 c:identifier="HB_BUFFER_SERIALIZE_FORMAT_INVALID"
3570 glib:nick="invalid">
3571 <doc xml:space="preserve"
3572 filename="../src/hb-buffer.h"
3573 line="488">invalid format.</doc>
3574 </member>
3575 </enumeration>
3576 <function name="buffer_serialize_format_to_string"
3577 c:identifier="hb_buffer_serialize_format_to_string"
3578 version="0.9.7">
3579 <doc xml:space="preserve"
3580 filename="../src/hb-buffer-serialize.cc"
3581 line="77">Converts @format to the string corresponding it, or %NULL if it is not a valid
3582 #hb_buffer_serialize_format_t.</doc>
3583 <source-position filename="../src/hb-buffer.h" line="505"/>
3584 <return-value transfer-ownership="none">
3585 <doc xml:space="preserve"
3586 filename="../src/hb-buffer-serialize.cc"
3587 line="84">
3588 A %NULL terminated string corresponding to @format. Should not be freed.</doc>
3589 <type name="utf8" c:type="const char*"/>
3590 </return-value>
3591 <parameters>
3592 <parameter name="format" transfer-ownership="none">
3593 <doc xml:space="preserve"
3594 filename="../src/hb-buffer-serialize.cc"
3595 line="79">an #hb_buffer_serialize_format_t to convert.</doc>
3596 <type name="buffer_serialize_format_t"
3597 c:type="hb_buffer_serialize_format_t"/>
3598 </parameter>
3599 </parameters>
3600 </function>
3601 <function name="buffer_serialize_glyphs"
3602 c:identifier="hb_buffer_serialize_glyphs"
3603 version="0.9.7">
3604 <doc xml:space="preserve"
3605 filename="../src/hb-buffer-serialize.cc"
3606 line="285">Serializes @buffer into a textual representation of its glyph content,
3607 useful for showing the contents of the buffer, for example during debugging.
3608 There are currently two supported serialization formats:
3609
3610 ## text
3611 A human-readable, plain text format.
3612 The serialized glyphs will look something like:
3613
3614 ```
3615 [uni0651=0@518,0+0|uni0628=0+1897]
3616 ```
3617 - The serialized glyphs are delimited with `[` and `]`.
3618 - Glyphs are separated with `|`
3619 - Each glyph starts with glyph name, or glyph index if
3620 #HB_BUFFER_SERIALIZE_FLAG_NO_GLYPH_NAMES flag is set. Then,
3621 - If #HB_BUFFER_SERIALIZE_FLAG_NO_CLUSTERS is not set, `=` then #hb_glyph_info_t.cluster.
3622 - If #HB_BUFFER_SERIALIZE_FLAG_NO_POSITIONS is not set, the #hb_glyph_position_t in the format:
3623 - If both #hb_glyph_position_t.x_offset and #hb_glyph_position_t.y_offset are not 0, `@x_offset,y_offset`. Then,
3624 - `+x_advance`, then `,y_advance` if #hb_glyph_position_t.y_advance is not 0. Then,
3625 - If #HB_BUFFER_SERIALIZE_FLAG_GLYPH_EXTENTS is set, the
3626 #hb_glyph_extents_t in the format
3627 `&amp;lt;x_bearing,y_bearing,width,height&amp;gt;`
3628
3629 ## json
3630 TODO.</doc>
3631 <source-position filename="../src/hb-buffer.h" line="511"/>
3632 <return-value transfer-ownership="none">
3633 <doc xml:space="preserve"
3634 filename="../src/hb-buffer-serialize.cc"
3635 line="326">The number of serialized items.</doc>
3636 <type name="guint" c:type="unsigned int"/>
3637 </return-value>
3638 <parameters>
3639 <parameter name="buffer" transfer-ownership="none">
3640 <doc xml:space="preserve"
3641 filename="../src/hb-buffer-serialize.cc"
3642 line="287">an #hb_buffer_t buffer.</doc>
3643 <type name="buffer_t" c:type="hb_buffer_t*"/>
3644 </parameter>
3645 <parameter name="start" transfer-ownership="none">
3646 <doc xml:space="preserve"
3647 filename="../src/hb-buffer-serialize.cc"
3648 line="288">the first item in @buffer to serialize.</doc>
3649 <type name="guint" c:type="unsigned int"/>
3650 </parameter>
3651 <parameter name="end" transfer-ownership="none">
3652 <doc xml:space="preserve"
3653 filename="../src/hb-buffer-serialize.cc"
3654 line="289">the last item in @buffer to serialize.</doc>
3655 <type name="guint" c:type="unsigned int"/>
3656 </parameter>
3657 <parameter name="buf"
3658 direction="out"
3659 caller-allocates="0"
3660 transfer-ownership="full">
3661 <doc xml:space="preserve"
3662 filename="../src/hb-buffer-serialize.cc"
3663 line="290">output string to
3664 write serialized buffer into.</doc>
3665 <array length="4" zero-terminated="0" c:type="char*">
3666 <type name="guint8"/>
3667 </array>
3668 </parameter>
3669 <parameter name="buf_size"
3670 direction="out"
3671 caller-allocates="0"
3672 transfer-ownership="full">
3673 <doc xml:space="preserve"
3674 filename="../src/hb-buffer-serialize.cc"
3675 line="292">the size of @buf.</doc>
3676 <type name="guint" c:type="unsigned int"/>
3677 </parameter>
3678 <parameter name="buf_consumed"
3679 direction="out"
3680 caller-allocates="0"
3681 transfer-ownership="full"
3682 optional="1"
3683 allow-none="1">
3684 <doc xml:space="preserve"
3685 filename="../src/hb-buffer-serialize.cc"
3686 line="293">if not %NULL, will be set to the number of byes written into @buf.</doc>
3687 <type name="guint" c:type="unsigned int*"/>
3688 </parameter>
3689 <parameter name="font"
3690 transfer-ownership="none"
3691 nullable="1"
3692 allow-none="1">
3693 <doc xml:space="preserve"
3694 filename="../src/hb-buffer-serialize.cc"
3695 line="294">the #hb_font_t used to shape this buffer, needed to
3696 read glyph names and extents. If %NULL, and empty font will be used.</doc>
3697 <type name="font_t" c:type="hb_font_t*"/>
3698 </parameter>
3699 <parameter name="format" transfer-ownership="none">
3700 <doc xml:space="preserve"
3701 filename="../src/hb-buffer-serialize.cc"
3702 line="296">the #hb_buffer_serialize_format_t to use for formatting the output.</doc>
3703 <type name="buffer_serialize_format_t"
3704 c:type="hb_buffer_serialize_format_t"/>
3705 </parameter>
3706 <parameter name="flags" transfer-ownership="none">
3707 <doc xml:space="preserve"
3708 filename="../src/hb-buffer-serialize.cc"
3709 line="297">the #hb_buffer_serialize_flags_t that control what glyph properties
3710 to serialize.</doc>
3711 <type name="buffer_serialize_flags_t"
3712 c:type="hb_buffer_serialize_flags_t"/>
3713 </parameter>
3714 </parameters>
3715 </function>
3716 <function name="buffer_serialize_list_formats"
3717 c:identifier="hb_buffer_serialize_list_formats"
3718 version="0.9.7">
3719 <doc xml:space="preserve"
3720 filename="../src/hb-buffer-serialize.cc"
3721 line="40">Returns a list of supported buffer serialization formats.</doc>
3722 <source-position filename="../src/hb-buffer.h" line="508"/>
3723 <return-value transfer-ownership="none">
3724 <doc xml:space="preserve"
3725 filename="../src/hb-buffer-serialize.cc"
3726 line="45">
3727 A string array of buffer serialization formats. Should not be freed.</doc>
3728 <array c:type="const char**">
3729 <type name="utf8"/>
3730 </array>
3731 </return-value>
3732 </function>
3733 <function name="buffer_set_cluster_level"
3734 c:identifier="hb_buffer_set_cluster_level"
3735 version="0.9.42">
3736 <source-position filename="../src/hb-buffer.h" line="329"/>
3737 <return-value transfer-ownership="none">
3738 <type name="none" c:type="void"/>
3739 </return-value>
3740 <parameters>
3741 <parameter name="buffer" transfer-ownership="none">
3742 <doc xml:space="preserve"
3743 filename="../src/hb-buffer.cc"
3744 line="1091">an #hb_buffer_t.</doc>
3745 <type name="buffer_t" c:type="hb_buffer_t*"/>
3746 </parameter>
3747 <parameter name="cluster_level" transfer-ownership="none">
3748 <type name="buffer_cluster_level_t"
3749 c:type="hb_buffer_cluster_level_t"/>
3750 </parameter>
3751 </parameters>
3752 </function>
3753 <function name="buffer_set_content_type"
3754 c:identifier="hb_buffer_set_content_type"
3755 version="0.9.5">
3756 <doc xml:space="preserve"
3757 filename="../src/hb-buffer.cc"
3758 line="809">Sets the type of @buffer contents, buffers are either empty, contain
3759 characters (before shaping) or glyphs (the result of shaping).</doc>
3760 <source-position filename="../src/hb-buffer.h" line="215"/>
3761 <return-value transfer-ownership="none">
3762 <type name="none" c:type="void"/>
3763 </return-value>
3764 <parameters>
3765 <parameter name="buffer" transfer-ownership="none">
3766 <doc xml:space="preserve"
3767 filename="../src/hb-buffer.cc"
3768 line="811">an #hb_buffer_t.</doc>
3769 <type name="buffer_t" c:type="hb_buffer_t*"/>
3770 </parameter>
3771 <parameter name="content_type" transfer-ownership="none">
3772 <doc xml:space="preserve"
3773 filename="../src/hb-buffer.cc"
3774 line="812">the type of buffer contents to set</doc>
3775 <type name="buffer_content_type_t"
3776 c:type="hb_buffer_content_type_t"/>
3777 </parameter>
3778 </parameters>
3779 </function>
3780 <function name="buffer_set_direction"
3781 c:identifier="hb_buffer_set_direction"
3782 version="0.9.2">
3783 <doc xml:space="preserve"
3784 filename="../src/hb-buffer.cc"
3785 line="884">Set the text flow direction of the buffer. No shaping can happen without
3786 setting @buffer direction, and it controls the visual direction for the
3787 output glyphs; for RTL direction the glyphs will be reversed. Many layout
3788 features depend on the proper setting of the direction, for example,
3789 reversing RTL text before shaping, then shaping with LTR direction is not
3790 the same as keeping the text in logical order and shaping with RTL
3791 direction.</doc>
3792 <source-position filename="../src/hb-buffer.h" line="230"/>
3793 <return-value transfer-ownership="none">
3794 <type name="none" c:type="void"/>
3795 </return-value>
3796 <parameters>
3797 <parameter name="buffer" transfer-ownership="none">
3798 <doc xml:space="preserve"
3799 filename="../src/hb-buffer.cc"
3800 line="886">an #hb_buffer_t.</doc>
3801 <type name="buffer_t" c:type="hb_buffer_t*"/>
3802 </parameter>
3803 <parameter name="direction" transfer-ownership="none">
3804 <doc xml:space="preserve"
3805 filename="../src/hb-buffer.cc"
3806 line="887">the #hb_direction_t of the @buffer</doc>
3807 <type name="direction_t" c:type="hb_direction_t"/>
3808 </parameter>
3809 </parameters>
3810 </function>
3811 <function name="buffer_set_flags"
3812 c:identifier="hb_buffer_set_flags"
3813 version="0.9.7">
3814 <doc xml:space="preserve"
3815 filename="../src/hb-buffer.cc"
3816 line="1053">Sets @buffer flags to @flags. See #hb_buffer_flags_t.</doc>
3817 <source-position filename="../src/hb-buffer.h" line="304"/>
3818 <return-value transfer-ownership="none">
3819 <type name="none" c:type="void"/>
3820 </return-value>
3821 <parameters>
3822 <parameter name="buffer" transfer-ownership="none">
3823 <doc xml:space="preserve"
3824 filename="../src/hb-buffer.cc"
3825 line="1055">an #hb_buffer_t.</doc>
3826 <type name="buffer_t" c:type="hb_buffer_t*"/>
3827 </parameter>
3828 <parameter name="flags" transfer-ownership="none">
3829 <doc xml:space="preserve"
3830 filename="../src/hb-buffer.cc"
3831 line="1056">the buffer flags to set.</doc>
3832 <type name="buffer_flags_t" c:type="hb_buffer_flags_t"/>
3833 </parameter>
3834 </parameters>
3835 </function>
3836 <function name="buffer_set_invisible_glyph"
3837 c:identifier="hb_buffer_set_invisible_glyph"
3838 version="2.0.0">
3839 <doc xml:space="preserve"
3840 filename="../src/hb-buffer.cc"
3841 line="1165">Sets the #hb_codepoint_t that replaces invisible characters in
3842 the shaping result. If set to zero (default), the glyph for the
3843 U+0020 SPACE character is used. Otherwise, this value is used
3844 verbatim.</doc>
3845 <source-position filename="../src/hb-buffer.h" line="353"/>
3846 <return-value transfer-ownership="none">
3847 <type name="none" c:type="void"/>
3848 </return-value>
3849 <parameters>
3850 <parameter name="buffer" transfer-ownership="none">
3851 <doc xml:space="preserve"
3852 filename="../src/hb-buffer.cc"
3853 line="1167">an #hb_buffer_t.</doc>
3854 <type name="buffer_t" c:type="hb_buffer_t*"/>
3855 </parameter>
3856 <parameter name="invisible" transfer-ownership="none">
3857 <doc xml:space="preserve"
3858 filename="../src/hb-buffer.cc"
3859 line="1168">the invisible #hb_codepoint_t</doc>
3860 <type name="codepoint_t" c:type="hb_codepoint_t"/>
3861 </parameter>
3862 </parameters>
3863 </function>
3864 <function name="buffer_set_language"
3865 c:identifier="hb_buffer_set_language"
3866 version="0.9.2">
3867 <doc xml:space="preserve"
3868 filename="../src/hb-buffer.cc"
3869 line="971">Sets the language of @buffer to @language.
3870
3871 Languages are crucial for selecting which OpenType feature to apply to the
3872 buffer which can result in applying language-specific behaviour. Languages
3873 are orthogonal to the scripts, and though they are related, they are
3874 different concepts and should not be confused with each other.
3875
3876 Use hb_language_from_string() to convert from BCP 47 language tags to
3877 #hb_language_t.</doc>
3878 <source-position filename="../src/hb-buffer.h" line="244"/>
3879 <return-value transfer-ownership="none">
3880 <type name="none" c:type="void"/>
3881 </return-value>
3882 <parameters>
3883 <parameter name="buffer" transfer-ownership="none">
3884 <doc xml:space="preserve"
3885 filename="../src/hb-buffer.cc"
3886 line="973">an #hb_buffer_t.</doc>
3887 <type name="buffer_t" c:type="hb_buffer_t*"/>
3888 </parameter>
3889 <parameter name="language" transfer-ownership="none">
3890 <doc xml:space="preserve"
3891 filename="../src/hb-buffer.cc"
3892 line="974">an hb_language_t to set.</doc>
3893 <type name="language_t" c:type="hb_language_t"/>
3894 </parameter>
3895 </parameters>
3896 </function>
3897 <function name="buffer_set_length"
3898 c:identifier="hb_buffer_set_length"
3899 version="0.9.2">
3900 <doc xml:space="preserve"
3901 filename="../src/hb-buffer.cc"
3902 line="1296">Similar to hb_buffer_pre_allocate(), but clears any new items added at the
3903 end.</doc>
3904 <source-position filename="../src/hb-buffer.h" line="434"/>
3905 <return-value transfer-ownership="none">
3906 <doc xml:space="preserve"
3907 filename="../src/hb-buffer.cc"
3908 line="1304">%true if @buffer memory allocation succeeded, %false otherwise.</doc>
3909 <type name="bool_t" c:type="hb_bool_t"/>
3910 </return-value>
3911 <parameters>
3912 <parameter name="buffer" transfer-ownership="none">
3913 <doc xml:space="preserve"
3914 filename="../src/hb-buffer.cc"
3915 line="1298">an #hb_buffer_t.</doc>
3916 <type name="buffer_t" c:type="hb_buffer_t*"/>
3917 </parameter>
3918 <parameter name="length" transfer-ownership="none">
3919 <doc xml:space="preserve"
3920 filename="../src/hb-buffer.cc"
3921 line="1299">the new length of @buffer.</doc>
3922 <type name="guint" c:type="unsigned int"/>
3923 </parameter>
3924 </parameters>
3925 </function>
3926 <function name="buffer_set_message_func"
3927 c:identifier="hb_buffer_set_message_func"
3928 version="1.1.3">
3929 <source-position filename="../src/hb-buffer.h" line="579"/>
3930 <return-value transfer-ownership="none">
3931 <type name="none" c:type="void"/>
3932 </return-value>
3933 <parameters>
3934 <parameter name="buffer" transfer-ownership="none">
3935 <doc xml:space="preserve"
3936 filename="../src/hb-buffer.cc"
3937 line="1970">an #hb_buffer_t.</doc>
3938 <type name="buffer_t" c:type="hb_buffer_t*"/>
3939 </parameter>
3940 <parameter name="func"
3941 transfer-ownership="none"
3942 scope="notified"
3943 closure="2"
3944 destroy="3">
3945 <type name="buffer_message_func_t"
3946 c:type="hb_buffer_message_func_t"/>
3947 </parameter>
3948 <parameter name="user_data"
3949 transfer-ownership="none"
3950 nullable="1"
3951 allow-none="1">
3952 <type name="gpointer" c:type="void*"/>
3953 </parameter>
3954 <parameter name="destroy" transfer-ownership="none" scope="notified">
3955 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
3956 </parameter>
3957 </parameters>
3958 </function>
3959 <function name="buffer_set_replacement_codepoint"
3960 c:identifier="hb_buffer_set_replacement_codepoint"
3961 version="0.9.31">
3962 <doc xml:space="preserve"
3963 filename="../src/hb-buffer.cc"
3964 line="1125">Sets the #hb_codepoint_t that replaces invalid entries for a given encoding
3965 when adding text to @buffer.
3966
3967 Default is %HB_BUFFER_REPLACEMENT_CODEPOINT_DEFAULT.</doc>
3968 <source-position filename="../src/hb-buffer.h" line="346"/>
3969 <return-value transfer-ownership="none">
3970 <type name="none" c:type="void"/>
3971 </return-value>
3972 <parameters>
3973 <parameter name="buffer" transfer-ownership="none">
3974 <doc xml:space="preserve"
3975 filename="../src/hb-buffer.cc"
3976 line="1127">an #hb_buffer_t.</doc>
3977 <type name="buffer_t" c:type="hb_buffer_t*"/>
3978 </parameter>
3979 <parameter name="replacement" transfer-ownership="none">
3980 <doc xml:space="preserve"
3981 filename="../src/hb-buffer.cc"
3982 line="1128">the replacement #hb_codepoint_t</doc>
3983 <type name="codepoint_t" c:type="hb_codepoint_t"/>
3984 </parameter>
3985 </parameters>
3986 </function>
3987 <function name="buffer_set_script"
3988 c:identifier="hb_buffer_set_script"
3989 version="0.9.2">
3990 <doc xml:space="preserve"
3991 filename="../src/hb-buffer.cc"
3992 line="927">Sets the script of @buffer to @script.
3993
3994 Script is crucial for choosing the proper shaping behaviour for scripts that
3995 require it (e.g. Arabic) and the which OpenType features defined in the font
3996 to be applied.
3997
3998 You can pass one of the predefined #hb_script_t values, or use
3999 hb_script_from_string() or hb_script_from_iso15924_tag() to get the
4000 corresponding script from an ISO 15924 script tag.</doc>
4001 <source-position filename="../src/hb-buffer.h" line="237"/>
4002 <return-value transfer-ownership="none">
4003 <type name="none" c:type="void"/>
4004 </return-value>
4005 <parameters>
4006 <parameter name="buffer" transfer-ownership="none">
4007 <doc xml:space="preserve"
4008 filename="../src/hb-buffer.cc"
4009 line="929">an #hb_buffer_t.</doc>
4010 <type name="buffer_t" c:type="hb_buffer_t*"/>
4011 </parameter>
4012 <parameter name="script" transfer-ownership="none">
4013 <doc xml:space="preserve"
4014 filename="../src/hb-buffer.cc"
4015 line="930">an #hb_script_t to set.</doc>
4016 <type name="script_t" c:type="hb_script_t"/>
4017 </parameter>
4018 </parameters>
4019 </function>
4020 <function name="buffer_set_segment_properties"
4021 c:identifier="hb_buffer_set_segment_properties"
4022 version="0.9.7">
4023 <doc xml:space="preserve"
4024 filename="../src/hb-buffer.cc"
4025 line="1015">Sets the segment properties of the buffer, a shortcut for calling
4026 hb_buffer_set_direction(), hb_buffer_set_script() and
4027 hb_buffer_set_language() individually.</doc>
4028 <source-position filename="../src/hb-buffer.h" line="252"/>
4029 <return-value transfer-ownership="none">
4030 <type name="none" c:type="void"/>
4031 </return-value>
4032 <parameters>
4033 <parameter name="buffer" transfer-ownership="none">
4034 <doc xml:space="preserve"
4035 filename="../src/hb-buffer.cc"
4036 line="1017">an #hb_buffer_t.</doc>
4037 <type name="buffer_t" c:type="hb_buffer_t*"/>
4038 </parameter>
4039 <parameter name="props" transfer-ownership="none">
4040 <doc xml:space="preserve"
4041 filename="../src/hb-buffer.cc"
4042 line="1018">an #hb_segment_properties_t to use.</doc>
4043 <type name="segment_properties_t"
4044 c:type="const hb_segment_properties_t*"/>
4045 </parameter>
4046 </parameters>
4047 </function>
4048 <function name="buffer_set_unicode_funcs"
4049 c:identifier="hb_buffer_set_unicode_funcs"
4050 version="0.9.2">
4051 <source-position filename="../src/hb-buffer.h" line="223"/>
4052 <return-value transfer-ownership="none">
4053 <type name="none" c:type="void"/>
4054 </return-value>
4055 <parameters>
4056 <parameter name="buffer" transfer-ownership="none">
4057 <doc xml:space="preserve"
4058 filename="../src/hb-buffer.cc"
4059 line="846">an #hb_buffer_t.</doc>
4060 <type name="buffer_t" c:type="hb_buffer_t*"/>
4061 </parameter>
4062 <parameter name="unicode_funcs" transfer-ownership="none">
4063 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
4064 </parameter>
4065 </parameters>
4066 </function>
4067 <function name="buffer_set_user_data"
4068 c:identifier="hb_buffer_set_user_data"
4069 version="0.9.2"
4070 introspectable="0">
4071 <source-position filename="../src/hb-buffer.h" line="191"/>
4072 <return-value transfer-ownership="none">
4073 <type name="bool_t" c:type="hb_bool_t"/>
4074 </return-value>
4075 <parameters>
4076 <parameter name="buffer" transfer-ownership="none">
4077 <doc xml:space="preserve"
4078 filename="../src/hb-buffer.cc"
4079 line="768">an #hb_buffer_t.</doc>
4080 <type name="buffer_t" c:type="hb_buffer_t*"/>
4081 </parameter>
4082 <parameter name="key" transfer-ownership="none">
4083 <type name="user_data_key_t" c:type="hb_user_data_key_t*"/>
4084 </parameter>
4085 <parameter name="data"
4086 transfer-ownership="none"
4087 nullable="1"
4088 allow-none="1">
4089 <type name="gpointer" c:type="void*"/>
4090 </parameter>
4091 <parameter name="destroy" transfer-ownership="none">
4092 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
4093 </parameter>
4094 <parameter name="replace" transfer-ownership="none">
4095 <type name="bool_t" c:type="hb_bool_t"/>
4096 </parameter>
4097 </parameters>
4098 </function>
4099 <record name="buffer_t"
4100 c:type="hb_buffer_t"
4101 glib:type-name="hb_buffer_t"
4102 glib:get-type="hb_gobject_buffer_get_type"
4103 c:symbol-prefix="gobject_buffer">
4104 <doc xml:space="preserve"
4105 filename="../src/hb-buffer.h"
4106 line="169">The main structure holding the input text and its properties before shaping,
4107 and output glyphs and their information after shaping.</doc>
4108 <source-position filename="../src/hb-buffer.h" line="176"/>
4109 </record>
4110 <function name="color_get_alpha"
4111 c:identifier="hb_color_get_alpha"
4112 version="2.1.0">
4113 <doc xml:space="preserve"
4114 filename="../src/hb-common.cc"
4115 line="1034">color: a #hb_color_t we are interested in its channels.</doc>
4116 <source-position filename="../src/hb-common.h" line="496"/>
4117 <return-value transfer-ownership="none">
4118 <doc xml:space="preserve"
4119 filename="../src/hb-common.cc"
4120 line="1038">Alpha channel value of the given color</doc>
4121 <type name="guint8" c:type="uint8_t"/>
4122 </return-value>
4123 <parameters>
4124 <parameter name="color" transfer-ownership="none">
4125 <type name="color_t" c:type="hb_color_t"/>
4126 </parameter>
4127 </parameters>
4128 </function>
4129 <function name="color_get_blue"
4130 c:identifier="hb_color_get_blue"
4131 version="2.1.0">
4132 <doc xml:space="preserve"
4133 filename="../src/hb-common.cc"
4134 line="1076">color: a #hb_color_t we are interested in its channels.</doc>
4135 <source-position filename="../src/hb-common.h" line="508"/>
4136 <return-value transfer-ownership="none">
4137 <doc xml:space="preserve"
4138 filename="../src/hb-common.cc"
4139 line="1080">Blue channel value of the given color</doc>
4140 <type name="guint8" c:type="uint8_t"/>
4141 </return-value>
4142 <parameters>
4143 <parameter name="color" transfer-ownership="none">
4144 <type name="color_t" c:type="hb_color_t"/>
4145 </parameter>
4146 </parameters>
4147 </function>
4148 <function name="color_get_green"
4149 c:identifier="hb_color_get_green"
4150 version="2.1.0">
4151 <doc xml:space="preserve"
4152 filename="../src/hb-common.cc"
4153 line="1062">color: a #hb_color_t we are interested in its channels.</doc>
4154 <source-position filename="../src/hb-common.h" line="504"/>
4155 <return-value transfer-ownership="none">
4156 <doc xml:space="preserve"
4157 filename="../src/hb-common.cc"
4158 line="1066">Green channel value of the given color</doc>
4159 <type name="guint8" c:type="uint8_t"/>
4160 </return-value>
4161 <parameters>
4162 <parameter name="color" transfer-ownership="none">
4163 <type name="color_t" c:type="hb_color_t"/>
4164 </parameter>
4165 </parameters>
4166 </function>
4167 <function name="color_get_red"
4168 c:identifier="hb_color_get_red"
4169 version="2.1.0">
4170 <doc xml:space="preserve"
4171 filename="../src/hb-common.cc"
4172 line="1048">color: a #hb_color_t we are interested in its channels.</doc>
4173 <source-position filename="../src/hb-common.h" line="500"/>
4174 <return-value transfer-ownership="none">
4175 <doc xml:space="preserve"
4176 filename="../src/hb-common.cc"
4177 line="1052">Red channel value of the given color</doc>
4178 <type name="guint8" c:type="uint8_t"/>
4179 </return-value>
4180 <parameters>
4181 <parameter name="color" transfer-ownership="none">
4182 <type name="color_t" c:type="hb_color_t"/>
4183 </parameter>
4184 </parameters>
4185 </function>
4186 <callback name="destroy_func_t" c:type="hb_destroy_func_t">
4187 <source-position filename="../src/hb-common.h" line="418"/>
4188 <return-value transfer-ownership="none">
4189 <type name="none" c:type="void"/>
4190 </return-value>
4191 <parameters>
4192 <parameter name="user_data"
4193 transfer-ownership="none"
4194 nullable="1"
4195 allow-none="1"
4196 closure="0">
4197 <type name="gpointer" c:type="void*"/>
4198 </parameter>
4199 </parameters>
4200 </callback>
4201 <function name="direction_from_string"
4202 c:identifier="hb_direction_from_string"
4203 version="0.9.2">
4204 <source-position filename="../src/hb-common.h" line="146"/>
4205 <return-value transfer-ownership="none">
4206 <type name="direction_t" c:type="hb_direction_t"/>
4207 </return-value>
4208 <parameters>
4209 <parameter name="str" transfer-ownership="none">
4210 <array length="1" zero-terminated="0" c:type="const char*">
4211 <type name="guint8"/>
4212 </array>
4213 </parameter>
4214 <parameter name="len" transfer-ownership="none">
4215 <type name="gint" c:type="int"/>
4216 </parameter>
4217 </parameters>
4218 </function>
4219 <enumeration name="direction_t"
4220 glib:type-name="hb_direction_t"
4221 glib:get-type="hb_gobject_direction_get_type"
4222 c:type="hb_direction_t">
4223 <member name="invalid"
4224 value="0"
4225 c:identifier="HB_DIRECTION_INVALID"
4226 glib:nick="invalid">
4227 <doc xml:space="preserve"
4228 filename="../src/hb-common.h"
4229 line="130">Initial, unset direction.</doc>
4230 </member>
4231 <member name="ltr"
4232 value="4"
4233 c:identifier="HB_DIRECTION_LTR"
4234 glib:nick="ltr">
4235 <doc xml:space="preserve"
4236 filename="../src/hb-common.h"
4237 line="131">Text is set horizontally from left to right.</doc>
4238 </member>
4239 <member name="rtl"
4240 value="5"
4241 c:identifier="HB_DIRECTION_RTL"
4242 glib:nick="rtl">
4243 <doc xml:space="preserve"
4244 filename="../src/hb-common.h"
4245 line="132">Text is set horizontally from right to left.</doc>
4246 </member>
4247 <member name="ttb"
4248 value="6"
4249 c:identifier="HB_DIRECTION_TTB"
4250 glib:nick="ttb">
4251 <doc xml:space="preserve"
4252 filename="../src/hb-common.h"
4253 line="133">Text is set vertically from top to bottom.</doc>
4254 </member>
4255 <member name="btt"
4256 value="7"
4257 c:identifier="HB_DIRECTION_BTT"
4258 glib:nick="btt">
4259 <doc xml:space="preserve"
4260 filename="../src/hb-common.h"
4261 line="134">Text is set vertically from bottom to top.</doc>
4262 </member>
4263 </enumeration>
4264 <function name="direction_to_string"
4265 c:identifier="hb_direction_to_string"
4266 version="0.9.2">
4267 <source-position filename="../src/hb-common.h" line="149"/>
4268 <return-value transfer-ownership="none">
4269 <type name="utf8" c:type="const char*"/>
4270 </return-value>
4271 <parameters>
4272 <parameter name="direction" transfer-ownership="none">
4273 <type name="direction_t" c:type="hb_direction_t"/>
4274 </parameter>
4275 </parameters>
4276 </function>
4277 <function name="face_builder_add_table"
4278 c:identifier="hb_face_builder_add_table"
4279 version="1.9.0">
4280 <doc xml:space="preserve"
4281 filename="../src/hb-face.cc"
4282 line="709">Add table for @tag with data provided by @blob to the face. @face must
4283 be created using hb_face_builder_create().</doc>
4284 <source-position filename="../src/hb-face.h" line="151"/>
4285 <return-value transfer-ownership="none">
4286 <type name="bool_t" c:type="hb_bool_t"/>
4287 </return-value>
4288 <parameters>
4289 <parameter name="face" transfer-ownership="none">
4290 <type name="face_t" c:type="hb_face_t*"/>
4291 </parameter>
4292 <parameter name="tag" transfer-ownership="none">
4293 <type name="tag_t" c:type="hb_tag_t"/>
4294 </parameter>
4295 <parameter name="blob" transfer-ownership="none">
4296 <type name="blob_t" c:type="hb_blob_t*"/>
4297 </parameter>
4298 </parameters>
4299 </function>
4300 <function name="face_builder_create"
4301 c:identifier="hb_face_builder_create"
4302 version="1.9.0">
4303 <doc xml:space="preserve"
4304 filename="../src/hb-face.cc"
4305 line="687">Creates a #hb_face_t that can be used with hb_face_builder_add_table().
4306 After tables are added to the face, it can be compiled to a binary
4307 font file by calling hb_face_reference_blob().</doc>
4308 <source-position filename="../src/hb-face.h" line="148"/>
4309 <return-value transfer-ownership="full">
4310 <doc xml:space="preserve"
4311 filename="../src/hb-face.cc"
4312 line="694">New face.</doc>
4313 <type name="face_t" c:type="hb_face_t*"/>
4314 </return-value>
4315 </function>
4316 <function name="face_collect_unicodes"
4317 c:identifier="hb_face_collect_unicodes"
4318 version="1.9.0">
4319 <source-position filename="../src/hb-face.h" line="130"/>
4320 <return-value transfer-ownership="none">
4321 <type name="none" c:type="void"/>
4322 </return-value>
4323 <parameters>
4324 <parameter name="face" transfer-ownership="none">
4325 <doc xml:space="preserve"
4326 filename="../src/hb-face.cc"
4327 line="545">font face.</doc>
4328 <type name="face_t" c:type="hb_face_t*"/>
4329 </parameter>
4330 <parameter name="out" transfer-ownership="none">
4331 <doc xml:space="preserve"
4332 filename="../src/hb-face.cc"
4333 line="546">set to add Unicode characters covered by @face to.</doc>
4334 <type name="set_t" c:type="hb_set_t*"/>
4335 </parameter>
4336 </parameters>
4337 </function>
4338 <function name="face_collect_variation_selectors"
4339 c:identifier="hb_face_collect_variation_selectors"
4340 version="1.9.0">
4341 <source-position filename="../src/hb-face.h" line="134"/>
4342 <return-value transfer-ownership="none">
4343 <type name="none" c:type="void"/>
4344 </return-value>
4345 <parameters>
4346 <parameter name="face" transfer-ownership="none">
4347 <doc xml:space="preserve"
4348 filename="../src/hb-face.cc"
4349 line="558">font face.</doc>
4350 <type name="face_t" c:type="hb_face_t*"/>
4351 </parameter>
4352 <parameter name="out" transfer-ownership="none">
4353 <doc xml:space="preserve"
4354 filename="../src/hb-face.cc"
4355 line="559">set to add Variation Selector characters covered by @face to.</doc>
4356 <type name="set_t" c:type="hb_set_t*"/>
4357 </parameter>
4358 </parameters>
4359 </function>
4360 <function name="face_collect_variation_unicodes"
4361 c:identifier="hb_face_collect_variation_unicodes"
4362 version="1.9.0">
4363 <source-position filename="../src/hb-face.h" line="138"/>
4364 <return-value transfer-ownership="none">
4365 <type name="none" c:type="void"/>
4366 </return-value>
4367 <parameters>
4368 <parameter name="face" transfer-ownership="none">
4369 <doc xml:space="preserve"
4370 filename="../src/hb-face.cc"
4371 line="573">font face.</doc>
4372 <type name="face_t" c:type="hb_face_t*"/>
4373 </parameter>
4374 <parameter name="variation_selector" transfer-ownership="none">
4375 <type name="codepoint_t" c:type="hb_codepoint_t"/>
4376 </parameter>
4377 <parameter name="out" transfer-ownership="none">
4378 <doc xml:space="preserve"
4379 filename="../src/hb-face.cc"
4380 line="574">set to add Unicode characters for @variation_selector covered by @face to.</doc>
4381 <type name="set_t" c:type="hb_set_t*"/>
4382 </parameter>
4383 </parameters>
4384 </function>
4385 <function name="face_count" c:identifier="hb_face_count" version="1.7.7">
4386 <doc xml:space="preserve"
4387 filename="../src/hb-face.cc"
4388 line="51">Get number of faces in a blob.</doc>
4389 <source-position filename="../src/hb-face.h" line="42"/>
4390 <return-value transfer-ownership="none">
4391 <doc xml:space="preserve"
4392 filename="../src/hb-face.cc"
4393 line="57">Number of faces in @blob</doc>
4394 <type name="guint" c:type="unsigned int"/>
4395 </return-value>
4396 <parameters>
4397 <parameter name="blob" transfer-ownership="none">
4398 <doc xml:space="preserve"
4399 filename="../src/hb-face.cc"
4400 line="53">a blob.</doc>
4401 <type name="blob_t" c:type="hb_blob_t*"/>
4402 </parameter>
4403 </parameters>
4404 </function>
4405 <function name="face_create" c:identifier="hb_face_create" version="0.9.2">
4406 <source-position filename="../src/hb-face.h" line="52"/>
4407 <return-value transfer-ownership="full">
4408 <type name="face_t" c:type="hb_face_t*"/>
4409 </return-value>
4410 <parameters>
4411 <parameter name="blob" transfer-ownership="none">
4412 <type name="blob_t" c:type="hb_blob_t*"/>
4413 </parameter>
4414 <parameter name="index" transfer-ownership="none">
4415 <type name="guint" c:type="unsigned int"/>
4416 </parameter>
4417 </parameters>
4418 </function>
4419 <function name="face_create_for_tables"
4420 c:identifier="hb_face_create_for_tables"
4421 version="0.9.2">
4422 <source-position filename="../src/hb-face.h" line="59"/>
4423 <return-value transfer-ownership="full">
4424 <type name="face_t" c:type="hb_face_t*"/>
4425 </return-value>
4426 <parameters>
4427 <parameter name="reference_table_func"
4428 transfer-ownership="none"
4429 scope="notified"
4430 closure="1"
4431 destroy="2">
4432 <type name="reference_table_func_t"
4433 c:type="hb_reference_table_func_t"/>
4434 </parameter>
4435 <parameter name="user_data"
4436 transfer-ownership="none"
4437 nullable="1"
4438 allow-none="1">
4439 <type name="gpointer" c:type="void*"/>
4440 </parameter>
4441 <parameter name="destroy" transfer-ownership="none" scope="notified">
4442 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
4443 </parameter>
4444 </parameters>
4445 </function>
4446 <function name="face_destroy"
4447 c:identifier="hb_face_destroy"
4448 version="0.9.2"
4449 introspectable="0">
4450 <source-position filename="../src/hb-face.h" line="70"/>
4451 <return-value transfer-ownership="none">
4452 <type name="none" c:type="void"/>
4453 </return-value>
4454 <parameters>
4455 <parameter name="face" transfer-ownership="none">
4456 <doc xml:space="preserve"
4457 filename="../src/hb-face.cc"
4458 line="256">a face.</doc>
4459 <type name="face_t" c:type="hb_face_t*"/>
4460 </parameter>
4461 </parameters>
4462 </function>
4463 <function name="face_get_empty"
4464 c:identifier="hb_face_get_empty"
4465 version="0.9.2">
4466 <source-position filename="../src/hb-face.h" line="64"/>
4467 <return-value transfer-ownership="full">
4468 <type name="face_t" c:type="hb_face_t*"/>
4469 </return-value>
4470 </function>
4471 <function name="face_get_glyph_count"
4472 c:identifier="hb_face_get_glyph_count"
4473 version="0.9.7">
4474 <source-position filename="../src/hb-face.h" line="116"/>
4475 <return-value transfer-ownership="none">
4476 <type name="guint" c:type="unsigned int"/>
4477 </return-value>
4478 <parameters>
4479 <parameter name="face" transfer-ownership="none">
4480 <doc xml:space="preserve"
4481 filename="../src/hb-face.cc"
4482 line="488">a face.</doc>
4483 <type name="face_t" c:type="const hb_face_t*"/>
4484 </parameter>
4485 </parameters>
4486 </function>
4487 <function name="face_get_index"
4488 c:identifier="hb_face_get_index"
4489 version="0.9.2">
4490 <source-position filename="../src/hb-face.h" line="102"/>
4491 <return-value transfer-ownership="none">
4492 <type name="guint" c:type="unsigned int"/>
4493 </return-value>
4494 <parameters>
4495 <parameter name="face" transfer-ownership="none">
4496 <doc xml:space="preserve"
4497 filename="../src/hb-face.cc"
4498 line="418">a face.</doc>
4499 <type name="face_t" c:type="const hb_face_t*"/>
4500 </parameter>
4501 </parameters>
4502 </function>
4503 <function name="face_get_table_tags"
4504 c:identifier="hb_face_get_table_tags"
4505 version="1.6.0">
4506 <doc xml:space="preserve"
4507 filename="../src/hb-face.cc"
4508 line="502">Retrieves table tags for a face, if possible.</doc>
4509 <source-position filename="../src/hb-face.h" line="119"/>
4510 <return-value transfer-ownership="none">
4511 <doc xml:space="preserve"
4512 filename="../src/hb-face.cc"
4513 line="511">total number of tables, or 0 if not possible to list.</doc>
4514 <type name="guint" c:type="unsigned int"/>
4515 </return-value>
4516 <parameters>
4517 <parameter name="face" transfer-ownership="none">
4518 <doc xml:space="preserve"
4519 filename="../src/hb-face.cc"
4520 line="504">a face.</doc>
4521 <type name="face_t" c:type="const hb_face_t*"/>
4522 </parameter>
4523 <parameter name="start_offset" transfer-ownership="none">
4524 <doc xml:space="preserve"
4525 filename="../src/hb-face.cc"
4526 line="505">index of first tag to return.</doc>
4527 <type name="guint" c:type="unsigned int"/>
4528 </parameter>
4529 <parameter name="table_count" transfer-ownership="none">
4530 <doc xml:space="preserve"
4531 filename="../src/hb-face.cc"
4532 line="506">input length of @table_tags array, output number of items written.</doc>
4533 <type name="guint" c:type="unsigned int*"/>
4534 </parameter>
4535 <parameter name="table_tags" transfer-ownership="none">
4536 <doc xml:space="preserve"
4537 filename="../src/hb-face.cc"
4538 line="507">array to write tags into.</doc>
4539 <type name="tag_t" c:type="hb_tag_t*"/>
4540 </parameter>
4541 </parameters>
4542 </function>
4543 <function name="face_get_upem"
4544 c:identifier="hb_face_get_upem"
4545 version="0.9.2">
4546 <source-position filename="../src/hb-face.h" line="109"/>
4547 <return-value transfer-ownership="none">
4548 <type name="guint" c:type="unsigned int"/>
4549 </return-value>
4550 <parameters>
4551 <parameter name="face" transfer-ownership="none">
4552 <doc xml:space="preserve"
4553 filename="../src/hb-face.cc"
4554 line="453">a face.</doc>
4555 <type name="face_t" c:type="const hb_face_t*"/>
4556 </parameter>
4557 </parameters>
4558 </function>
4559 <function name="face_get_user_data"
4560 c:identifier="hb_face_get_user_data"
4561 version="0.9.2"
4562 introspectable="0">
4563 <source-position filename="../src/hb-face.h" line="80"/>
4564 <return-value transfer-ownership="none" nullable="1">
4565 <type name="gpointer" c:type="void*"/>
4566 </return-value>
4567 <parameters>
4568 <parameter name="face" transfer-ownership="none">
4569 <doc xml:space="preserve"
4570 filename="../src/hb-face.cc"
4571 line="310">a face.</doc>
4572 <type name="face_t" c:type="const hb_face_t*"/>
4573 </parameter>
4574 <parameter name="key" transfer-ownership="none">
4575 <type name="user_data_key_t" c:type="hb_user_data_key_t*"/>
4576 </parameter>
4577 </parameters>
4578 </function>
4579 <function name="face_is_immutable"
4580 c:identifier="hb_face_is_immutable"
4581 version="0.9.2">
4582 <source-position filename="../src/hb-face.h" line="87"/>
4583 <return-value transfer-ownership="none">
4584 <type name="bool_t" c:type="hb_bool_t"/>
4585 </return-value>
4586 <parameters>
4587 <parameter name="face" transfer-ownership="none">
4588 <doc xml:space="preserve"
4589 filename="../src/hb-face.cc"
4590 line="345">a face.</doc>
4591 <type name="face_t" c:type="const hb_face_t*"/>
4592 </parameter>
4593 </parameters>
4594 </function>
4595 <function name="face_make_immutable"
4596 c:identifier="hb_face_make_immutable"
4597 version="0.9.2">
4598 <source-position filename="../src/hb-face.h" line="84"/>
4599 <return-value transfer-ownership="none">
4600 <type name="none" c:type="void"/>
4601 </return-value>
4602 <parameters>
4603 <parameter name="face" transfer-ownership="none">
4604 <doc xml:space="preserve"
4605 filename="../src/hb-face.cc"
4606 line="328">a face.</doc>
4607 <type name="face_t" c:type="hb_face_t*"/>
4608 </parameter>
4609 </parameters>
4610 </function>
4611 <function name="face_reference"
4612 c:identifier="hb_face_reference"
4613 version="0.9.2"
4614 introspectable="0">
4615 <source-position filename="../src/hb-face.h" line="67"/>
4616 <return-value transfer-ownership="full">
4617 <type name="face_t" c:type="hb_face_t*"/>
4618 </return-value>
4619 <parameters>
4620 <parameter name="face" transfer-ownership="none">
4621 <doc xml:space="preserve"
4622 filename="../src/hb-face.cc"
4623 line="240">a face.</doc>
4624 <type name="face_t" c:type="hb_face_t*"/>
4625 </parameter>
4626 </parameters>
4627 </function>
4628 <function name="face_reference_blob"
4629 c:identifier="hb_face_reference_blob"
4630 version="0.9.2">
4631 <source-position filename="../src/hb-face.h" line="95"/>
4632 <return-value transfer-ownership="full">
4633 <type name="blob_t" c:type="hb_blob_t*"/>
4634 </return-value>
4635 <parameters>
4636 <parameter name="face" transfer-ownership="none">
4637 <doc xml:space="preserve"
4638 filename="../src/hb-face.cc"
4639 line="383">a face.</doc>
4640 <type name="face_t" c:type="hb_face_t*"/>
4641 </parameter>
4642 </parameters>
4643 </function>
4644 <function name="face_reference_table"
4645 c:identifier="hb_face_reference_table"
4646 version="0.9.2">
4647 <source-position filename="../src/hb-face.h" line="91"/>
4648 <return-value transfer-ownership="full">
4649 <type name="blob_t" c:type="hb_blob_t*"/>
4650 </return-value>
4651 <parameters>
4652 <parameter name="face" transfer-ownership="none">
4653 <doc xml:space="preserve"
4654 filename="../src/hb-face.cc"
4655 line="362">a face.</doc>
4656 <type name="face_t" c:type="const hb_face_t*"/>
4657 </parameter>
4658 <parameter name="tag" transfer-ownership="none">
4659 <type name="tag_t" c:type="hb_tag_t"/>
4660 </parameter>
4661 </parameters>
4662 </function>
4663 <function name="face_set_glyph_count"
4664 c:identifier="hb_face_set_glyph_count"
4665 version="0.9.7">
4666 <source-position filename="../src/hb-face.h" line="112"/>
4667 <return-value transfer-ownership="none">
4668 <type name="none" c:type="void"/>
4669 </return-value>
4670 <parameters>
4671 <parameter name="face" transfer-ownership="none">
4672 <doc xml:space="preserve"
4673 filename="../src/hb-face.cc"
4674 line="469">a face.</doc>
4675 <type name="face_t" c:type="hb_face_t*"/>
4676 </parameter>
4677 <parameter name="glyph_count" transfer-ownership="none">
4678 <type name="guint" c:type="unsigned int"/>
4679 </parameter>
4680 </parameters>
4681 </function>
4682 <function name="face_set_index"
4683 c:identifier="hb_face_set_index"
4684 version="0.9.2">
4685 <source-position filename="../src/hb-face.h" line="98"/>
4686 <return-value transfer-ownership="none">
4687 <type name="none" c:type="void"/>
4688 </return-value>
4689 <parameters>
4690 <parameter name="face" transfer-ownership="none">
4691 <doc xml:space="preserve"
4692 filename="../src/hb-face.cc"
4693 line="399">a face.</doc>
4694 <type name="face_t" c:type="hb_face_t*"/>
4695 </parameter>
4696 <parameter name="index" transfer-ownership="none">
4697 <type name="guint" c:type="unsigned int"/>
4698 </parameter>
4699 </parameters>
4700 </function>
4701 <function name="face_set_upem"
4702 c:identifier="hb_face_set_upem"
4703 version="0.9.2">
4704 <source-position filename="../src/hb-face.h" line="105"/>
4705 <return-value transfer-ownership="none">
4706 <type name="none" c:type="void"/>
4707 </return-value>
4708 <parameters>
4709 <parameter name="face" transfer-ownership="none">
4710 <doc xml:space="preserve"
4711 filename="../src/hb-face.cc"
4712 line="434">a face.</doc>
4713 <type name="face_t" c:type="hb_face_t*"/>
4714 </parameter>
4715 <parameter name="upem" transfer-ownership="none">
4716 <type name="guint" c:type="unsigned int"/>
4717 </parameter>
4718 </parameters>
4719 </function>
4720 <function name="face_set_user_data"
4721 c:identifier="hb_face_set_user_data"
4722 version="0.9.2"
4723 introspectable="0">
4724 <source-position filename="../src/hb-face.h" line="73"/>
4725 <return-value transfer-ownership="none">
4726 <type name="bool_t" c:type="hb_bool_t"/>
4727 </return-value>
4728 <parameters>
4729 <parameter name="face" transfer-ownership="none">
4730 <doc xml:space="preserve"
4731 filename="../src/hb-face.cc"
4732 line="286">a face.</doc>
4733 <type name="face_t" c:type="hb_face_t*"/>
4734 </parameter>
4735 <parameter name="key" transfer-ownership="none">
4736 <type name="user_data_key_t" c:type="hb_user_data_key_t*"/>
4737 </parameter>
4738 <parameter name="data"
4739 transfer-ownership="none"
4740 nullable="1"
4741 allow-none="1">
4742 <type name="gpointer" c:type="void*"/>
4743 </parameter>
4744 <parameter name="destroy" transfer-ownership="none">
4745 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
4746 </parameter>
4747 <parameter name="replace" transfer-ownership="none">
4748 <type name="bool_t" c:type="hb_bool_t"/>
4749 </parameter>
4750 </parameters>
4751 </function>
4752 <record name="face_t"
4753 c:type="hb_face_t"
4754 glib:type-name="hb_face_t"
4755 glib:get-type="hb_gobject_face_get_type"
4756 c:symbol-prefix="gobject_face">
4757 <source-position filename="../src/hb-face.h" line="49"/>
4758 </record>
4759 <function name="feature_from_string"
4760 c:identifier="hb_feature_from_string"
4761 version="0.9.5">
4762 <doc xml:space="preserve"
4763 filename="../src/hb-common.cc"
4764 line="841">Parses a string into a #hb_feature_t.
4765
4766 The format for specifying feature strings follows. All valid CSS
4767 font-feature-settings values other than 'normal' and the global values are
4768 also accepted, though not documented below. CSS string escapes are not
4769 supported.
4770
4771 The range indices refer to the positions between Unicode characters. The
4772 position before the first character is always 0.
4773
4774 The format is Python-esque. Here is how it all works:
4775
4776 &lt;informaltable pgwide='1' align='left' frame='none'&gt;
4777 &lt;tgroup cols='5'&gt;
4778 &lt;thead&gt;
4779 &lt;row&gt;&lt;entry&gt;Syntax&lt;/entry&gt; &lt;entry&gt;Value&lt;/entry&gt; &lt;entry&gt;Start&lt;/entry&gt; &lt;entry&gt;End&lt;/entry&gt;&lt;/row&gt;
4780 &lt;/thead&gt;
4781 &lt;tbody&gt;
4782 &lt;row&gt;&lt;entry&gt;Setting value:&lt;/entry&gt;&lt;/row&gt;
4783 &lt;row&gt;&lt;entry&gt;kern&lt;/entry&gt; &lt;entry&gt;1&lt;/entry&gt; &lt;entry&gt;0&lt;/entry&gt; &lt;entry&gt;∞&lt;/entry&gt; &lt;entry&gt;Turn feature on&lt;/entry&gt;&lt;/row&gt;
4784 &lt;row&gt;&lt;entry&gt;+kern&lt;/entry&gt; &lt;entry&gt;1&lt;/entry&gt; &lt;entry&gt;0&lt;/entry&gt; &lt;entry&gt;∞&lt;/entry&gt; &lt;entry&gt;Turn feature on&lt;/entry&gt;&lt;/row&gt;
4785 &lt;row&gt;&lt;entry&gt;-kern&lt;/entry&gt; &lt;entry&gt;0&lt;/entry&gt; &lt;entry&gt;0&lt;/entry&gt; &lt;entry&gt;∞&lt;/entry&gt; &lt;entry&gt;Turn feature off&lt;/entry&gt;&lt;/row&gt;
4786 &lt;row&gt;&lt;entry&gt;kern=0&lt;/entry&gt; &lt;entry&gt;0&lt;/entry&gt; &lt;entry&gt;0&lt;/entry&gt; &lt;entry&gt;∞&lt;/entry&gt; &lt;entry&gt;Turn feature off&lt;/entry&gt;&lt;/row&gt;
4787 &lt;row&gt;&lt;entry&gt;kern=1&lt;/entry&gt; &lt;entry&gt;1&lt;/entry&gt; &lt;entry&gt;0&lt;/entry&gt; &lt;entry&gt;∞&lt;/entry&gt; &lt;entry&gt;Turn feature on&lt;/entry&gt;&lt;/row&gt;
4788 &lt;row&gt;&lt;entry&gt;aalt=2&lt;/entry&gt; &lt;entry&gt;2&lt;/entry&gt; &lt;entry&gt;0&lt;/entry&gt; &lt;entry&gt;∞&lt;/entry&gt; &lt;entry&gt;Choose 2nd alternate&lt;/entry&gt;&lt;/row&gt;
4789 &lt;row&gt;&lt;entry&gt;Setting index:&lt;/entry&gt;&lt;/row&gt;
4790 &lt;row&gt;&lt;entry&gt;kern[]&lt;/entry&gt; &lt;entry&gt;1&lt;/entry&gt; &lt;entry&gt;0&lt;/entry&gt; &lt;entry&gt;∞&lt;/entry&gt; &lt;entry&gt;Turn feature on&lt;/entry&gt;&lt;/row&gt;
4791 &lt;row&gt;&lt;entry&gt;kern[:]&lt;/entry&gt; &lt;entry&gt;1&lt;/entry&gt; &lt;entry&gt;0&lt;/entry&gt; &lt;entry&gt;∞&lt;/entry&gt; &lt;entry&gt;Turn feature on&lt;/entry&gt;&lt;/row&gt;
4792 &lt;row&gt;&lt;entry&gt;kern[5:]&lt;/entry&gt; &lt;entry&gt;1&lt;/entry&gt; &lt;entry&gt;5&lt;/entry&gt; &lt;entry&gt;∞&lt;/entry&gt; &lt;entry&gt;Turn feature on, partial&lt;/entry&gt;&lt;/row&gt;
4793 &lt;row&gt;&lt;entry&gt;kern[:5]&lt;/entry&gt; &lt;entry&gt;1&lt;/entry&gt; &lt;entry&gt;0&lt;/entry&gt; &lt;entry&gt;5&lt;/entry&gt; &lt;entry&gt;Turn feature on, partial&lt;/entry&gt;&lt;/row&gt;
4794 &lt;row&gt;&lt;entry&gt;kern[3:5]&lt;/entry&gt; &lt;entry&gt;1&lt;/entry&gt; &lt;entry&gt;3&lt;/entry&gt; &lt;entry&gt;5&lt;/entry&gt; &lt;entry&gt;Turn feature on, range&lt;/entry&gt;&lt;/row&gt;
4795 &lt;row&gt;&lt;entry&gt;kern[3]&lt;/entry&gt; &lt;entry&gt;1&lt;/entry&gt; &lt;entry&gt;3&lt;/entry&gt; &lt;entry&gt;3+1&lt;/entry&gt; &lt;entry&gt;Turn feature on, single char&lt;/entry&gt;&lt;/row&gt;
4796 &lt;row&gt;&lt;entry&gt;Mixing it all:&lt;/entry&gt;&lt;/row&gt;
4797 &lt;row&gt;&lt;entry&gt;aalt[3:5]=2&lt;/entry&gt; &lt;entry&gt;2&lt;/entry&gt; &lt;entry&gt;3&lt;/entry&gt; &lt;entry&gt;5&lt;/entry&gt; &lt;entry&gt;Turn 2nd alternate on for range&lt;/entry&gt;&lt;/row&gt;
4798 &lt;/tbody&gt;
4799 &lt;/tgroup&gt;
4800 &lt;/informaltable&gt;</doc>
4801 <source-position filename="../src/hb-common.h" line="459"/>
4802 <return-value transfer-ownership="none">
4803 <doc xml:space="preserve"
4804 filename="../src/hb-common.cc"
4805 line="885">%true if @str is successfully parsed, %false otherwise.</doc>
4806 <type name="bool_t" c:type="hb_bool_t"/>
4807 </return-value>
4808 <parameters>
4809 <parameter name="str" transfer-ownership="none">
4810 <doc xml:space="preserve"
4811 filename="../src/hb-common.cc"
4812 line="843">a string to parse</doc>
4813 <array length="1" zero-terminated="0" c:type="const char*">
4814 <type name="guint8"/>
4815 </array>
4816 </parameter>
4817 <parameter name="len" transfer-ownership="none">
4818 <doc xml:space="preserve"
4819 filename="../src/hb-common.cc"
4820 line="844">length of @str, or -1 if string is %NULL terminated</doc>
4821 <type name="gint" c:type="int"/>
4822 </parameter>
4823 <parameter name="feature"
4824 direction="out"
4825 caller-allocates="1"
4826 transfer-ownership="none">
4827 <doc xml:space="preserve"
4828 filename="../src/hb-common.cc"
4829 line="845">the #hb_feature_t to initialize with the parsed values</doc>
4830 <type name="feature_t" c:type="hb_feature_t*"/>
4831 </parameter>
4832 </parameters>
4833 </function>
4834 <record name="feature_t"
4835 c:type="hb_feature_t"
4836 glib:type-name="hb_feature_t"
4837 glib:get-type="hb_gobject_feature_get_type"
4838 c:symbol-prefix="gobject_feature">
4839 <doc xml:space="preserve"
4840 filename="../src/hb-common.h"
4841 line="436">The #hb_feature_t is the structure that holds information about requested
4842 feature application. The feature will be applied with the given value to all
4843 glyphs which are in clusters between @start (inclusive) and @end (exclusive).
4844 Setting start to @HB_FEATURE_GLOBAL_START and end to @HB_FEATURE_GLOBAL_END
4845 specifies that the feature always applies to the entire buffer.</doc>
4846 <source-position filename="../src/hb-common.h" line="456"/>
4847 <field name="tag" writable="1">
4848 <doc xml:space="preserve"
4849 filename="../src/hb-common.h"
4850 line="438">a feature tag</doc>
4851 <type name="tag_t" c:type="hb_tag_t"/>
4852 </field>
4853 <field name="value" writable="1">
4854 <doc xml:space="preserve"
4855 filename="../src/hb-common.h"
4856 line="439">0 disables the feature, non-zero (usually 1) enables the feature.
4857 For features implemented as lookup type 3 (like 'salt') the @value is a one
4858 based index into the alternates.</doc>
4859 <type name="guint32" c:type="uint32_t"/>
4860 </field>
4861 <field name="start" writable="1">
4862 <doc xml:space="preserve"
4863 filename="../src/hb-common.h"
4864 line="442">the cluster to start applying this feature setting (inclusive).</doc>
4865 <type name="guint" c:type="unsigned int"/>
4866 </field>
4867 <field name="end" writable="1">
4868 <doc xml:space="preserve"
4869 filename="../src/hb-common.h"
4870 line="443">the cluster to end applying this feature setting (exclusive).</doc>
4871 <type name="guint" c:type="unsigned int"/>
4872 </field>
4873 <method name="_string"
4874 c:identifier="hb_feature_to_string"
4875 moved-to="feature_to_string"
4876 version="0.9.5">
4877 <doc xml:space="preserve"
4878 filename="../src/hb-common.cc"
4879 line="911">Converts a #hb_feature_t into a %NULL-terminated string in the format
4880 understood by hb_feature_from_string(). The client in responsible for
4881 allocating big enough size for @buf, 128 bytes is more than enough.</doc>
4882 <source-position filename="../src/hb-common.h" line="463"/>
4883 <return-value transfer-ownership="none">
4884 <type name="none" c:type="void"/>
4885 </return-value>
4886 <parameters>
4887 <instance-parameter name="feature" transfer-ownership="none">
4888 <doc xml:space="preserve"
4889 filename="../src/hb-common.cc"
4890 line="913">an #hb_feature_t to convert</doc>
4891 <type name="feature_t" c:type="hb_feature_t*"/>
4892 </instance-parameter>
4893 <parameter name="buf"
4894 direction="out"
4895 caller-allocates="0"
4896 transfer-ownership="full">
4897 <doc xml:space="preserve"
4898 filename="../src/hb-common.cc"
4899 line="914">output string</doc>
4900 <array length="1" zero-terminated="0" c:type="char*">
4901 <type name="utf8" c:type="char"/>
4902 </array>
4903 </parameter>
4904 <parameter name="size"
4905 direction="out"
4906 caller-allocates="0"
4907 transfer-ownership="full">
4908 <doc xml:space="preserve"
4909 filename="../src/hb-common.cc"
4910 line="915">the allocated size of @buf</doc>
4911 <type name="guint" c:type="unsigned int"/>
4912 </parameter>
4913 </parameters>
4914 </method>
4915 </record>
4916 <function name="feature_to_string"
4917 c:identifier="hb_feature_to_string"
4918 version="0.9.5">
4919 <doc xml:space="preserve"
4920 filename="../src/hb-common.cc"
4921 line="911">Converts a #hb_feature_t into a %NULL-terminated string in the format
4922 understood by hb_feature_from_string(). The client in responsible for
4923 allocating big enough size for @buf, 128 bytes is more than enough.</doc>
4924 <source-position filename="../src/hb-common.h" line="463"/>
4925 <return-value transfer-ownership="none">
4926 <type name="none" c:type="void"/>
4927 </return-value>
4928 <parameters>
4929 <parameter name="feature" transfer-ownership="none">
4930 <doc xml:space="preserve"
4931 filename="../src/hb-common.cc"
4932 line="913">an #hb_feature_t to convert</doc>
4933 <type name="feature_t" c:type="hb_feature_t*"/>
4934 </parameter>
4935 <parameter name="buf"
4936 direction="out"
4937 caller-allocates="0"
4938 transfer-ownership="full">
4939 <doc xml:space="preserve"
4940 filename="../src/hb-common.cc"
4941 line="914">output string</doc>
4942 <array length="2" zero-terminated="0" c:type="char*">
4943 <type name="utf8" c:type="char"/>
4944 </array>
4945 </parameter>
4946 <parameter name="size"
4947 direction="out"
4948 caller-allocates="0"
4949 transfer-ownership="full">
4950 <doc xml:space="preserve"
4951 filename="../src/hb-common.cc"
4952 line="915">the allocated size of @buf</doc>
4953 <type name="guint" c:type="unsigned int"/>
4954 </parameter>
4955 </parameters>
4956 </function>
4957 <function name="font_add_glyph_origin_for_direction"
4958 c:identifier="hb_font_add_glyph_origin_for_direction"
4959 version="0.9.2">
4960 <source-position filename="../src/hb-font.h" line="558"/>
4961 <return-value transfer-ownership="none">
4962 <type name="none" c:type="void"/>
4963 </return-value>
4964 <parameters>
4965 <parameter name="font" transfer-ownership="none">
4966 <doc xml:space="preserve"
4967 filename="../src/hb-font.cc"
4968 line="1166">a font.</doc>
4969 <type name="font_t" c:type="hb_font_t*"/>
4970 </parameter>
4971 <parameter name="glyph" transfer-ownership="none">
4972 <type name="codepoint_t" c:type="hb_codepoint_t"/>
4973 </parameter>
4974 <parameter name="direction" transfer-ownership="none">
4975 <type name="direction_t" c:type="hb_direction_t"/>
4976 </parameter>
4977 <parameter name="x"
4978 direction="out"
4979 caller-allocates="0"
4980 transfer-ownership="full">
4981 <type name="position_t" c:type="hb_position_t*"/>
4982 </parameter>
4983 <parameter name="y"
4984 direction="out"
4985 caller-allocates="0"
4986 transfer-ownership="full">
4987 <type name="position_t" c:type="hb_position_t*"/>
4988 </parameter>
4989 </parameters>
4990 </function>
4991 <function name="font_create" c:identifier="hb_font_create" version="0.9.2">
4992 <source-position filename="../src/hb-font.h" line="605"/>
4993 <return-value transfer-ownership="full">
4994 <type name="font_t" c:type="hb_font_t*"/>
4995 </return-value>
4996 <parameters>
4997 <parameter name="face" transfer-ownership="none">
4998 <doc xml:space="preserve"
4999 filename="../src/hb-font.cc"
5000 line="1370">a face.</doc>
5001 <type name="face_t" c:type="hb_face_t*"/>
5002 </parameter>
5003 </parameters>
5004 </function>
5005 <function name="font_create_sub_font"
5006 c:identifier="hb_font_create_sub_font"
5007 version="0.9.2">
5008 <source-position filename="../src/hb-font.h" line="608"/>
5009 <return-value transfer-ownership="full">
5010 <type name="font_t" c:type="hb_font_t*"/>
5011 </return-value>
5012 <parameters>
5013 <parameter name="parent" transfer-ownership="none">
5014 <doc xml:space="preserve"
5015 filename="../src/hb-font.cc"
5016 line="1407">parent font.</doc>
5017 <type name="font_t" c:type="hb_font_t*"/>
5018 </parameter>
5019 </parameters>
5020 </function>
5021 <function name="font_destroy"
5022 c:identifier="hb_font_destroy"
5023 version="0.9.2"
5024 introspectable="0">
5025 <source-position filename="../src/hb-font.h" line="617"/>
5026 <return-value transfer-ownership="none">
5027 <type name="none" c:type="void"/>
5028 </return-value>
5029 <parameters>
5030 <parameter name="font" transfer-ownership="none">
5031 <doc xml:space="preserve"
5032 filename="../src/hb-font.cc"
5033 line="1489">a font.</doc>
5034 <type name="font_t" c:type="hb_font_t*"/>
5035 </parameter>
5036 </parameters>
5037 </function>
5038 <record name="font_extents_t" c:type="hb_font_extents_t">
5039 <source-position filename="../src/hb-font.h" line="100"/>
5040 <field name="ascender" writable="1">
5041 <type name="position_t" c:type="hb_position_t"/>
5042 </field>
5043 <field name="descender" writable="1">
5044 <type name="position_t" c:type="hb_position_t"/>
5045 </field>
5046 <field name="line_gap" writable="1">
5047 <type name="position_t" c:type="hb_position_t"/>
5048 </field>
5049 <field name="reserved9" readable="0" private="1">
5050 <type name="position_t" c:type="hb_position_t"/>
5051 </field>
5052 <field name="reserved8" readable="0" private="1">
5053 <type name="position_t" c:type="hb_position_t"/>
5054 </field>
5055 <field name="reserved7" readable="0" private="1">
5056 <type name="position_t" c:type="hb_position_t"/>
5057 </field>
5058 <field name="reserved6" readable="0" private="1">
5059 <type name="position_t" c:type="hb_position_t"/>
5060 </field>
5061 <field name="reserved5" readable="0" private="1">
5062 <type name="position_t" c:type="hb_position_t"/>
5063 </field>
5064 <field name="reserved4" readable="0" private="1">
5065 <type name="position_t" c:type="hb_position_t"/>
5066 </field>
5067 <field name="reserved3" readable="0" private="1">
5068 <type name="position_t" c:type="hb_position_t"/>
5069 </field>
5070 <field name="reserved2" readable="0" private="1">
5071 <type name="position_t" c:type="hb_position_t"/>
5072 </field>
5073 <field name="reserved1" readable="0" private="1">
5074 <type name="position_t" c:type="hb_position_t"/>
5075 </field>
5076 </record>
5077 <function name="font_funcs_create"
5078 c:identifier="hb_font_funcs_create"
5079 version="0.9.2">
5080 <source-position filename="../src/hb-font.h" line="51"/>
5081 <return-value transfer-ownership="full">
5082 <type name="font_funcs_t" c:type="hb_font_funcs_t*"/>
5083 </return-value>
5084 </function>
5085 <function name="font_funcs_destroy"
5086 c:identifier="hb_font_funcs_destroy"
5087 version="0.9.2"
5088 introspectable="0">
5089 <source-position filename="../src/hb-font.h" line="60"/>
5090 <return-value transfer-ownership="none">
5091 <type name="none" c:type="void"/>
5092 </return-value>
5093 <parameters>
5094 <parameter name="ffuncs" transfer-ownership="none">
5095 <doc xml:space="preserve"
5096 filename="../src/hb-font.cc"
5097 line="576">font functions.</doc>
5098 <type name="font_funcs_t" c:type="hb_font_funcs_t*"/>
5099 </parameter>
5100 </parameters>
5101 </function>
5102 <function name="font_funcs_get_empty"
5103 c:identifier="hb_font_funcs_get_empty"
5104 version="0.9.2">
5105 <source-position filename="../src/hb-font.h" line="54"/>
5106 <return-value transfer-ownership="full">
5107 <type name="font_funcs_t" c:type="hb_font_funcs_t*"/>
5108 </return-value>
5109 </function>
5110 <function name="font_funcs_get_user_data"
5111 c:identifier="hb_font_funcs_get_user_data"
5112 version="0.9.2"
5113 introspectable="0">
5114 <source-position filename="../src/hb-font.h" line="71"/>
5115 <return-value transfer-ownership="none" nullable="1">
5116 <type name="gpointer" c:type="void*"/>
5117 </return-value>
5118 <parameters>
5119 <parameter name="ffuncs" transfer-ownership="none">
5120 <doc xml:space="preserve"
5121 filename="../src/hb-font.cc"
5122 line="621">font functions.</doc>
5123 <type name="font_funcs_t" c:type="hb_font_funcs_t*"/>
5124 </parameter>
5125 <parameter name="key" transfer-ownership="none">
5126 <type name="user_data_key_t" c:type="hb_user_data_key_t*"/>
5127 </parameter>
5128 </parameters>
5129 </function>
5130 <function name="font_funcs_is_immutable"
5131 c:identifier="hb_font_funcs_is_immutable"
5132 version="0.9.2">
5133 <source-position filename="../src/hb-font.h" line="79"/>
5134 <return-value transfer-ownership="none">
5135 <type name="bool_t" c:type="hb_bool_t"/>
5136 </return-value>
5137 <parameters>
5138 <parameter name="ffuncs" transfer-ownership="none">
5139 <doc xml:space="preserve"
5140 filename="../src/hb-font.cc"
5141 line="657">font functions.</doc>
5142 <type name="font_funcs_t" c:type="hb_font_funcs_t*"/>
5143 </parameter>
5144 </parameters>
5145 </function>
5146 <function name="font_funcs_make_immutable"
5147 c:identifier="hb_font_funcs_make_immutable"
5148 version="0.9.2">
5149 <source-position filename="../src/hb-font.h" line="76"/>
5150 <return-value transfer-ownership="none">
5151 <type name="none" c:type="void"/>
5152 </return-value>
5153 <parameters>
5154 <parameter name="ffuncs" transfer-ownership="none">
5155 <doc xml:space="preserve"
5156 filename="../src/hb-font.cc"
5157 line="640">font functions.</doc>
5158 <type name="font_funcs_t" c:type="hb_font_funcs_t*"/>
5159 </parameter>
5160 </parameters>
5161 </function>
5162 <function name="font_funcs_reference"
5163 c:identifier="hb_font_funcs_reference"
5164 version="0.9.2"
5165 introspectable="0">
5166 <source-position filename="../src/hb-font.h" line="57"/>
5167 <return-value transfer-ownership="full">
5168 <type name="font_funcs_t" c:type="hb_font_funcs_t*"/>
5169 </return-value>
5170 <parameters>
5171 <parameter name="ffuncs" transfer-ownership="none">
5172 <doc xml:space="preserve"
5173 filename="../src/hb-font.cc"
5174 line="560">font functions.</doc>
5175 <type name="font_funcs_t" c:type="hb_font_funcs_t*"/>
5176 </parameter>
5177 </parameters>
5178 </function>
5179 <function name="font_funcs_set_font_h_extents_func"
5180 c:identifier="hb_font_funcs_set_font_h_extents_func"
5181 version="1.1.2">
5182 <source-position filename="../src/hb-font.h" line="201"/>
5183 <return-value transfer-ownership="none">
5184 <type name="none" c:type="void"/>
5185 </return-value>
5186 <parameters>
5187 <parameter name="ffuncs" transfer-ownership="none">
5188 <doc xml:space="preserve"
5189 filename="../src/hb-font.h"
5190 line="191">font functions.</doc>
5191 <type name="font_funcs_t" c:type="hb_font_funcs_t*"/>
5192 </parameter>
5193 <parameter name="func"
5194 transfer-ownership="none"
5195 scope="notified"
5196 closure="2"
5197 destroy="3">
5198 <type name="font_get_font_h_extents_func_t"
5199 c:type="hb_font_get_font_h_extents_func_t"/>
5200 </parameter>
5201 <parameter name="user_data"
5202 transfer-ownership="none"
5203 nullable="1"
5204 allow-none="1">
5205 <type name="gpointer" c:type="void*"/>
5206 </parameter>
5207 <parameter name="destroy" transfer-ownership="none" scope="notified">
5208 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
5209 </parameter>
5210 </parameters>
5211 </function>
5212 <function name="font_funcs_set_font_v_extents_func"
5213 c:identifier="hb_font_funcs_set_font_v_extents_func"
5214 version="1.1.2">
5215 <source-position filename="../src/hb-font.h" line="217"/>
5216 <return-value transfer-ownership="none">
5217 <type name="none" c:type="void"/>
5218 </return-value>
5219 <parameters>
5220 <parameter name="ffuncs" transfer-ownership="none">
5221 <doc xml:space="preserve"
5222 filename="../src/hb-font.h"
5223 line="207">font functions.</doc>
5224 <type name="font_funcs_t" c:type="hb_font_funcs_t*"/>
5225 </parameter>
5226 <parameter name="func"
5227 transfer-ownership="none"
5228 scope="notified"
5229 closure="2"
5230 destroy="3">
5231 <type name="font_get_font_v_extents_func_t"
5232 c:type="hb_font_get_font_v_extents_func_t"/>
5233 </parameter>
5234 <parameter name="user_data"
5235 transfer-ownership="none"
5236 nullable="1"
5237 allow-none="1">
5238 <type name="gpointer" c:type="void*"/>
5239 </parameter>
5240 <parameter name="destroy" transfer-ownership="none" scope="notified">
5241 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
5242 </parameter>
5243 </parameters>
5244 </function>
5245 <function name="font_funcs_set_glyph_contour_point_func"
5246 c:identifier="hb_font_funcs_set_glyph_contour_point_func"
5247 version="0.9.2">
5248 <source-position filename="../src/hb-font.h" line="409"/>
5249 <return-value transfer-ownership="none">
5250 <type name="none" c:type="void"/>
5251 </return-value>
5252 <parameters>
5253 <parameter name="ffuncs" transfer-ownership="none">
5254 <doc xml:space="preserve"
5255 filename="../src/hb-font.h"
5256 line="399">font functions.</doc>
5257 <type name="font_funcs_t" c:type="hb_font_funcs_t*"/>
5258 </parameter>
5259 <parameter name="func"
5260 transfer-ownership="none"
5261 scope="notified"
5262 closure="2"
5263 destroy="3">
5264 <type name="font_get_glyph_contour_point_func_t"
5265 c:type="hb_font_get_glyph_contour_point_func_t"/>
5266 </parameter>
5267 <parameter name="user_data"
5268 transfer-ownership="none"
5269 nullable="1"
5270 allow-none="1">
5271 <type name="gpointer" c:type="void*"/>
5272 </parameter>
5273 <parameter name="destroy" transfer-ownership="none" scope="notified">
5274 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
5275 </parameter>
5276 </parameters>
5277 </function>
5278 <function name="font_funcs_set_glyph_extents_func"
5279 c:identifier="hb_font_funcs_set_glyph_extents_func"
5280 version="0.9.2">
5281 <source-position filename="../src/hb-font.h" line="393"/>
5282 <return-value transfer-ownership="none">
5283 <type name="none" c:type="void"/>
5284 </return-value>
5285 <parameters>
5286 <parameter name="ffuncs" transfer-ownership="none">
5287 <doc xml:space="preserve"
5288 filename="../src/hb-font.h"
5289 line="383">font functions.</doc>
5290 <type name="font_funcs_t" c:type="hb_font_funcs_t*"/>
5291 </parameter>
5292 <parameter name="func"
5293 transfer-ownership="none"
5294 scope="notified"
5295 closure="2"
5296 destroy="3">
5297 <type name="font_get_glyph_extents_func_t"
5298 c:type="hb_font_get_glyph_extents_func_t"/>
5299 </parameter>
5300 <parameter name="user_data"
5301 transfer-ownership="none"
5302 nullable="1"
5303 allow-none="1">
5304 <type name="gpointer" c:type="void*"/>
5305 </parameter>
5306 <parameter name="destroy" transfer-ownership="none" scope="notified">
5307 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
5308 </parameter>
5309 </parameters>
5310 </function>
5311 <function name="font_funcs_set_glyph_from_name_func"
5312 c:identifier="hb_font_funcs_set_glyph_from_name_func"
5313 version="0.9.2">
5314 <source-position filename="../src/hb-font.h" line="441"/>
5315 <return-value transfer-ownership="none">
5316 <type name="none" c:type="void"/>
5317 </return-value>
5318 <parameters>
5319 <parameter name="ffuncs" transfer-ownership="none">
5320 <doc xml:space="preserve"
5321 filename="../src/hb-font.h"
5322 line="431">font functions.</doc>
5323 <type name="font_funcs_t" c:type="hb_font_funcs_t*"/>
5324 </parameter>
5325 <parameter name="func"
5326 transfer-ownership="none"
5327 scope="notified"
5328 closure="2"
5329 destroy="3">
5330 <type name="font_get_glyph_from_name_func_t"
5331 c:type="hb_font_get_glyph_from_name_func_t"/>
5332 </parameter>
5333 <parameter name="user_data"
5334 transfer-ownership="none"
5335 nullable="1"
5336 allow-none="1">
5337 <type name="gpointer" c:type="void*"/>
5338 </parameter>
5339 <parameter name="destroy" transfer-ownership="none" scope="notified">
5340 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
5341 </parameter>
5342 </parameters>
5343 </function>
5344 <function name="font_funcs_set_glyph_func"
5345 c:identifier="hb_font_funcs_set_glyph_func"
5346 version="0.9.2"
5347 deprecated="1"
5348 deprecated-version="1.2.3">
5349 <doc xml:space="preserve"
5350 filename="../src/hb-font.cc"
5351 line="2140">Deprecated. Use hb_font_funcs_set_nominal_glyph_func() and
5352 hb_font_funcs_set_variation_glyph_func() instead.</doc>
5353 <source-position filename="../src/hb-deprecated.h" line="67"/>
5354 <return-value transfer-ownership="none">
5355 <type name="none" c:type="void"/>
5356 </return-value>
5357 <parameters>
5358 <parameter name="ffuncs" transfer-ownership="none">
5359 <doc xml:space="preserve"
5360 filename="../src/hb-font.cc"
5361 line="2142">font functions.</doc>
5362 <type name="font_funcs_t" c:type="hb_font_funcs_t*"/>
5363 </parameter>
5364 <parameter name="func"
5365 transfer-ownership="none"
5366 scope="notified"
5367 closure="2"
5368 destroy="3">
5369 <doc xml:space="preserve"
5370 filename="../src/hb-font.cc"
5371 line="2143">callback function.</doc>
5372 <type name="font_get_glyph_func_t"
5373 c:type="hb_font_get_glyph_func_t"/>
5374 </parameter>
5375 <parameter name="user_data"
5376 transfer-ownership="none"
5377 nullable="1"
5378 allow-none="1">
5379 <doc xml:space="preserve"
5380 filename="../src/hb-font.cc"
5381 line="2144">data to pass to @func.</doc>
5382 <type name="gpointer" c:type="void*"/>
5383 </parameter>
5384 <parameter name="destroy" transfer-ownership="none" scope="notified">
5385 <doc xml:space="preserve"
5386 filename="../src/hb-font.cc"
5387 line="2145">function to call when @user_data is not needed anymore.</doc>
5388 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
5389 </parameter>
5390 </parameters>
5391 </function>
5392 <function name="font_funcs_set_glyph_h_advance_func"
5393 c:identifier="hb_font_funcs_set_glyph_h_advance_func"
5394 version="0.9.2">
5395 <source-position filename="../src/hb-font.h" line="281"/>
5396 <return-value transfer-ownership="none">
5397 <type name="none" c:type="void"/>
5398 </return-value>
5399 <parameters>
5400 <parameter name="ffuncs" transfer-ownership="none">
5401 <doc xml:space="preserve"
5402 filename="../src/hb-font.h"
5403 line="271">font functions.</doc>
5404 <type name="font_funcs_t" c:type="hb_font_funcs_t*"/>
5405 </parameter>
5406 <parameter name="func"
5407 transfer-ownership="none"
5408 scope="notified"
5409 closure="2"
5410 destroy="3">
5411 <type name="font_get_glyph_h_advance_func_t"
5412 c:type="hb_font_get_glyph_h_advance_func_t"/>
5413 </parameter>
5414 <parameter name="user_data"
5415 transfer-ownership="none"
5416 nullable="1"
5417 allow-none="1">
5418 <type name="gpointer" c:type="void*"/>
5419 </parameter>
5420 <parameter name="destroy" transfer-ownership="none" scope="notified">
5421 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
5422 </parameter>
5423 </parameters>
5424 </function>
5425 <function name="font_funcs_set_glyph_h_advances_func"
5426 c:identifier="hb_font_funcs_set_glyph_h_advances_func"
5427 version="1.8.6">
5428 <source-position filename="../src/hb-font.h" line="313"/>
5429 <return-value transfer-ownership="none">
5430 <type name="none" c:type="void"/>
5431 </return-value>
5432 <parameters>
5433 <parameter name="ffuncs" transfer-ownership="none">
5434 <doc xml:space="preserve"
5435 filename="../src/hb-font.h"
5436 line="303">font functions.</doc>
5437 <type name="font_funcs_t" c:type="hb_font_funcs_t*"/>
5438 </parameter>
5439 <parameter name="func"
5440 transfer-ownership="none"
5441 scope="notified"
5442 closure="2"
5443 destroy="3">
5444 <type name="font_get_glyph_h_advances_func_t"
5445 c:type="hb_font_get_glyph_h_advances_func_t"/>
5446 </parameter>
5447 <parameter name="user_data"
5448 transfer-ownership="none"
5449 nullable="1"
5450 allow-none="1">
5451 <type name="gpointer" c:type="void*"/>
5452 </parameter>
5453 <parameter name="destroy" transfer-ownership="none" scope="notified">
5454 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
5455 </parameter>
5456 </parameters>
5457 </function>
5458 <function name="font_funcs_set_glyph_h_kerning_func"
5459 c:identifier="hb_font_funcs_set_glyph_h_kerning_func"
5460 version="0.9.2">
5461 <source-position filename="../src/hb-font.h" line="377"/>
5462 <return-value transfer-ownership="none">
5463 <type name="none" c:type="void"/>
5464 </return-value>
5465 <parameters>
5466 <parameter name="ffuncs" transfer-ownership="none">
5467 <doc xml:space="preserve"
5468 filename="../src/hb-font.h"
5469 line="367">font functions.</doc>
5470 <type name="font_funcs_t" c:type="hb_font_funcs_t*"/>
5471 </parameter>
5472 <parameter name="func"
5473 transfer-ownership="none"
5474 scope="notified"
5475 closure="2"
5476 destroy="3">
5477 <type name="font_get_glyph_h_kerning_func_t"
5478 c:type="hb_font_get_glyph_h_kerning_func_t"/>
5479 </parameter>
5480 <parameter name="user_data"
5481 transfer-ownership="none"
5482 nullable="1"
5483 allow-none="1">
5484 <type name="gpointer" c:type="void*"/>
5485 </parameter>
5486 <parameter name="destroy" transfer-ownership="none" scope="notified">
5487 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
5488 </parameter>
5489 </parameters>
5490 </function>
5491 <function name="font_funcs_set_glyph_h_origin_func"
5492 c:identifier="hb_font_funcs_set_glyph_h_origin_func"
5493 version="0.9.2">
5494 <source-position filename="../src/hb-font.h" line="345"/>
5495 <return-value transfer-ownership="none">
5496 <type name="none" c:type="void"/>
5497 </return-value>
5498 <parameters>
5499 <parameter name="ffuncs" transfer-ownership="none">
5500 <doc xml:space="preserve"
5501 filename="../src/hb-font.h"
5502 line="335">font functions.</doc>
5503 <type name="font_funcs_t" c:type="hb_font_funcs_t*"/>
5504 </parameter>
5505 <parameter name="func"
5506 transfer-ownership="none"
5507 scope="notified"
5508 closure="2"
5509 destroy="3">
5510 <type name="font_get_glyph_h_origin_func_t"
5511 c:type="hb_font_get_glyph_h_origin_func_t"/>
5512 </parameter>
5513 <parameter name="user_data"
5514 transfer-ownership="none"
5515 nullable="1"
5516 allow-none="1">
5517 <type name="gpointer" c:type="void*"/>
5518 </parameter>
5519 <parameter name="destroy" transfer-ownership="none" scope="notified">
5520 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
5521 </parameter>
5522 </parameters>
5523 </function>
5524 <function name="font_funcs_set_glyph_name_func"
5525 c:identifier="hb_font_funcs_set_glyph_name_func"
5526 version="0.9.2">
5527 <source-position filename="../src/hb-font.h" line="425"/>
5528 <return-value transfer-ownership="none">
5529 <type name="none" c:type="void"/>
5530 </return-value>
5531 <parameters>
5532 <parameter name="ffuncs" transfer-ownership="none">
5533 <doc xml:space="preserve"
5534 filename="../src/hb-font.h"
5535 line="415">font functions.</doc>
5536 <type name="font_funcs_t" c:type="hb_font_funcs_t*"/>
5537 </parameter>
5538 <parameter name="func"
5539 transfer-ownership="none"
5540 scope="notified"
5541 closure="2"
5542 destroy="3">
5543 <type name="font_get_glyph_name_func_t"
5544 c:type="hb_font_get_glyph_name_func_t"/>
5545 </parameter>
5546 <parameter name="user_data"
5547 transfer-ownership="none"
5548 nullable="1"
5549 allow-none="1">
5550 <type name="gpointer" c:type="void*"/>
5551 </parameter>
5552 <parameter name="destroy" transfer-ownership="none" scope="notified">
5553 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
5554 </parameter>
5555 </parameters>
5556 </function>
5557 <function name="font_funcs_set_glyph_v_advance_func"
5558 c:identifier="hb_font_funcs_set_glyph_v_advance_func"
5559 version="0.9.2">
5560 <source-position filename="../src/hb-font.h" line="297"/>
5561 <return-value transfer-ownership="none">
5562 <type name="none" c:type="void"/>
5563 </return-value>
5564 <parameters>
5565 <parameter name="ffuncs" transfer-ownership="none">
5566 <doc xml:space="preserve"
5567 filename="../src/hb-font.h"
5568 line="287">font functions.</doc>
5569 <type name="font_funcs_t" c:type="hb_font_funcs_t*"/>
5570 </parameter>
5571 <parameter name="func"
5572 transfer-ownership="none"
5573 scope="notified"
5574 closure="2"
5575 destroy="3">
5576 <type name="font_get_glyph_v_advance_func_t"
5577 c:type="hb_font_get_glyph_v_advance_func_t"/>
5578 </parameter>
5579 <parameter name="user_data"
5580 transfer-ownership="none"
5581 nullable="1"
5582 allow-none="1">
5583 <type name="gpointer" c:type="void*"/>
5584 </parameter>
5585 <parameter name="destroy" transfer-ownership="none" scope="notified">
5586 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
5587 </parameter>
5588 </parameters>
5589 </function>
5590 <function name="font_funcs_set_glyph_v_advances_func"
5591 c:identifier="hb_font_funcs_set_glyph_v_advances_func"
5592 version="1.8.6">
5593 <source-position filename="../src/hb-font.h" line="329"/>
5594 <return-value transfer-ownership="none">
5595 <type name="none" c:type="void"/>
5596 </return-value>
5597 <parameters>
5598 <parameter name="ffuncs" transfer-ownership="none">
5599 <doc xml:space="preserve"
5600 filename="../src/hb-font.h"
5601 line="319">font functions.</doc>
5602 <type name="font_funcs_t" c:type="hb_font_funcs_t*"/>
5603 </parameter>
5604 <parameter name="func"
5605 transfer-ownership="none"
5606 scope="notified"
5607 closure="2"
5608 destroy="3">
5609 <type name="font_get_glyph_v_advances_func_t"
5610 c:type="hb_font_get_glyph_v_advances_func_t"/>
5611 </parameter>
5612 <parameter name="user_data"
5613 transfer-ownership="none"
5614 nullable="1"
5615 allow-none="1">
5616 <type name="gpointer" c:type="void*"/>
5617 </parameter>
5618 <parameter name="destroy" transfer-ownership="none" scope="notified">
5619 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
5620 </parameter>
5621 </parameters>
5622 </function>
5623 <function name="font_funcs_set_glyph_v_kerning_func"
5624 c:identifier="hb_font_funcs_set_glyph_v_kerning_func"
5625 version="0.9.2"
5626 deprecated="1"
5627 deprecated-version="2.0.0">
5628 <source-position filename="../src/hb-deprecated.h" line="183"/>
5629 <return-value transfer-ownership="none">
5630 <type name="none" c:type="void"/>
5631 </return-value>
5632 <parameters>
5633 <parameter name="ffuncs" transfer-ownership="none">
5634 <doc xml:space="preserve"
5635 filename="../src/hb-deprecated.h"
5636 line="172">font functions.</doc>
5637 <type name="font_funcs_t" c:type="hb_font_funcs_t*"/>
5638 </parameter>
5639 <parameter name="func"
5640 transfer-ownership="none"
5641 scope="notified"
5642 closure="2"
5643 destroy="3">
5644 <type name="font_get_glyph_v_kerning_func_t"
5645 c:type="hb_font_get_glyph_v_kerning_func_t"/>
5646 </parameter>
5647 <parameter name="user_data"
5648 transfer-ownership="none"
5649 nullable="1"
5650 allow-none="1">
5651 <type name="gpointer" c:type="void*"/>
5652 </parameter>
5653 <parameter name="destroy" transfer-ownership="none" scope="notified">
5654 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
5655 </parameter>
5656 </parameters>
5657 </function>
5658 <function name="font_funcs_set_glyph_v_origin_func"
5659 c:identifier="hb_font_funcs_set_glyph_v_origin_func"
5660 version="0.9.2">
5661 <source-position filename="../src/hb-font.h" line="361"/>
5662 <return-value transfer-ownership="none">
5663 <type name="none" c:type="void"/>
5664 </return-value>
5665 <parameters>
5666 <parameter name="ffuncs" transfer-ownership="none">
5667 <doc xml:space="preserve"
5668 filename="../src/hb-font.h"
5669 line="351">font functions.</doc>
5670 <type name="font_funcs_t" c:type="hb_font_funcs_t*"/>
5671 </parameter>
5672 <parameter name="func"
5673 transfer-ownership="none"
5674 scope="notified"
5675 closure="2"
5676 destroy="3">
5677 <type name="font_get_glyph_v_origin_func_t"
5678 c:type="hb_font_get_glyph_v_origin_func_t"/>
5679 </parameter>
5680 <parameter name="user_data"
5681 transfer-ownership="none"
5682 nullable="1"
5683 allow-none="1">
5684 <type name="gpointer" c:type="void*"/>
5685 </parameter>
5686 <parameter name="destroy" transfer-ownership="none" scope="notified">
5687 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
5688 </parameter>
5689 </parameters>
5690 </function>
5691 <function name="font_funcs_set_nominal_glyph_func"
5692 c:identifier="hb_font_funcs_set_nominal_glyph_func"
5693 version="1.2.3">
5694 <source-position filename="../src/hb-font.h" line="233"/>
5695 <return-value transfer-ownership="none">
5696 <type name="none" c:type="void"/>
5697 </return-value>
5698 <parameters>
5699 <parameter name="ffuncs" transfer-ownership="none">
5700 <doc xml:space="preserve"
5701 filename="../src/hb-font.h"
5702 line="223">font functions.</doc>
5703 <type name="font_funcs_t" c:type="hb_font_funcs_t*"/>
5704 </parameter>
5705 <parameter name="func"
5706 transfer-ownership="none"
5707 scope="notified"
5708 closure="2"
5709 destroy="3">
5710 <type name="font_get_nominal_glyph_func_t"
5711 c:type="hb_font_get_nominal_glyph_func_t"/>
5712 </parameter>
5713 <parameter name="user_data"
5714 transfer-ownership="none"
5715 nullable="1"
5716 allow-none="1">
5717 <type name="gpointer" c:type="void*"/>
5718 </parameter>
5719 <parameter name="destroy" transfer-ownership="none" scope="notified">
5720 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
5721 </parameter>
5722 </parameters>
5723 </function>
5724 <function name="font_funcs_set_nominal_glyphs_func"
5725 c:identifier="hb_font_funcs_set_nominal_glyphs_func"
5726 version="2.0.0">
5727 <source-position filename="../src/hb-font.h" line="249"/>
5728 <return-value transfer-ownership="none">
5729 <type name="none" c:type="void"/>
5730 </return-value>
5731 <parameters>
5732 <parameter name="ffuncs" transfer-ownership="none">
5733 <doc xml:space="preserve"
5734 filename="../src/hb-font.h"
5735 line="239">font functions.</doc>
5736 <type name="font_funcs_t" c:type="hb_font_funcs_t*"/>
5737 </parameter>
5738 <parameter name="func"
5739 transfer-ownership="none"
5740 scope="notified"
5741 closure="2"
5742 destroy="3">
5743 <type name="font_get_nominal_glyphs_func_t"
5744 c:type="hb_font_get_nominal_glyphs_func_t"/>
5745 </parameter>
5746 <parameter name="user_data"
5747 transfer-ownership="none"
5748 nullable="1"
5749 allow-none="1">
5750 <type name="gpointer" c:type="void*"/>
5751 </parameter>
5752 <parameter name="destroy" transfer-ownership="none" scope="notified">
5753 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
5754 </parameter>
5755 </parameters>
5756 </function>
5757 <function name="font_funcs_set_user_data"
5758 c:identifier="hb_font_funcs_set_user_data"
5759 version="0.9.2"
5760 introspectable="0">
5761 <source-position filename="../src/hb-font.h" line="63"/>
5762 <return-value transfer-ownership="none">
5763 <type name="bool_t" c:type="hb_bool_t"/>
5764 </return-value>
5765 <parameters>
5766 <parameter name="ffuncs" transfer-ownership="none">
5767 <doc xml:space="preserve"
5768 filename="../src/hb-font.cc"
5769 line="597">font functions.</doc>
5770 <type name="font_funcs_t" c:type="hb_font_funcs_t*"/>
5771 </parameter>
5772 <parameter name="key" transfer-ownership="none">
5773 <type name="user_data_key_t" c:type="hb_user_data_key_t*"/>
5774 </parameter>
5775 <parameter name="data"
5776 transfer-ownership="none"
5777 nullable="1"
5778 allow-none="1">
5779 <type name="gpointer" c:type="void*"/>
5780 </parameter>
5781 <parameter name="destroy" transfer-ownership="none">
5782 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
5783 </parameter>
5784 <parameter name="replace" transfer-ownership="none">
5785 <type name="bool_t" c:type="hb_bool_t"/>
5786 </parameter>
5787 </parameters>
5788 </function>
5789 <function name="font_funcs_set_variation_glyph_func"
5790 c:identifier="hb_font_funcs_set_variation_glyph_func"
5791 version="1.2.3">
5792 <source-position filename="../src/hb-font.h" line="265"/>
5793 <return-value transfer-ownership="none">
5794 <type name="none" c:type="void"/>
5795 </return-value>
5796 <parameters>
5797 <parameter name="ffuncs" transfer-ownership="none">
5798 <doc xml:space="preserve"
5799 filename="../src/hb-font.h"
5800 line="255">font functions.</doc>
5801 <type name="font_funcs_t" c:type="hb_font_funcs_t*"/>
5802 </parameter>
5803 <parameter name="func"
5804 transfer-ownership="none"
5805 scope="notified"
5806 closure="2"
5807 destroy="3">
5808 <type name="font_get_variation_glyph_func_t"
5809 c:type="hb_font_get_variation_glyph_func_t"/>
5810 </parameter>
5811 <parameter name="user_data"
5812 transfer-ownership="none"
5813 nullable="1"
5814 allow-none="1">
5815 <type name="gpointer" c:type="void*"/>
5816 </parameter>
5817 <parameter name="destroy" transfer-ownership="none" scope="notified">
5818 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
5819 </parameter>
5820 </parameters>
5821 </function>
5822 <record name="font_funcs_t"
5823 c:type="hb_font_funcs_t"
5824 glib:type-name="hb_font_funcs_t"
5825 glib:get-type="hb_gobject_font_funcs_get_type"
5826 c:symbol-prefix="gobject_font_funcs">
5827 <source-position filename="../src/hb-font.h" line="48"/>
5828 </record>
5829 <function name="font_get_empty"
5830 c:identifier="hb_font_get_empty"
5831 version="0.9.2">
5832 <source-position filename="../src/hb-font.h" line="611"/>
5833 <return-value transfer-ownership="full">
5834 <type name="font_t" c:type="hb_font_t*"/>
5835 </return-value>
5836 </function>
5837 <function name="font_get_extents_for_direction"
5838 c:identifier="hb_font_get_extents_for_direction"
5839 version="1.1.3">
5840 <source-position filename="../src/hb-font.h" line="536"/>
5841 <return-value transfer-ownership="none">
5842 <type name="none" c:type="void"/>
5843 </return-value>
5844 <parameters>
5845 <parameter name="font" transfer-ownership="none">
5846 <doc xml:space="preserve"
5847 filename="../src/hb-font.cc"
5848 line="1087">a font.</doc>
5849 <type name="font_t" c:type="hb_font_t*"/>
5850 </parameter>
5851 <parameter name="direction" transfer-ownership="none">
5852 <type name="direction_t" c:type="hb_direction_t"/>
5853 </parameter>
5854 <parameter name="extents"
5855 direction="out"
5856 caller-allocates="1"
5857 transfer-ownership="none">
5858 <type name="font_extents_t" c:type="hb_font_extents_t*"/>
5859 </parameter>
5860 </parameters>
5861 </function>
5862 <function name="font_get_face"
5863 c:identifier="hb_font_get_face"
5864 version="0.9.2">
5865 <source-position filename="../src/hb-font.h" line="649"/>
5866 <return-value transfer-ownership="none">
5867 <type name="face_t" c:type="hb_face_t*"/>
5868 </return-value>
5869 <parameters>
5870 <parameter name="font" transfer-ownership="none">
5871 <doc xml:space="preserve"
5872 filename="../src/hb-font.cc"
5873 line="1665">a font.</doc>
5874 <type name="font_t" c:type="hb_font_t*"/>
5875 </parameter>
5876 </parameters>
5877 </function>
5878 <callback name="font_get_font_extents_func_t"
5879 c:type="hb_font_get_font_extents_func_t">
5880 <source-position filename="../src/hb-font.h" line="113"/>
5881 <return-value transfer-ownership="none">
5882 <type name="bool_t" c:type="hb_bool_t"/>
5883 </return-value>
5884 <parameters>
5885 <parameter name="font" transfer-ownership="none">
5886 <type name="font_t" c:type="hb_font_t*"/>
5887 </parameter>
5888 <parameter name="font_data"
5889 transfer-ownership="none"
5890 nullable="1"
5891 allow-none="1">
5892 <type name="gpointer" c:type="void*"/>
5893 </parameter>
5894 <parameter name="extents" transfer-ownership="none">
5895 <type name="font_extents_t" c:type="hb_font_extents_t*"/>
5896 </parameter>
5897 <parameter name="user_data"
5898 transfer-ownership="none"
5899 nullable="1"
5900 allow-none="1"
5901 closure="3">
5902 <type name="gpointer" c:type="void*"/>
5903 </parameter>
5904 </parameters>
5905 </callback>
5906 <function name="font_get_glyph"
5907 c:identifier="hb_font_get_glyph"
5908 version="0.9.2">
5909 <source-position filename="../src/hb-font.h" line="531"/>
5910 <return-value transfer-ownership="none">
5911 <type name="bool_t" c:type="hb_bool_t"/>
5912 </return-value>
5913 <parameters>
5914 <parameter name="font" transfer-ownership="none">
5915 <doc xml:space="preserve"
5916 filename="../src/hb-font.cc"
5917 line="757">a font.</doc>
5918 <type name="font_t" c:type="hb_font_t*"/>
5919 </parameter>
5920 <parameter name="unicode" transfer-ownership="none">
5921 <type name="codepoint_t" c:type="hb_codepoint_t"/>
5922 </parameter>
5923 <parameter name="variation_selector" transfer-ownership="none">
5924 <type name="codepoint_t" c:type="hb_codepoint_t"/>
5925 </parameter>
5926 <parameter name="glyph"
5927 direction="out"
5928 caller-allocates="0"
5929 transfer-ownership="full">
5930 <type name="codepoint_t" c:type="hb_codepoint_t*"/>
5931 </parameter>
5932 </parameters>
5933 </function>
5934 <function name="font_get_glyph_advance_for_direction"
5935 c:identifier="hb_font_get_glyph_advance_for_direction"
5936 version="0.9.2">
5937 <source-position filename="../src/hb-font.h" line="540"/>
5938 <return-value transfer-ownership="none">
5939 <type name="none" c:type="void"/>
5940 </return-value>
5941 <parameters>
5942 <parameter name="font" transfer-ownership="none">
5943 <doc xml:space="preserve"
5944 filename="../src/hb-font.cc"
5945 line="1104">a font.</doc>
5946 <type name="font_t" c:type="hb_font_t*"/>
5947 </parameter>
5948 <parameter name="glyph" transfer-ownership="none">
5949 <type name="codepoint_t" c:type="hb_codepoint_t"/>
5950 </parameter>
5951 <parameter name="direction" transfer-ownership="none">
5952 <type name="direction_t" c:type="hb_direction_t"/>
5953 </parameter>
5954 <parameter name="x"
5955 direction="out"
5956 caller-allocates="0"
5957 transfer-ownership="full">
5958 <type name="position_t" c:type="hb_position_t*"/>
5959 </parameter>
5960 <parameter name="y"
5961 direction="out"
5962 caller-allocates="0"
5963 transfer-ownership="full">
5964 <type name="position_t" c:type="hb_position_t*"/>
5965 </parameter>
5966 </parameters>
5967 </function>
5968 <callback name="font_get_glyph_advance_func_t"
5969 c:type="hb_font_get_glyph_advance_func_t">
5970 <source-position filename="../src/hb-font.h" line="138"/>
5971 <return-value transfer-ownership="none">
5972 <type name="position_t" c:type="hb_position_t"/>
5973 </return-value>
5974 <parameters>
5975 <parameter name="font" transfer-ownership="none">
5976 <type name="font_t" c:type="hb_font_t*"/>
5977 </parameter>
5978 <parameter name="font_data"
5979 transfer-ownership="none"
5980 nullable="1"
5981 allow-none="1">
5982 <type name="gpointer" c:type="void*"/>
5983 </parameter>
5984 <parameter name="glyph" transfer-ownership="none">
5985 <type name="codepoint_t" c:type="hb_codepoint_t"/>
5986 </parameter>
5987 <parameter name="user_data"
5988 transfer-ownership="none"
5989 nullable="1"
5990 allow-none="1"
5991 closure="3">
5992 <type name="gpointer" c:type="void*"/>
5993 </parameter>
5994 </parameters>
5995 </callback>
5996 <function name="font_get_glyph_advances_for_direction"
5997 c:identifier="hb_font_get_glyph_advances_for_direction"
5998 version="1.8.6">
5999 <source-position filename="../src/hb-font.h" line="545"/>
6000 <return-value transfer-ownership="none">
6001 <type name="none" c:type="void"/>
6002 </return-value>
6003 <parameters>
6004 <parameter name="font" transfer-ownership="none">
6005 <doc xml:space="preserve"
6006 filename="../src/hb-font.cc"
6007 line="1124">a font.</doc>
6008 <type name="font_t" c:type="hb_font_t*"/>
6009 </parameter>
6010 <parameter name="direction" transfer-ownership="none">
6011 <type name="direction_t" c:type="hb_direction_t"/>
6012 </parameter>
6013 <parameter name="count" transfer-ownership="none">
6014 <type name="guint" c:type="unsigned int"/>
6015 </parameter>
6016 <parameter name="first_glyph" transfer-ownership="none">
6017 <type name="codepoint_t" c:type="const hb_codepoint_t*"/>
6018 </parameter>
6019 <parameter name="glyph_stride" transfer-ownership="none">
6020 <type name="guint" c:type="unsigned"/>
6021 </parameter>
6022 <parameter name="first_advance" transfer-ownership="none">
6023 <type name="position_t" c:type="hb_position_t*"/>
6024 </parameter>
6025 <parameter name="advance_stride" transfer-ownership="none">
6026 <type name="guint" c:type="unsigned"/>
6027 </parameter>
6028 </parameters>
6029 </function>
6030 <callback name="font_get_glyph_advances_func_t"
6031 c:type="hb_font_get_glyph_advances_func_t">
6032 <source-position filename="../src/hb-font.h" line="144"/>
6033 <return-value transfer-ownership="none">
6034 <type name="none" c:type="void"/>
6035 </return-value>
6036 <parameters>
6037 <parameter name="font" transfer-ownership="none">
6038 <type name="font_t" c:type="hb_font_t*"/>
6039 </parameter>
6040 <parameter name="font_data"
6041 transfer-ownership="none"
6042 nullable="1"
6043 allow-none="1">
6044 <type name="gpointer" c:type="void*"/>
6045 </parameter>
6046 <parameter name="count" transfer-ownership="none">
6047 <type name="guint" c:type="unsigned int"/>
6048 </parameter>
6049 <parameter name="first_glyph" transfer-ownership="none">
6050 <type name="codepoint_t" c:type="const hb_codepoint_t*"/>
6051 </parameter>
6052 <parameter name="glyph_stride" transfer-ownership="none">
6053 <type name="guint" c:type="unsigned"/>
6054 </parameter>
6055 <parameter name="first_advance" transfer-ownership="none">
6056 <type name="position_t" c:type="hb_position_t*"/>
6057 </parameter>
6058 <parameter name="advance_stride" transfer-ownership="none">
6059 <type name="guint" c:type="unsigned"/>
6060 </parameter>
6061 <parameter name="user_data"
6062 transfer-ownership="none"
6063 nullable="1"
6064 allow-none="1"
6065 closure="7">
6066 <type name="gpointer" c:type="void*"/>
6067 </parameter>
6068 </parameters>
6069 </callback>
6070 <function name="font_get_glyph_contour_point"
6071 c:identifier="hb_font_get_glyph_contour_point"
6072 version="0.9.2">
6073 <source-position filename="../src/hb-font.h" line="512"/>
6074 <return-value transfer-ownership="none">
6075 <type name="bool_t" c:type="hb_bool_t"/>
6076 </return-value>
6077 <parameters>
6078 <parameter name="font" transfer-ownership="none">
6079 <doc xml:space="preserve"
6080 filename="../src/hb-font.cc"
6081 line="1020">a font.</doc>
6082 <type name="font_t" c:type="hb_font_t*"/>
6083 </parameter>
6084 <parameter name="glyph" transfer-ownership="none">
6085 <type name="codepoint_t" c:type="hb_codepoint_t"/>
6086 </parameter>
6087 <parameter name="point_index" transfer-ownership="none">
6088 <type name="guint" c:type="unsigned int"/>
6089 </parameter>
6090 <parameter name="x"
6091 direction="out"
6092 caller-allocates="0"
6093 transfer-ownership="full">
6094 <type name="position_t" c:type="hb_position_t*"/>
6095 </parameter>
6096 <parameter name="y"
6097 direction="out"
6098 caller-allocates="0"
6099 transfer-ownership="full">
6100 <type name="position_t" c:type="hb_position_t*"/>
6101 </parameter>
6102 </parameters>
6103 </function>
6104 <function name="font_get_glyph_contour_point_for_origin"
6105 c:identifier="hb_font_get_glyph_contour_point_for_origin"
6106 version="0.9.2">
6107 <source-position filename="../src/hb-font.h" line="581"/>
6108 <return-value transfer-ownership="none">
6109 <type name="bool_t" c:type="hb_bool_t"/>
6110 </return-value>
6111 <parameters>
6112 <parameter name="font" transfer-ownership="none">
6113 <doc xml:space="preserve"
6114 filename="../src/hb-font.cc"
6115 line="1252">a font.</doc>
6116 <type name="font_t" c:type="hb_font_t*"/>
6117 </parameter>
6118 <parameter name="glyph" transfer-ownership="none">
6119 <type name="codepoint_t" c:type="hb_codepoint_t"/>
6120 </parameter>
6121 <parameter name="point_index" transfer-ownership="none">
6122 <type name="guint" c:type="unsigned int"/>
6123 </parameter>
6124 <parameter name="direction" transfer-ownership="none">
6125 <type name="direction_t" c:type="hb_direction_t"/>
6126 </parameter>
6127 <parameter name="x"
6128 direction="out"
6129 caller-allocates="0"
6130 transfer-ownership="full">
6131 <type name="position_t" c:type="hb_position_t*"/>
6132 </parameter>
6133 <parameter name="y"
6134 direction="out"
6135 caller-allocates="0"
6136 transfer-ownership="full">
6137 <type name="position_t" c:type="hb_position_t*"/>
6138 </parameter>
6139 </parameters>
6140 </function>
6141 <callback name="font_get_glyph_contour_point_func_t"
6142 c:type="hb_font_get_glyph_contour_point_func_t">
6143 <source-position filename="../src/hb-font.h" line="171"/>
6144 <return-value transfer-ownership="none">
6145 <type name="bool_t" c:type="hb_bool_t"/>
6146 </return-value>
6147 <parameters>
6148 <parameter name="font" transfer-ownership="none">
6149 <type name="font_t" c:type="hb_font_t*"/>
6150 </parameter>
6151 <parameter name="font_data"
6152 transfer-ownership="none"
6153 nullable="1"
6154 allow-none="1">
6155 <type name="gpointer" c:type="void*"/>
6156 </parameter>
6157 <parameter name="glyph" transfer-ownership="none">
6158 <type name="codepoint_t" c:type="hb_codepoint_t"/>
6159 </parameter>
6160 <parameter name="point_index" transfer-ownership="none">
6161 <type name="guint" c:type="unsigned int"/>
6162 </parameter>
6163 <parameter name="x" transfer-ownership="none">
6164 <type name="position_t" c:type="hb_position_t*"/>
6165 </parameter>
6166 <parameter name="y" transfer-ownership="none">
6167 <type name="position_t" c:type="hb_position_t*"/>
6168 </parameter>
6169 <parameter name="user_data"
6170 transfer-ownership="none"
6171 nullable="1"
6172 allow-none="1"
6173 closure="6">
6174 <type name="gpointer" c:type="void*"/>
6175 </parameter>
6176 </parameters>
6177 </callback>
6178 <function name="font_get_glyph_extents"
6179 c:identifier="hb_font_get_glyph_extents"
6180 version="0.9.2">
6181 <source-position filename="../src/hb-font.h" line="507"/>
6182 <return-value transfer-ownership="none">
6183 <type name="bool_t" c:type="hb_bool_t"/>
6184 </return-value>
6185 <parameters>
6186 <parameter name="font" transfer-ownership="none">
6187 <doc xml:space="preserve"
6188 filename="../src/hb-font.cc"
6189 line="1000">a font.</doc>
6190 <type name="font_t" c:type="hb_font_t*"/>
6191 </parameter>
6192 <parameter name="glyph" transfer-ownership="none">
6193 <type name="codepoint_t" c:type="hb_codepoint_t"/>
6194 </parameter>
6195 <parameter name="extents"
6196 direction="out"
6197 caller-allocates="1"
6198 transfer-ownership="none">
6199 <type name="glyph_extents_t" c:type="hb_glyph_extents_t*"/>
6200 </parameter>
6201 </parameters>
6202 </function>
6203 <function name="font_get_glyph_extents_for_origin"
6204 c:identifier="hb_font_get_glyph_extents_for_origin"
6205 version="0.9.2">
6206 <source-position filename="../src/hb-font.h" line="575"/>
6207 <return-value transfer-ownership="none">
6208 <type name="bool_t" c:type="hb_bool_t"/>
6209 </return-value>
6210 <parameters>
6211 <parameter name="font" transfer-ownership="none">
6212 <doc xml:space="preserve"
6213 filename="../src/hb-font.cc"
6214 line="1230">a font.</doc>
6215 <type name="font_t" c:type="hb_font_t*"/>
6216 </parameter>
6217 <parameter name="glyph" transfer-ownership="none">
6218 <type name="codepoint_t" c:type="hb_codepoint_t"/>
6219 </parameter>
6220 <parameter name="direction" transfer-ownership="none">
6221 <type name="direction_t" c:type="hb_direction_t"/>
6222 </parameter>
6223 <parameter name="extents"
6224 direction="out"
6225 caller-allocates="1"
6226 transfer-ownership="none">
6227 <type name="glyph_extents_t" c:type="hb_glyph_extents_t*"/>
6228 </parameter>
6229 </parameters>
6230 </function>
6231 <callback name="font_get_glyph_extents_func_t"
6232 c:type="hb_font_get_glyph_extents_func_t">
6233 <source-position filename="../src/hb-font.h" line="167"/>
6234 <return-value transfer-ownership="none">
6235 <type name="bool_t" c:type="hb_bool_t"/>
6236 </return-value>
6237 <parameters>
6238 <parameter name="font" transfer-ownership="none">
6239 <type name="font_t" c:type="hb_font_t*"/>
6240 </parameter>
6241 <parameter name="font_data"
6242 transfer-ownership="none"
6243 nullable="1"
6244 allow-none="1">
6245 <type name="gpointer" c:type="void*"/>
6246 </parameter>
6247 <parameter name="glyph" transfer-ownership="none">
6248 <type name="codepoint_t" c:type="hb_codepoint_t"/>
6249 </parameter>
6250 <parameter name="extents" transfer-ownership="none">
6251 <type name="glyph_extents_t" c:type="hb_glyph_extents_t*"/>
6252 </parameter>
6253 <parameter name="user_data"
6254 transfer-ownership="none"
6255 nullable="1"
6256 allow-none="1"
6257 closure="4">
6258 <type name="gpointer" c:type="void*"/>
6259 </parameter>
6260 </parameters>
6261 </callback>
6262 <function name="font_get_glyph_from_name"
6263 c:identifier="hb_font_get_glyph_from_name"
6264 version="0.9.2">
6265 <source-position filename="../src/hb-font.h" line="521"/>
6266 <return-value transfer-ownership="none">
6267 <type name="bool_t" c:type="hb_bool_t"/>
6268 </return-value>
6269 <parameters>
6270 <parameter name="font" transfer-ownership="none">
6271 <doc xml:space="preserve"
6272 filename="../src/hb-font.cc"
6273 line="1063">a font.</doc>
6274 <type name="font_t" c:type="hb_font_t*"/>
6275 </parameter>
6276 <parameter name="name" transfer-ownership="none">
6277 <array length="2" zero-terminated="0" c:type="const char*">
6278 <type name="utf8" c:type="char"/>
6279 </array>
6280 </parameter>
6281 <parameter name="len" transfer-ownership="none">
6282 <type name="gint" c:type="int"/>
6283 </parameter>
6284 <parameter name="glyph"
6285 direction="out"
6286 caller-allocates="0"
6287 transfer-ownership="full">
6288 <type name="codepoint_t" c:type="hb_codepoint_t*"/>
6289 </parameter>
6290 </parameters>
6291 </function>
6292 <callback name="font_get_glyph_from_name_func_t"
6293 c:type="hb_font_get_glyph_from_name_func_t">
6294 <source-position filename="../src/hb-font.h" line="181"/>
6295 <return-value transfer-ownership="none">
6296 <type name="bool_t" c:type="hb_bool_t"/>
6297 </return-value>
6298 <parameters>
6299 <parameter name="font" transfer-ownership="none">
6300 <type name="font_t" c:type="hb_font_t*"/>
6301 </parameter>
6302 <parameter name="font_data"
6303 transfer-ownership="none"
6304 nullable="1"
6305 allow-none="1">
6306 <type name="gpointer" c:type="void*"/>
6307 </parameter>
6308 <parameter name="name" transfer-ownership="none">
6309 <type name="utf8" c:type="const char*"/>
6310 </parameter>
6311 <parameter name="len" transfer-ownership="none">
6312 <type name="gint" c:type="int"/>
6313 </parameter>
6314 <parameter name="glyph" transfer-ownership="none">
6315 <type name="codepoint_t" c:type="hb_codepoint_t*"/>
6316 </parameter>
6317 <parameter name="user_data"
6318 transfer-ownership="none"
6319 nullable="1"
6320 allow-none="1"
6321 closure="5">
6322 <type name="gpointer" c:type="void*"/>
6323 </parameter>
6324 </parameters>
6325 </callback>
6326 <callback name="font_get_glyph_func_t" c:type="hb_font_get_glyph_func_t">
6327 <source-position filename="../src/hb-deprecated.h" line="61"/>
6328 <return-value transfer-ownership="none">
6329 <type name="bool_t" c:type="hb_bool_t"/>
6330 </return-value>
6331 <parameters>
6332 <parameter name="font" transfer-ownership="none">
6333 <type name="font_t" c:type="hb_font_t*"/>
6334 </parameter>
6335 <parameter name="font_data"
6336 transfer-ownership="none"
6337 nullable="1"
6338 allow-none="1">
6339 <type name="gpointer" c:type="void*"/>
6340 </parameter>
6341 <parameter name="unicode" transfer-ownership="none">
6342 <type name="codepoint_t" c:type="hb_codepoint_t"/>
6343 </parameter>
6344 <parameter name="variation_selector" transfer-ownership="none">
6345 <type name="codepoint_t" c:type="hb_codepoint_t"/>
6346 </parameter>
6347 <parameter name="glyph" transfer-ownership="none">
6348 <type name="codepoint_t" c:type="hb_codepoint_t*"/>
6349 </parameter>
6350 <parameter name="user_data"
6351 transfer-ownership="none"
6352 nullable="1"
6353 allow-none="1"
6354 closure="5">
6355 <type name="gpointer" c:type="void*"/>
6356 </parameter>
6357 </parameters>
6358 </callback>
6359 <function name="font_get_glyph_h_advance"
6360 c:identifier="hb_font_get_glyph_h_advance"
6361 version="0.9.2">
6362 <source-position filename="../src/hb-font.h" line="472"/>
6363 <return-value transfer-ownership="none">
6364 <type name="position_t" c:type="hb_position_t"/>
6365 </return-value>
6366 <parameters>
6367 <parameter name="font" transfer-ownership="none">
6368 <doc xml:space="preserve"
6369 filename="../src/hb-font.cc"
6370 line="844">a font.</doc>
6371 <type name="font_t" c:type="hb_font_t*"/>
6372 </parameter>
6373 <parameter name="glyph" transfer-ownership="none">
6374 <type name="codepoint_t" c:type="hb_codepoint_t"/>
6375 </parameter>
6376 </parameters>
6377 </function>
6378 <function name="font_get_glyph_h_advances"
6379 c:identifier="hb_font_get_glyph_h_advances"
6380 version="1.8.6">
6381 <source-position filename="../src/hb-font.h" line="479"/>
6382 <return-value transfer-ownership="none">
6383 <type name="none" c:type="void"/>
6384 </return-value>
6385 <parameters>
6386 <parameter name="font" transfer-ownership="none">
6387 <doc xml:space="preserve"
6388 filename="../src/hb-font.cc"
6389 line="880">a font.</doc>
6390 <type name="font_t" c:type="hb_font_t*"/>
6391 </parameter>
6392 <parameter name="count" transfer-ownership="none">
6393 <type name="guint" c:type="unsigned int"/>
6394 </parameter>
6395 <parameter name="first_glyph" transfer-ownership="none">
6396 <type name="codepoint_t" c:type="const hb_codepoint_t*"/>
6397 </parameter>
6398 <parameter name="glyph_stride" transfer-ownership="none">
6399 <type name="guint" c:type="unsigned"/>
6400 </parameter>
6401 <parameter name="first_advance" transfer-ownership="none">
6402 <type name="position_t" c:type="hb_position_t*"/>
6403 </parameter>
6404 <parameter name="advance_stride" transfer-ownership="none">
6405 <type name="guint" c:type="unsigned"/>
6406 </parameter>
6407 </parameters>
6408 </function>
6409 <function name="font_get_glyph_h_kerning"
6410 c:identifier="hb_font_get_glyph_h_kerning"
6411 version="0.9.2">
6412 <source-position filename="../src/hb-font.h" line="503"/>
6413 <return-value transfer-ownership="none">
6414 <type name="position_t" c:type="hb_position_t"/>
6415 </return-value>
6416 <parameters>
6417 <parameter name="font" transfer-ownership="none">
6418 <doc xml:space="preserve"
6419 filename="../src/hb-font.cc"
6420 line="959">a font.</doc>
6421 <type name="font_t" c:type="hb_font_t*"/>
6422 </parameter>
6423 <parameter name="left_glyph" transfer-ownership="none">
6424 <type name="codepoint_t" c:type="hb_codepoint_t"/>
6425 </parameter>
6426 <parameter name="right_glyph" transfer-ownership="none">
6427 <type name="codepoint_t" c:type="hb_codepoint_t"/>
6428 </parameter>
6429 </parameters>
6430 </function>
6431 <function name="font_get_glyph_h_origin"
6432 c:identifier="hb_font_get_glyph_h_origin"
6433 version="0.9.2">
6434 <source-position filename="../src/hb-font.h" line="494"/>
6435 <return-value transfer-ownership="none">
6436 <type name="bool_t" c:type="hb_bool_t"/>
6437 </return-value>
6438 <parameters>
6439 <parameter name="font" transfer-ownership="none">
6440 <doc xml:space="preserve"
6441 filename="../src/hb-font.cc"
6442 line="917">a font.</doc>
6443 <type name="font_t" c:type="hb_font_t*"/>
6444 </parameter>
6445 <parameter name="glyph" transfer-ownership="none">
6446 <type name="codepoint_t" c:type="hb_codepoint_t"/>
6447 </parameter>
6448 <parameter name="x"
6449 direction="out"
6450 caller-allocates="0"
6451 transfer-ownership="full">
6452 <type name="position_t" c:type="hb_position_t*"/>
6453 </parameter>
6454 <parameter name="y"
6455 direction="out"
6456 caller-allocates="0"
6457 transfer-ownership="full">
6458 <type name="position_t" c:type="hb_position_t*"/>
6459 </parameter>
6460 </parameters>
6461 </function>
6462 <function name="font_get_glyph_kerning_for_direction"
6463 c:identifier="hb_font_get_glyph_kerning_for_direction"
6464 version="0.9.2">
6465 <source-position filename="../src/hb-font.h" line="569"/>
6466 <return-value transfer-ownership="none">
6467 <type name="none" c:type="void"/>
6468 </return-value>
6469 <parameters>
6470 <parameter name="font" transfer-ownership="none">
6471 <doc xml:space="preserve"
6472 filename="../src/hb-font.cc"
6473 line="1208">a font.</doc>
6474 <type name="font_t" c:type="hb_font_t*"/>
6475 </parameter>
6476 <parameter name="first_glyph" transfer-ownership="none">
6477 <type name="codepoint_t" c:type="hb_codepoint_t"/>
6478 </parameter>
6479 <parameter name="second_glyph" transfer-ownership="none">
6480 <type name="codepoint_t" c:type="hb_codepoint_t"/>
6481 </parameter>
6482 <parameter name="direction" transfer-ownership="none">
6483 <type name="direction_t" c:type="hb_direction_t"/>
6484 </parameter>
6485 <parameter name="x"
6486 direction="out"
6487 caller-allocates="0"
6488 transfer-ownership="full">
6489 <type name="position_t" c:type="hb_position_t*"/>
6490 </parameter>
6491 <parameter name="y"
6492 direction="out"
6493 caller-allocates="0"
6494 transfer-ownership="full">
6495 <type name="position_t" c:type="hb_position_t*"/>
6496 </parameter>
6497 </parameters>
6498 </function>
6499 <callback name="font_get_glyph_kerning_func_t"
6500 c:type="hb_font_get_glyph_kerning_func_t">
6501 <source-position filename="../src/hb-font.h" line="161"/>
6502 <return-value transfer-ownership="none">
6503 <type name="position_t" c:type="hb_position_t"/>
6504 </return-value>
6505 <parameters>
6506 <parameter name="font" transfer-ownership="none">
6507 <type name="font_t" c:type="hb_font_t*"/>
6508 </parameter>
6509 <parameter name="font_data"
6510 transfer-ownership="none"
6511 nullable="1"
6512 allow-none="1">
6513 <type name="gpointer" c:type="void*"/>
6514 </parameter>
6515 <parameter name="first_glyph" transfer-ownership="none">
6516 <type name="codepoint_t" c:type="hb_codepoint_t"/>
6517 </parameter>
6518 <parameter name="second_glyph" transfer-ownership="none">
6519 <type name="codepoint_t" c:type="hb_codepoint_t"/>
6520 </parameter>
6521 <parameter name="user_data"
6522 transfer-ownership="none"
6523 nullable="1"
6524 allow-none="1"
6525 closure="4">
6526 <type name="gpointer" c:type="void*"/>
6527 </parameter>
6528 </parameters>
6529 </callback>
6530 <function name="font_get_glyph_name"
6531 c:identifier="hb_font_get_glyph_name"
6532 version="0.9.2">
6533 <source-position filename="../src/hb-font.h" line="517"/>
6534 <return-value transfer-ownership="none">
6535 <type name="bool_t" c:type="hb_bool_t"/>
6536 </return-value>
6537 <parameters>
6538 <parameter name="font" transfer-ownership="none">
6539 <doc xml:space="preserve"
6540 filename="../src/hb-font.cc"
6541 line="1042">a font.</doc>
6542 <type name="font_t" c:type="hb_font_t*"/>
6543 </parameter>
6544 <parameter name="glyph" transfer-ownership="none">
6545 <type name="codepoint_t" c:type="hb_codepoint_t"/>
6546 </parameter>
6547 <parameter name="name" transfer-ownership="none">
6548 <array length="3" zero-terminated="0" c:type="char*">
6549 <type name="utf8" c:type="char"/>
6550 </array>
6551 </parameter>
6552 <parameter name="size" transfer-ownership="none">
6553 <type name="guint" c:type="unsigned int"/>
6554 </parameter>
6555 </parameters>
6556 </function>
6557 <callback name="font_get_glyph_name_func_t"
6558 c:type="hb_font_get_glyph_name_func_t">
6559 <source-position filename="../src/hb-font.h" line="177"/>
6560 <return-value transfer-ownership="none">
6561 <type name="bool_t" c:type="hb_bool_t"/>
6562 </return-value>
6563 <parameters>
6564 <parameter name="font" transfer-ownership="none">
6565 <type name="font_t" c:type="hb_font_t*"/>
6566 </parameter>
6567 <parameter name="font_data"
6568 transfer-ownership="none"
6569 nullable="1"
6570 allow-none="1">
6571 <type name="gpointer" c:type="void*"/>
6572 </parameter>
6573 <parameter name="glyph" transfer-ownership="none">
6574 <type name="codepoint_t" c:type="hb_codepoint_t"/>
6575 </parameter>
6576 <parameter name="name" transfer-ownership="none">
6577 <type name="utf8" c:type="char*"/>
6578 </parameter>
6579 <parameter name="size" transfer-ownership="none">
6580 <type name="guint" c:type="unsigned int"/>
6581 </parameter>
6582 <parameter name="user_data"
6583 transfer-ownership="none"
6584 nullable="1"
6585 allow-none="1"
6586 closure="5">
6587 <type name="gpointer" c:type="void*"/>
6588 </parameter>
6589 </parameters>
6590 </callback>
6591 <function name="font_get_glyph_origin_for_direction"
6592 c:identifier="hb_font_get_glyph_origin_for_direction"
6593 version="0.9.2">
6594 <source-position filename="../src/hb-font.h" line="553"/>
6595 <return-value transfer-ownership="none">
6596 <type name="none" c:type="void"/>
6597 </return-value>
6598 <parameters>
6599 <parameter name="font" transfer-ownership="none">
6600 <doc xml:space="preserve"
6601 filename="../src/hb-font.cc"
6602 line="1145">a font.</doc>
6603 <type name="font_t" c:type="hb_font_t*"/>
6604 </parameter>
6605 <parameter name="glyph" transfer-ownership="none">
6606 <type name="codepoint_t" c:type="hb_codepoint_t"/>
6607 </parameter>
6608 <parameter name="direction" transfer-ownership="none">
6609 <type name="direction_t" c:type="hb_direction_t"/>
6610 </parameter>
6611 <parameter name="x"
6612 direction="out"
6613 caller-allocates="0"
6614 transfer-ownership="full">
6615 <type name="position_t" c:type="hb_position_t*"/>
6616 </parameter>
6617 <parameter name="y"
6618 direction="out"
6619 caller-allocates="0"
6620 transfer-ownership="full">
6621 <type name="position_t" c:type="hb_position_t*"/>
6622 </parameter>
6623 </parameters>
6624 </function>
6625 <callback name="font_get_glyph_origin_func_t"
6626 c:type="hb_font_get_glyph_origin_func_t">
6627 <source-position filename="../src/hb-font.h" line="154"/>
6628 <return-value transfer-ownership="none">
6629 <type name="bool_t" c:type="hb_bool_t"/>
6630 </return-value>
6631 <parameters>
6632 <parameter name="font" transfer-ownership="none">
6633 <type name="font_t" c:type="hb_font_t*"/>
6634 </parameter>
6635 <parameter name="font_data"
6636 transfer-ownership="none"
6637 nullable="1"
6638 allow-none="1">
6639 <type name="gpointer" c:type="void*"/>
6640 </parameter>
6641 <parameter name="glyph" transfer-ownership="none">
6642 <type name="codepoint_t" c:type="hb_codepoint_t"/>
6643 </parameter>
6644 <parameter name="x" transfer-ownership="none">
6645 <type name="position_t" c:type="hb_position_t*"/>
6646 </parameter>
6647 <parameter name="y" transfer-ownership="none">
6648 <type name="position_t" c:type="hb_position_t*"/>
6649 </parameter>
6650 <parameter name="user_data"
6651 transfer-ownership="none"
6652 nullable="1"
6653 allow-none="1"
6654 closure="5">
6655 <type name="gpointer" c:type="void*"/>
6656 </parameter>
6657 </parameters>
6658 </callback>
6659 <function name="font_get_glyph_v_advance"
6660 c:identifier="hb_font_get_glyph_v_advance"
6661 version="0.9.2">
6662 <source-position filename="../src/hb-font.h" line="475"/>
6663 <return-value transfer-ownership="none">
6664 <type name="position_t" c:type="hb_position_t"/>
6665 </return-value>
6666 <parameters>
6667 <parameter name="font" transfer-ownership="none">
6668 <doc xml:space="preserve"
6669 filename="../src/hb-font.cc"
6670 line="862">a font.</doc>
6671 <type name="font_t" c:type="hb_font_t*"/>
6672 </parameter>
6673 <parameter name="glyph" transfer-ownership="none">
6674 <type name="codepoint_t" c:type="hb_codepoint_t"/>
6675 </parameter>
6676 </parameters>
6677 </function>
6678 <function name="font_get_glyph_v_advances"
6679 c:identifier="hb_font_get_glyph_v_advances"
6680 version="1.8.6">
6681 <source-position filename="../src/hb-font.h" line="486"/>
6682 <return-value transfer-ownership="none">
6683 <type name="none" c:type="void"/>
6684 </return-value>
6685 <parameters>
6686 <parameter name="font" transfer-ownership="none">
6687 <doc xml:space="preserve"
6688 filename="../src/hb-font.cc"
6689 line="898">a font.</doc>
6690 <type name="font_t" c:type="hb_font_t*"/>
6691 </parameter>
6692 <parameter name="count" transfer-ownership="none">
6693 <type name="guint" c:type="unsigned int"/>
6694 </parameter>
6695 <parameter name="first_glyph" transfer-ownership="none">
6696 <type name="codepoint_t" c:type="const hb_codepoint_t*"/>
6697 </parameter>
6698 <parameter name="glyph_stride" transfer-ownership="none">
6699 <type name="guint" c:type="unsigned"/>
6700 </parameter>
6701 <parameter name="first_advance" transfer-ownership="none">
6702 <type name="position_t" c:type="hb_position_t*"/>
6703 </parameter>
6704 <parameter name="advance_stride" transfer-ownership="none">
6705 <type name="guint" c:type="unsigned"/>
6706 </parameter>
6707 </parameters>
6708 </function>
6709 <function name="font_get_glyph_v_kerning"
6710 c:identifier="hb_font_get_glyph_v_kerning"
6711 version="0.9.2"
6712 deprecated="1"
6713 deprecated-version="2.0.0">
6714 <source-position filename="../src/hb-deprecated.h" line="188"/>
6715 <return-value transfer-ownership="none">
6716 <type name="position_t" c:type="hb_position_t"/>
6717 </return-value>
6718 <parameters>
6719 <parameter name="font" transfer-ownership="none">
6720 <doc xml:space="preserve"
6721 filename="../src/hb-font.cc"
6722 line="979">a font.</doc>
6723 <type name="font_t" c:type="hb_font_t*"/>
6724 </parameter>
6725 <parameter name="top_glyph" transfer-ownership="none">
6726 <type name="codepoint_t" c:type="hb_codepoint_t"/>
6727 </parameter>
6728 <parameter name="bottom_glyph" transfer-ownership="none">
6729 <type name="codepoint_t" c:type="hb_codepoint_t"/>
6730 </parameter>
6731 </parameters>
6732 </function>
6733 <function name="font_get_glyph_v_origin"
6734 c:identifier="hb_font_get_glyph_v_origin"
6735 version="0.9.2">
6736 <source-position filename="../src/hb-font.h" line="498"/>
6737 <return-value transfer-ownership="none">
6738 <type name="bool_t" c:type="hb_bool_t"/>
6739 </return-value>
6740 <parameters>
6741 <parameter name="font" transfer-ownership="none">
6742 <doc xml:space="preserve"
6743 filename="../src/hb-font.cc"
6744 line="938">a font.</doc>
6745 <type name="font_t" c:type="hb_font_t*"/>
6746 </parameter>
6747 <parameter name="glyph" transfer-ownership="none">
6748 <type name="codepoint_t" c:type="hb_codepoint_t"/>
6749 </parameter>
6750 <parameter name="x"
6751 direction="out"
6752 caller-allocates="0"
6753 transfer-ownership="full">
6754 <type name="position_t" c:type="hb_position_t*"/>
6755 </parameter>
6756 <parameter name="y"
6757 direction="out"
6758 caller-allocates="0"
6759 transfer-ownership="full">
6760 <type name="position_t" c:type="hb_position_t*"/>
6761 </parameter>
6762 </parameters>
6763 </function>
6764 <function name="font_get_h_extents"
6765 c:identifier="hb_font_get_h_extents"
6766 version="1.1.3">
6767 <source-position filename="../src/hb-font.h" line="448"/>
6768 <return-value transfer-ownership="none">
6769 <type name="bool_t" c:type="hb_bool_t"/>
6770 </return-value>
6771 <parameters>
6772 <parameter name="font" transfer-ownership="none">
6773 <doc xml:space="preserve"
6774 filename="../src/hb-font.cc"
6775 line="721">a font.</doc>
6776 <type name="font_t" c:type="hb_font_t*"/>
6777 </parameter>
6778 <parameter name="extents"
6779 direction="out"
6780 caller-allocates="1"
6781 transfer-ownership="none">
6782 <type name="font_extents_t" c:type="hb_font_extents_t*"/>
6783 </parameter>
6784 </parameters>
6785 </function>
6786 <function name="font_get_nominal_glyph"
6787 c:identifier="hb_font_get_nominal_glyph"
6788 version="1.2.3">
6789 <source-position filename="../src/hb-font.h" line="455"/>
6790 <return-value transfer-ownership="none">
6791 <type name="bool_t" c:type="hb_bool_t"/>
6792 </return-value>
6793 <parameters>
6794 <parameter name="font" transfer-ownership="none">
6795 <doc xml:space="preserve"
6796 filename="../src/hb-font.cc"
6797 line="780">a font.</doc>
6798 <type name="font_t" c:type="hb_font_t*"/>
6799 </parameter>
6800 <parameter name="unicode" transfer-ownership="none">
6801 <type name="codepoint_t" c:type="hb_codepoint_t"/>
6802 </parameter>
6803 <parameter name="glyph"
6804 direction="out"
6805 caller-allocates="0"
6806 transfer-ownership="full">
6807 <type name="codepoint_t" c:type="hb_codepoint_t*"/>
6808 </parameter>
6809 </parameters>
6810 </function>
6811 <callback name="font_get_nominal_glyph_func_t"
6812 c:type="hb_font_get_nominal_glyph_func_t">
6813 <source-position filename="../src/hb-font.h" line="120"/>
6814 <return-value transfer-ownership="none">
6815 <type name="bool_t" c:type="hb_bool_t"/>
6816 </return-value>
6817 <parameters>
6818 <parameter name="font" transfer-ownership="none">
6819 <type name="font_t" c:type="hb_font_t*"/>
6820 </parameter>
6821 <parameter name="font_data"
6822 transfer-ownership="none"
6823 nullable="1"
6824 allow-none="1">
6825 <type name="gpointer" c:type="void*"/>
6826 </parameter>
6827 <parameter name="unicode" transfer-ownership="none">
6828 <type name="codepoint_t" c:type="hb_codepoint_t"/>
6829 </parameter>
6830 <parameter name="glyph" transfer-ownership="none">
6831 <type name="codepoint_t" c:type="hb_codepoint_t*"/>
6832 </parameter>
6833 <parameter name="user_data"
6834 transfer-ownership="none"
6835 nullable="1"
6836 allow-none="1"
6837 closure="4">
6838 <type name="gpointer" c:type="void*"/>
6839 </parameter>
6840 </parameters>
6841 </callback>
6842 <function name="font_get_nominal_glyphs"
6843 c:identifier="hb_font_get_nominal_glyphs"
6844 version="2.6.3">
6845 <source-position filename="../src/hb-font.h" line="464"/>
6846 <return-value transfer-ownership="none">
6847 <type name="guint" c:type="unsigned int"/>
6848 </return-value>
6849 <parameters>
6850 <parameter name="font" transfer-ownership="none">
6851 <doc xml:space="preserve"
6852 filename="../src/hb-font.cc"
6853 line="800">a font.</doc>
6854 <type name="font_t" c:type="hb_font_t*"/>
6855 </parameter>
6856 <parameter name="count" transfer-ownership="none">
6857 <type name="guint" c:type="unsigned int"/>
6858 </parameter>
6859 <parameter name="first_unicode" transfer-ownership="none">
6860 <type name="codepoint_t" c:type="const hb_codepoint_t*"/>
6861 </parameter>
6862 <parameter name="unicode_stride" transfer-ownership="none">
6863 <type name="guint" c:type="unsigned int"/>
6864 </parameter>
6865 <parameter name="first_glyph" transfer-ownership="none">
6866 <type name="codepoint_t" c:type="hb_codepoint_t*"/>
6867 </parameter>
6868 <parameter name="glyph_stride" transfer-ownership="none">
6869 <type name="guint" c:type="unsigned int"/>
6870 </parameter>
6871 </parameters>
6872 </function>
6873 <callback name="font_get_nominal_glyphs_func_t"
6874 c:type="hb_font_get_nominal_glyphs_func_t">
6875 <source-position filename="../src/hb-font.h" line="129"/>
6876 <return-value transfer-ownership="none">
6877 <type name="guint" c:type="unsigned int"/>
6878 </return-value>
6879 <parameters>
6880 <parameter name="font" transfer-ownership="none">
6881 <type name="font_t" c:type="hb_font_t*"/>
6882 </parameter>
6883 <parameter name="font_data"
6884 transfer-ownership="none"
6885 nullable="1"
6886 allow-none="1">
6887 <type name="gpointer" c:type="void*"/>
6888 </parameter>
6889 <parameter name="count" transfer-ownership="none">
6890 <type name="guint" c:type="unsigned int"/>
6891 </parameter>
6892 <parameter name="first_unicode" transfer-ownership="none">
6893 <type name="codepoint_t" c:type="const hb_codepoint_t*"/>
6894 </parameter>
6895 <parameter name="unicode_stride" transfer-ownership="none">
6896 <type name="guint" c:type="unsigned int"/>
6897 </parameter>
6898 <parameter name="first_glyph" transfer-ownership="none">
6899 <type name="codepoint_t" c:type="hb_codepoint_t*"/>
6900 </parameter>
6901 <parameter name="glyph_stride" transfer-ownership="none">
6902 <type name="guint" c:type="unsigned int"/>
6903 </parameter>
6904 <parameter name="user_data"
6905 transfer-ownership="none"
6906 nullable="1"
6907 allow-none="1"
6908 closure="7">
6909 <type name="gpointer" c:type="void*"/>
6910 </parameter>
6911 </parameters>
6912 </callback>
6913 <function name="font_get_parent"
6914 c:identifier="hb_font_get_parent"
6915 version="0.9.2">
6916 <source-position filename="../src/hb-font.h" line="642"/>
6917 <return-value transfer-ownership="none">
6918 <type name="font_t" c:type="hb_font_t*"/>
6919 </return-value>
6920 <parameters>
6921 <parameter name="font" transfer-ownership="none">
6922 <doc xml:space="preserve"
6923 filename="../src/hb-font.cc"
6924 line="1621">a font.</doc>
6925 <type name="font_t" c:type="hb_font_t*"/>
6926 </parameter>
6927 </parameters>
6928 </function>
6929 <function name="font_get_ppem"
6930 c:identifier="hb_font_get_ppem"
6931 version="0.9.2">
6932 <source-position filename="../src/hb-font.h" line="684"/>
6933 <return-value transfer-ownership="none">
6934 <type name="none" c:type="void"/>
6935 </return-value>
6936 <parameters>
6937 <parameter name="font" transfer-ownership="none">
6938 <doc xml:space="preserve"
6939 filename="../src/hb-font.cc"
6940 line="1814">a font.</doc>
6941 <type name="font_t" c:type="hb_font_t*"/>
6942 </parameter>
6943 <parameter name="x_ppem"
6944 direction="out"
6945 caller-allocates="0"
6946 transfer-ownership="full">
6947 <type name="guint" c:type="unsigned int*"/>
6948 </parameter>
6949 <parameter name="y_ppem"
6950 direction="out"
6951 caller-allocates="0"
6952 transfer-ownership="full">
6953 <type name="guint" c:type="unsigned int*"/>
6954 </parameter>
6955 </parameters>
6956 </function>
6957 <function name="font_get_ptem"
6958 c:identifier="hb_font_get_ptem"
6959 version="0.9.2">
6960 <doc xml:space="preserve"
6961 filename="../src/hb-font.cc"
6962 line="1851">Gets the "point size" of the font. A value of 0 means unset.</doc>
6963 <source-position filename="../src/hb-font.h" line="696"/>
6964 <return-value transfer-ownership="none">
6965 <doc xml:space="preserve"
6966 filename="../src/hb-font.cc"
6967 line="1857">Point size.</doc>
6968 <type name="gfloat" c:type="float"/>
6969 </return-value>
6970 <parameters>
6971 <parameter name="font" transfer-ownership="none">
6972 <doc xml:space="preserve"
6973 filename="../src/hb-font.cc"
6974 line="1853">a font.</doc>
6975 <type name="font_t" c:type="hb_font_t*"/>
6976 </parameter>
6977 </parameters>
6978 </function>
6979 <function name="font_get_scale"
6980 c:identifier="hb_font_get_scale"
6981 version="0.9.2">
6982 <source-position filename="../src/hb-font.h" line="671"/>
6983 <return-value transfer-ownership="none">
6984 <type name="none" c:type="void"/>
6985 </return-value>
6986 <parameters>
6987 <parameter name="font" transfer-ownership="none">
6988 <doc xml:space="preserve"
6989 filename="../src/hb-font.cc"
6990 line="1773">a font.</doc>
6991 <type name="font_t" c:type="hb_font_t*"/>
6992 </parameter>
6993 <parameter name="x_scale"
6994 direction="out"
6995 caller-allocates="0"
6996 transfer-ownership="full">
6997 <type name="gint" c:type="int*"/>
6998 </parameter>
6999 <parameter name="y_scale"
7000 direction="out"
7001 caller-allocates="0"
7002 transfer-ownership="full">
7003 <type name="gint" c:type="int*"/>
7004 </parameter>
7005 </parameters>
7006 </function>
7007 <function name="font_get_user_data"
7008 c:identifier="hb_font_get_user_data"
7009 version="0.9.2"
7010 introspectable="0">
7011 <source-position filename="../src/hb-font.h" line="628"/>
7012 <return-value transfer-ownership="none" nullable="1">
7013 <type name="gpointer" c:type="void*"/>
7014 </return-value>
7015 <parameters>
7016 <parameter name="font" transfer-ownership="none">
7017 <doc xml:space="preserve"
7018 filename="../src/hb-font.cc"
7019 line="1541">a font.</doc>
7020 <type name="font_t" c:type="hb_font_t*"/>
7021 </parameter>
7022 <parameter name="key" transfer-ownership="none">
7023 <type name="user_data_key_t" c:type="hb_user_data_key_t*"/>
7024 </parameter>
7025 </parameters>
7026 </function>
7027 <function name="font_get_v_extents"
7028 c:identifier="hb_font_get_v_extents"
7029 version="1.1.3">
7030 <source-position filename="../src/hb-font.h" line="451"/>
7031 <return-value transfer-ownership="none">
7032 <type name="bool_t" c:type="hb_bool_t"/>
7033 </return-value>
7034 <parameters>
7035 <parameter name="font" transfer-ownership="none">
7036 <doc xml:space="preserve"
7037 filename="../src/hb-font.cc"
7038 line="739">a font.</doc>
7039 <type name="font_t" c:type="hb_font_t*"/>
7040 </parameter>
7041 <parameter name="extents"
7042 direction="out"
7043 caller-allocates="1"
7044 transfer-ownership="none">
7045 <type name="font_extents_t" c:type="hb_font_extents_t*"/>
7046 </parameter>
7047 </parameters>
7048 </function>
7049 <function name="font_get_var_coords_normalized"
7050 c:identifier="hb_font_get_var_coords_normalized"
7051 version="1.4.2">
7052 <doc xml:space="preserve"
7053 filename="../src/hb-font.cc"
7054 line="2017">Return value is valid as long as variation coordinates of the font
7055 are not modified.</doc>
7056 <source-position filename="../src/hb-font.h" line="720"/>
7057 <return-value transfer-ownership="none">
7058 <type name="gint" c:type="const int*"/>
7059 </return-value>
7060 <parameters>
7061 <parameter name="font" transfer-ownership="none">
7062 <type name="font_t" c:type="hb_font_t*"/>
7063 </parameter>
7064 <parameter name="length" transfer-ownership="none">
7065 <type name="guint" c:type="unsigned int*"/>
7066 </parameter>
7067 </parameters>
7068 </function>
7069 <function name="font_get_variation_glyph"
7070 c:identifier="hb_font_get_variation_glyph"
7071 version="1.2.3">
7072 <source-position filename="../src/hb-font.h" line="459"/>
7073 <return-value transfer-ownership="none">
7074 <type name="bool_t" c:type="hb_bool_t"/>
7075 </return-value>
7076 <parameters>
7077 <parameter name="font" transfer-ownership="none">
7078 <doc xml:space="preserve"
7079 filename="../src/hb-font.cc"
7080 line="823">a font.</doc>
7081 <type name="font_t" c:type="hb_font_t*"/>
7082 </parameter>
7083 <parameter name="unicode" transfer-ownership="none">
7084 <type name="codepoint_t" c:type="hb_codepoint_t"/>
7085 </parameter>
7086 <parameter name="variation_selector" transfer-ownership="none">
7087 <type name="codepoint_t" c:type="hb_codepoint_t"/>
7088 </parameter>
7089 <parameter name="glyph"
7090 direction="out"
7091 caller-allocates="0"
7092 transfer-ownership="full">
7093 <type name="codepoint_t" c:type="hb_codepoint_t*"/>
7094 </parameter>
7095 </parameters>
7096 </function>
7097 <callback name="font_get_variation_glyph_func_t"
7098 c:type="hb_font_get_variation_glyph_func_t">
7099 <source-position filename="../src/hb-font.h" line="124"/>
7100 <return-value transfer-ownership="none">
7101 <type name="bool_t" c:type="hb_bool_t"/>
7102 </return-value>
7103 <parameters>
7104 <parameter name="font" transfer-ownership="none">
7105 <type name="font_t" c:type="hb_font_t*"/>
7106 </parameter>
7107 <parameter name="font_data"
7108 transfer-ownership="none"
7109 nullable="1"
7110 allow-none="1">
7111 <type name="gpointer" c:type="void*"/>
7112 </parameter>
7113 <parameter name="unicode" transfer-ownership="none">
7114 <type name="codepoint_t" c:type="hb_codepoint_t"/>
7115 </parameter>
7116 <parameter name="variation_selector" transfer-ownership="none">
7117 <type name="codepoint_t" c:type="hb_codepoint_t"/>
7118 </parameter>
7119 <parameter name="glyph" transfer-ownership="none">
7120 <type name="codepoint_t" c:type="hb_codepoint_t*"/>
7121 </parameter>
7122 <parameter name="user_data"
7123 transfer-ownership="none"
7124 nullable="1"
7125 allow-none="1"
7126 closure="5">
7127 <type name="gpointer" c:type="void*"/>
7128 </parameter>
7129 </parameters>
7130 </callback>
7131 <function name="font_glyph_from_string"
7132 c:identifier="hb_font_glyph_from_string"
7133 version="0.9.2">
7134 <source-position filename="../src/hb-font.h" line="593"/>
7135 <return-value transfer-ownership="none">
7136 <type name="bool_t" c:type="hb_bool_t"/>
7137 </return-value>
7138 <parameters>
7139 <parameter name="font" transfer-ownership="none">
7140 <doc xml:space="preserve"
7141 filename="../src/hb-font.cc"
7142 line="1297">a font.</doc>
7143 <type name="font_t" c:type="hb_font_t*"/>
7144 </parameter>
7145 <parameter name="s" transfer-ownership="none">
7146 <array length="2" zero-terminated="0" c:type="const char*">
7147 <type name="guint8"/>
7148 </array>
7149 </parameter>
7150 <parameter name="len" transfer-ownership="none">
7151 <type name="gint" c:type="int"/>
7152 </parameter>
7153 <parameter name="glyph"
7154 direction="out"
7155 caller-allocates="0"
7156 transfer-ownership="full">
7157 <type name="codepoint_t" c:type="hb_codepoint_t*"/>
7158 </parameter>
7159 </parameters>
7160 </function>
7161 <function name="font_glyph_to_string"
7162 c:identifier="hb_font_glyph_to_string"
7163 version="0.9.2">
7164 <source-position filename="../src/hb-font.h" line="588"/>
7165 <return-value transfer-ownership="none">
7166 <type name="none" c:type="void"/>
7167 </return-value>
7168 <parameters>
7169 <parameter name="font" transfer-ownership="none">
7170 <doc xml:space="preserve"
7171 filename="../src/hb-font.cc"
7172 line="1277">a font.</doc>
7173 <type name="font_t" c:type="hb_font_t*"/>
7174 </parameter>
7175 <parameter name="glyph" transfer-ownership="none">
7176 <type name="codepoint_t" c:type="hb_codepoint_t"/>
7177 </parameter>
7178 <parameter name="s" transfer-ownership="none">
7179 <array length="3" zero-terminated="0" c:type="char*">
7180 <type name="utf8" c:type="char"/>
7181 </array>
7182 </parameter>
7183 <parameter name="size" transfer-ownership="none">
7184 <type name="guint" c:type="unsigned int"/>
7185 </parameter>
7186 </parameters>
7187 </function>
7188 <function name="font_is_immutable"
7189 c:identifier="hb_font_is_immutable"
7190 version="0.9.2">
7191 <source-position filename="../src/hb-font.h" line="635"/>
7192 <return-value transfer-ownership="none">
7193 <type name="bool_t" c:type="hb_bool_t"/>
7194 </return-value>
7195 <parameters>
7196 <parameter name="font" transfer-ownership="none">
7197 <doc xml:space="preserve"
7198 filename="../src/hb-font.cc"
7199 line="1579">a font.</doc>
7200 <type name="font_t" c:type="hb_font_t*"/>
7201 </parameter>
7202 </parameters>
7203 </function>
7204 <function name="font_make_immutable"
7205 c:identifier="hb_font_make_immutable"
7206 version="0.9.2">
7207 <source-position filename="../src/hb-font.h" line="632"/>
7208 <return-value transfer-ownership="none">
7209 <type name="none" c:type="void"/>
7210 </return-value>
7211 <parameters>
7212 <parameter name="font" transfer-ownership="none">
7213 <doc xml:space="preserve"
7214 filename="../src/hb-font.cc"
7215 line="1559">a font.</doc>
7216 <type name="font_t" c:type="hb_font_t*"/>
7217 </parameter>
7218 </parameters>
7219 </function>
7220 <function name="font_reference"
7221 c:identifier="hb_font_reference"
7222 version="0.9.2"
7223 introspectable="0">
7224 <source-position filename="../src/hb-font.h" line="614"/>
7225 <return-value transfer-ownership="full">
7226 <type name="font_t" c:type="hb_font_t*"/>
7227 </return-value>
7228 <parameters>
7229 <parameter name="font" transfer-ownership="none">
7230 <doc xml:space="preserve"
7231 filename="../src/hb-font.cc"
7232 line="1473">a font.</doc>
7233 <type name="font_t" c:type="hb_font_t*"/>
7234 </parameter>
7235 </parameters>
7236 </function>
7237 <function name="font_set_face"
7238 c:identifier="hb_font_set_face"
7239 version="1.4.3">
7240 <doc xml:space="preserve"
7241 filename="../src/hb-font.cc"
7242 line="1635">Sets font-face of @font.</doc>
7243 <source-position filename="../src/hb-font.h" line="645"/>
7244 <return-value transfer-ownership="none">
7245 <type name="none" c:type="void"/>
7246 </return-value>
7247 <parameters>
7248 <parameter name="font" transfer-ownership="none">
7249 <doc xml:space="preserve"
7250 filename="../src/hb-font.cc"
7251 line="1637">a font.</doc>
7252 <type name="font_t" c:type="hb_font_t*"/>
7253 </parameter>
7254 <parameter name="face" transfer-ownership="none">
7255 <doc xml:space="preserve"
7256 filename="../src/hb-font.cc"
7257 line="1638">new face.</doc>
7258 <type name="face_t" c:type="hb_face_t*"/>
7259 </parameter>
7260 </parameters>
7261 </function>
7262 <function name="font_set_funcs"
7263 c:identifier="hb_font_set_funcs"
7264 version="0.9.2">
7265 <source-position filename="../src/hb-font.h" line="653"/>
7266 <return-value transfer-ownership="none">
7267 <type name="none" c:type="void"/>
7268 </return-value>
7269 <parameters>
7270 <parameter name="font" transfer-ownership="none">
7271 <doc xml:space="preserve"
7272 filename="../src/hb-font.cc"
7273 line="1682">a font.</doc>
7274 <type name="font_t" c:type="hb_font_t*"/>
7275 </parameter>
7276 <parameter name="klass"
7277 transfer-ownership="none"
7278 scope="notified"
7279 closure="2"
7280 destroy="3">
7281 <type name="font_funcs_t" c:type="hb_font_funcs_t*"/>
7282 </parameter>
7283 <parameter name="font_data"
7284 transfer-ownership="none"
7285 nullable="1"
7286 allow-none="1">
7287 <type name="gpointer" c:type="void*"/>
7288 </parameter>
7289 <parameter name="destroy" transfer-ownership="none" scope="notified">
7290 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
7291 </parameter>
7292 </parameters>
7293 </function>
7294 <function name="font_set_funcs_data"
7295 c:identifier="hb_font_set_funcs_data"
7296 version="0.9.2">
7297 <source-position filename="../src/hb-font.h" line="660"/>
7298 <return-value transfer-ownership="none">
7299 <type name="none" c:type="void"/>
7300 </return-value>
7301 <parameters>
7302 <parameter name="font" transfer-ownership="none">
7303 <doc xml:space="preserve"
7304 filename="../src/hb-font.cc"
7305 line="1719">a font.</doc>
7306 <type name="font_t" c:type="hb_font_t*"/>
7307 </parameter>
7308 <parameter name="font_data"
7309 transfer-ownership="none"
7310 nullable="1"
7311 allow-none="1"
7312 scope="notified"
7313 destroy="2">
7314 <type name="gpointer" c:type="void*"/>
7315 </parameter>
7316 <parameter name="destroy" transfer-ownership="none" scope="notified">
7317 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
7318 </parameter>
7319 </parameters>
7320 </function>
7321 <function name="font_set_parent"
7322 c:identifier="hb_font_set_parent"
7323 version="1.0.5">
7324 <doc xml:space="preserve"
7325 filename="../src/hb-font.cc"
7326 line="1593">Sets parent font of @font.</doc>
7327 <source-position filename="../src/hb-font.h" line="638"/>
7328 <return-value transfer-ownership="none">
7329 <type name="none" c:type="void"/>
7330 </return-value>
7331 <parameters>
7332 <parameter name="font" transfer-ownership="none">
7333 <doc xml:space="preserve"
7334 filename="../src/hb-font.cc"
7335 line="1595">a font.</doc>
7336 <type name="font_t" c:type="hb_font_t*"/>
7337 </parameter>
7338 <parameter name="parent" transfer-ownership="none">
7339 <doc xml:space="preserve"
7340 filename="../src/hb-font.cc"
7341 line="1596">new parent.</doc>
7342 <type name="font_t" c:type="hb_font_t*"/>
7343 </parameter>
7344 </parameters>
7345 </function>
7346 <function name="font_set_ppem"
7347 c:identifier="hb_font_set_ppem"
7348 version="0.9.2">
7349 <source-position filename="../src/hb-font.h" line="679"/>
7350 <return-value transfer-ownership="none">
7351 <type name="none" c:type="void"/>
7352 </return-value>
7353 <parameters>
7354 <parameter name="font" transfer-ownership="none">
7355 <doc xml:space="preserve"
7356 filename="../src/hb-font.cc"
7357 line="1792">a font.</doc>
7358 <type name="font_t" c:type="hb_font_t*"/>
7359 </parameter>
7360 <parameter name="x_ppem" transfer-ownership="none">
7361 <type name="guint" c:type="unsigned int"/>
7362 </parameter>
7363 <parameter name="y_ppem" transfer-ownership="none">
7364 <type name="guint" c:type="unsigned int"/>
7365 </parameter>
7366 </parameters>
7367 </function>
7368 <function name="font_set_ptem"
7369 c:identifier="hb_font_set_ptem"
7370 version="1.6.0">
7371 <doc xml:space="preserve"
7372 filename="../src/hb-font.cc"
7373 line="1831">Sets "point size" of the font. Set to 0 to unset.
7374
7375 There are 72 points in an inch.</doc>
7376 <source-position filename="../src/hb-font.h" line="693"/>
7377 <return-value transfer-ownership="none">
7378 <type name="none" c:type="void"/>
7379 </return-value>
7380 <parameters>
7381 <parameter name="font" transfer-ownership="none">
7382 <doc xml:space="preserve"
7383 filename="../src/hb-font.cc"
7384 line="1833">a font.</doc>
7385 <type name="font_t" c:type="hb_font_t*"/>
7386 </parameter>
7387 <parameter name="ptem" transfer-ownership="none">
7388 <doc xml:space="preserve"
7389 filename="../src/hb-font.cc"
7390 line="1834">font size in points.</doc>
7391 <type name="gfloat" c:type="float"/>
7392 </parameter>
7393 </parameters>
7394 </function>
7395 <function name="font_set_scale"
7396 c:identifier="hb_font_set_scale"
7397 version="0.9.2">
7398 <source-position filename="../src/hb-font.h" line="666"/>
7399 <return-value transfer-ownership="none">
7400 <type name="none" c:type="void"/>
7401 </return-value>
7402 <parameters>
7403 <parameter name="font" transfer-ownership="none">
7404 <doc xml:space="preserve"
7405 filename="../src/hb-font.cc"
7406 line="1750">a font.</doc>
7407 <type name="font_t" c:type="hb_font_t*"/>
7408 </parameter>
7409 <parameter name="x_scale" transfer-ownership="none">
7410 <type name="gint" c:type="int"/>
7411 </parameter>
7412 <parameter name="y_scale" transfer-ownership="none">
7413 <type name="gint" c:type="int"/>
7414 </parameter>
7415 </parameters>
7416 </function>
7417 <function name="font_set_user_data"
7418 c:identifier="hb_font_set_user_data"
7419 version="0.9.2"
7420 introspectable="0">
7421 <source-position filename="../src/hb-font.h" line="620"/>
7422 <return-value transfer-ownership="none">
7423 <type name="bool_t" c:type="hb_bool_t"/>
7424 </return-value>
7425 <parameters>
7426 <parameter name="font" transfer-ownership="none">
7427 <doc xml:space="preserve"
7428 filename="../src/hb-font.cc"
7429 line="1517">a font.</doc>
7430 <type name="font_t" c:type="hb_font_t*"/>
7431 </parameter>
7432 <parameter name="key" transfer-ownership="none">
7433 <type name="user_data_key_t" c:type="hb_user_data_key_t*"/>
7434 </parameter>
7435 <parameter name="data"
7436 transfer-ownership="none"
7437 nullable="1"
7438 allow-none="1">
7439 <type name="gpointer" c:type="void*"/>
7440 </parameter>
7441 <parameter name="destroy" transfer-ownership="none">
7442 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
7443 </parameter>
7444 <parameter name="replace" transfer-ownership="none">
7445 <type name="bool_t" c:type="hb_bool_t"/>
7446 </parameter>
7447 </parameters>
7448 </function>
7449 <function name="font_set_var_coords_design"
7450 c:identifier="hb_font_set_var_coords_design"
7451 version="1.4.2">
7452 <source-position filename="../src/hb-font.h" line="704"/>
7453 <return-value transfer-ownership="none">
7454 <type name="none" c:type="void"/>
7455 </return-value>
7456 <parameters>
7457 <parameter name="font" transfer-ownership="none">
7458 <type name="font_t" c:type="hb_font_t*"/>
7459 </parameter>
7460 <parameter name="coords" transfer-ownership="none">
7461 <type name="gfloat" c:type="const float*"/>
7462 </parameter>
7463 <parameter name="coords_length" transfer-ownership="none">
7464 <type name="guint" c:type="unsigned int"/>
7465 </parameter>
7466 </parameters>
7467 </function>
7468 <function name="font_set_var_coords_normalized"
7469 c:identifier="hb_font_set_var_coords_normalized"
7470 version="1.4.2">
7471 <source-position filename="../src/hb-font.h" line="715"/>
7472 <return-value transfer-ownership="none">
7473 <type name="none" c:type="void"/>
7474 </return-value>
7475 <parameters>
7476 <parameter name="font" transfer-ownership="none">
7477 <type name="font_t" c:type="hb_font_t*"/>
7478 </parameter>
7479 <parameter name="coords" transfer-ownership="none">
7480 <type name="gint" c:type="const int*"/>
7481 </parameter>
7482 <parameter name="coords_length" transfer-ownership="none">
7483 <type name="guint" c:type="unsigned int"/>
7484 </parameter>
7485 </parameters>
7486 </function>
7487 <function name="font_set_var_named_instance"
7488 c:identifier="hb_font_set_var_named_instance"
7489 version="2.6.0">
7490 <doc xml:space="preserve"
7491 filename="../src/hb-font.cc"
7492 line="1950">Sets design coords of a font from a named instance index.</doc>
7493 <source-position filename="../src/hb-font.h" line="724"/>
7494 <return-value transfer-ownership="none">
7495 <type name="none" c:type="void"/>
7496 </return-value>
7497 <parameters>
7498 <parameter name="font" transfer-ownership="none">
7499 <doc xml:space="preserve"
7500 filename="../src/hb-font.cc"
7501 line="1952">a font.</doc>
7502 <type name="font_t" c:type="hb_font_t*"/>
7503 </parameter>
7504 <parameter name="instance_index" transfer-ownership="none">
7505 <doc xml:space="preserve"
7506 filename="../src/hb-font.cc"
7507 line="1953">named instance index.</doc>
7508 <type name="guint" c:type="unsigned"/>
7509 </parameter>
7510 </parameters>
7511 </function>
7512 <function name="font_set_variations"
7513 c:identifier="hb_font_set_variations"
7514 version="1.4.2">
7515 <source-position filename="../src/hb-font.h" line="699"/>
7516 <return-value transfer-ownership="none">
7517 <type name="none" c:type="void"/>
7518 </return-value>
7519 <parameters>
7520 <parameter name="font" transfer-ownership="none">
7521 <type name="font_t" c:type="hb_font_t*"/>
7522 </parameter>
7523 <parameter name="variations" transfer-ownership="none">
7524 <type name="variation_t" c:type="const hb_variation_t*"/>
7525 </parameter>
7526 <parameter name="variations_length" transfer-ownership="none">
7527 <type name="guint" c:type="unsigned int"/>
7528 </parameter>
7529 </parameters>
7530 </function>
7531 <function name="font_subtract_glyph_origin_for_direction"
7532 c:identifier="hb_font_subtract_glyph_origin_for_direction"
7533 version="0.9.2">
7534 <source-position filename="../src/hb-font.h" line="563"/>
7535 <return-value transfer-ownership="none">
7536 <type name="none" c:type="void"/>
7537 </return-value>
7538 <parameters>
7539 <parameter name="font" transfer-ownership="none">
7540 <doc xml:space="preserve"
7541 filename="../src/hb-font.cc"
7542 line="1187">a font.</doc>
7543 <type name="font_t" c:type="hb_font_t*"/>
7544 </parameter>
7545 <parameter name="glyph" transfer-ownership="none">
7546 <type name="codepoint_t" c:type="hb_codepoint_t"/>
7547 </parameter>
7548 <parameter name="direction" transfer-ownership="none">
7549 <type name="direction_t" c:type="hb_direction_t"/>
7550 </parameter>
7551 <parameter name="x"
7552 direction="out"
7553 caller-allocates="0"
7554 transfer-ownership="full">
7555 <type name="position_t" c:type="hb_position_t*"/>
7556 </parameter>
7557 <parameter name="y"
7558 direction="out"
7559 caller-allocates="0"
7560 transfer-ownership="full">
7561 <type name="position_t" c:type="hb_position_t*"/>
7562 </parameter>
7563 </parameters>
7564 </function>
7565 <record name="font_t"
7566 c:type="hb_font_t"
7567 glib:type-name="hb_font_t"
7568 glib:get-type="hb_gobject_font_get_type"
7569 c:symbol-prefix="gobject_font">
7570 <source-position filename="../src/hb-font.h" line="41"/>
7571 </record>
7572 <function name="ft_face_create"
7573 c:identifier="hb_ft_face_create"
7574 version="0.9.2"
7575 introspectable="0">
7576 <doc xml:space="preserve"
7577 filename="../src/hb-ft.cc"
7578 line="661">Creates an #hb_face_t face object from the specified FT_Face.
7579
7580 This variant of the function does not provide any life-cycle management.
7581
7582 Most client programs should use hb_ft_face_create_referenced()
7583 (or, perhaps, hb_ft_face_create_cached()) instead.
7584
7585 If you know you have valid reasons not to use hb_ft_face_create_referenced(),
7586 then it is the client program's responsibility to destroy @ft_face
7587 after the #hb_face_t face object has been destroyed.</doc>
7588 <source-position filename="../src/hb-ft.h" line="63"/>
7589 <return-value transfer-ownership="full">
7590 <doc xml:space="preserve"
7591 filename="../src/hb-ft.cc"
7592 line="677">the new #hb_face_t face object</doc>
7593 <type name="face_t" c:type="hb_face_t*"/>
7594 </return-value>
7595 <parameters>
7596 <parameter name="ft_face"
7597 transfer-ownership="none"
7598 scope="notified"
7599 destroy="1">
7600 <doc xml:space="preserve"
7601 filename="../src/hb-ft.cc"
7602 line="663">FT_Face to work upon</doc>
7603 <type c:type="FT_Face"/>
7604 </parameter>
7605 <parameter name="destroy" transfer-ownership="none" scope="notified">
7606 <doc xml:space="preserve"
7607 filename="../src/hb-ft.cc"
7608 line="664">A callback to call when the face object is not needed anymore</doc>
7609 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
7610 </parameter>
7611 </parameters>
7612 </function>
7613 <function name="ft_face_create_cached"
7614 c:identifier="hb_ft_face_create_cached"
7615 version="0.9.2"
7616 introspectable="0">
7617 <doc xml:space="preserve"
7618 filename="../src/hb-ft.cc"
7619 line="737">Creates an #hb_face_t face object from the specified FT_Face.
7620
7621 This variant of the function caches the newly created #hb_face_t
7622 face object, using the @generic pointer of @ft_face. Subsequent function
7623 calls that are passed the same @ft_face parameter will have the same
7624 #hb_face_t returned to them, and that #hb_face_t will be correctly
7625 reference counted.
7626
7627 However, client programs are still responsible for destroying
7628 @ft_face after the last #hb_face_t face object has been destroyed.</doc>
7629 <source-position filename="../src/hb-ft.h" line="75"/>
7630 <return-value transfer-ownership="full">
7631 <doc xml:space="preserve"
7632 filename="../src/hb-ft.cc"
7633 line="752">the new #hb_face_t face object</doc>
7634 <type name="face_t" c:type="hb_face_t*"/>
7635 </return-value>
7636 <parameters>
7637 <parameter name="ft_face" transfer-ownership="none">
7638 <doc xml:space="preserve"
7639 filename="../src/hb-ft.cc"
7640 line="739">FT_Face to work upon</doc>
7641 <type c:type="FT_Face"/>
7642 </parameter>
7643 </parameters>
7644 </function>
7645 <function name="ft_face_create_referenced"
7646 c:identifier="hb_ft_face_create_referenced"
7647 version="0.9.38"
7648 introspectable="0">
7649 <doc xml:space="preserve"
7650 filename="../src/hb-ft.cc"
7651 line="706">Creates an #hb_face_t face object from the specified FT_Face.
7652
7653 This is the preferred variant of the hb_ft_face_create*
7654 function family, because it calls FT_Reference_Face() on @ft_face,
7655 ensuring that @ft_face remains alive as long as the resulting
7656 #hb_face_t face object remains alive. Also calls FT_Done_Face()
7657 when the #hb_face_t face object is destroyed.
7658
7659 Use this version unless you know you have good reasons not to.</doc>
7660 <source-position filename="../src/hb-ft.h" line="85"/>
7661 <return-value transfer-ownership="full">
7662 <doc xml:space="preserve"
7663 filename="../src/hb-ft.cc"
7664 line="720">the new #hb_face_t face object</doc>
7665 <type name="face_t" c:type="hb_face_t*"/>
7666 </return-value>
7667 <parameters>
7668 <parameter name="ft_face" transfer-ownership="none">
7669 <doc xml:space="preserve"
7670 filename="../src/hb-ft.cc"
7671 line="708">FT_Face to work upon</doc>
7672 <type c:type="FT_Face"/>
7673 </parameter>
7674 </parameters>
7675 </function>
7676 <function name="ft_font_changed" c:identifier="hb_ft_font_changed">
7677 <source-position filename="../src/hb-ft.h" line="127"/>
7678 <return-value transfer-ownership="none">
7679 <type name="none" c:type="void"/>
7680 </return-value>
7681 <parameters>
7682 <parameter name="font" transfer-ownership="none">
7683 <type name="font_t" c:type="hb_font_t*"/>
7684 </parameter>
7685 </parameters>
7686 </function>
7687 <function name="ft_font_create"
7688 c:identifier="hb_ft_font_create"
7689 version="0.9.2"
7690 introspectable="0">
7691 <doc xml:space="preserve"
7692 filename="../src/hb-ft.cc"
7693 line="771">Creates an #hb_font_t font object from the specified FT_Face.
7694
7695 &lt;note&gt;Note: You must set the face size on @ft_face before calling
7696 hb_ft_font_create() on it. Otherwise, HarfBuzz will not pick up
7697 the face size.&lt;/note&gt;
7698
7699 This variant of the function does not provide any life-cycle management.
7700
7701 Most client programs should use hb_ft_font_create_referenced()
7702 instead.
7703
7704 If you know you have valid reasons not to use hb_ft_font_create_referenced(),
7705 then it is the client program's responsibility to destroy @ft_face
7706 after the #hb_font_t font object has been destroyed.
7707
7708 HarfBuzz will use the @destroy callback on the #hb_font_t font object
7709 if it is supplied when you use this function. However, even if @destroy
7710 is provided, it is the client program's responsibility to destroy @ft_face,
7711 and it is the client program's responsibility to ensure that @ft_face is
7712 destroyed only after the #hb_font_t font object has been destroyed.</doc>
7713 <source-position filename="../src/hb-ft.h" line="102"/>
7714 <return-value transfer-ownership="full">
7715 <doc xml:space="preserve"
7716 filename="../src/hb-ft.cc"
7717 line="797">the new #hb_font_t font object</doc>
7718 <type name="font_t" c:type="hb_font_t*"/>
7719 </return-value>
7720 <parameters>
7721 <parameter name="ft_face"
7722 transfer-ownership="none"
7723 scope="notified"
7724 destroy="1">
7725 <doc xml:space="preserve"
7726 filename="../src/hb-ft.cc"
7727 line="773">FT_Face to work upon</doc>
7728 <type c:type="FT_Face"/>
7729 </parameter>
7730 <parameter name="destroy" transfer-ownership="none" scope="notified">
7731 <doc xml:space="preserve"
7732 filename="../src/hb-ft.cc"
7733 line="774">A callback to call when the font object is not needed anymore</doc>
7734 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
7735 </parameter>
7736 </parameters>
7737 </function>
7738 <function name="ft_font_create_referenced"
7739 c:identifier="hb_ft_font_create_referenced"
7740 version="0.9.38"
7741 introspectable="0">
7742 <doc xml:space="preserve"
7743 filename="../src/hb-ft.cc"
7744 line="880">Creates an #hb_font_t font object from the specified FT_Face.
7745
7746 &lt;note&gt;Note: You must set the face size on @ft_face before calling
7747 hb_ft_font_create_references() on it. Otherwise, HarfBuzz will not pick up
7748 the face size.&lt;/note&gt;
7749
7750 This is the preferred variant of the hb_ft_font_create*
7751 function family, because it calls FT_Reference_Face() on @ft_face,
7752 ensuring that @ft_face remains alive as long as the resulting
7753 #hb_font_t font object remains alive.
7754
7755 Use this version unless you know you have good reasons not to.</doc>
7756 <source-position filename="../src/hb-ft.h" line="108"/>
7757 <return-value transfer-ownership="full">
7758 <doc xml:space="preserve"
7759 filename="../src/hb-ft.cc"
7760 line="897">the new #hb_font_t font object</doc>
7761 <type name="font_t" c:type="hb_font_t*"/>
7762 </return-value>
7763 <parameters>
7764 <parameter name="ft_face" transfer-ownership="none">
7765 <doc xml:space="preserve"
7766 filename="../src/hb-ft.cc"
7767 line="882">FT_Face to work upon</doc>
7768 <type c:type="FT_Face"/>
7769 </parameter>
7770 </parameters>
7771 </function>
7772 <function name="ft_font_get_face"
7773 c:identifier="hb_ft_font_get_face"
7774 introspectable="0">
7775 <source-position filename="../src/hb-ft.h" line="111"/>
7776 <return-value>
7777 <type c:type="FT_Face"/>
7778 </return-value>
7779 <parameters>
7780 <parameter name="font" transfer-ownership="none">
7781 <type name="font_t" c:type="hb_font_t*"/>
7782 </parameter>
7783 </parameters>
7784 </function>
7785 <function name="ft_font_get_load_flags"
7786 c:identifier="hb_ft_font_get_load_flags"
7787 version="1.0.5">
7788 <doc xml:space="preserve"
7789 filename="../src/hb-ft.cc"
7790 line="157">Fetches the FT_Load_Glyph load flags of the specified #hb_font_t.
7791
7792 For more information, see
7793 https://www.freetype.org/freetype2/docs/reference/ft2-base_interface.html#ft_load_xxx</doc>
7794 <source-position filename="../src/hb-ft.h" line="123"/>
7795 <return-value transfer-ownership="none">
7796 <doc xml:space="preserve"
7797 filename="../src/hb-ft.cc"
7798 line="166">FT_Load_Glyph flags found</doc>
7799 <type name="gint" c:type="int"/>
7800 </return-value>
7801 <parameters>
7802 <parameter name="font" transfer-ownership="none">
7803 <doc xml:space="preserve"
7804 filename="../src/hb-ft.cc"
7805 line="159">#hb_font_t to work upon</doc>
7806 <type name="font_t" c:type="hb_font_t*"/>
7807 </parameter>
7808 </parameters>
7809 </function>
7810 <function name="ft_font_lock_face"
7811 c:identifier="hb_ft_font_lock_face"
7812 version="2.6.5"
7813 introspectable="0">
7814 <source-position filename="../src/hb-ft.h" line="114"/>
7815 <return-value>
7816 <type c:type="FT_Face"/>
7817 </return-value>
7818 <parameters>
7819 <parameter name="font" transfer-ownership="none">
7820 <type name="font_t" c:type="hb_font_t*"/>
7821 </parameter>
7822 </parameters>
7823 </function>
7824 <function name="ft_font_set_funcs"
7825 c:identifier="hb_ft_font_set_funcs"
7826 version="1.0.5">
7827 <doc xml:space="preserve"
7828 filename="../src/hb-ft.cc"
7829 line="957">Configures the font-functions structure of the specified
7830 #hb_font_t font object to use FreeType font functions.
7831
7832 In particular, you can use this function to configure an
7833 existing #hb_face_t face object for use with FreeType font
7834 functions even if that #hb_face_t face object was initially
7835 created with hb_face_create(), and therefore was not
7836 initially configured to use FreeType font functions.
7837
7838 An #hb_face_t face object created with hb_ft_face_create()
7839 is preconfigured for FreeType font functions and does not
7840 require this function to be used.
7841
7842 &lt;note&gt;Note: Internally, this function creates an FT_Face.
7843 &lt;/note&gt;</doc>
7844 <source-position filename="../src/hb-ft.h" line="133"/>
7845 <return-value transfer-ownership="none">
7846 <type name="none" c:type="void"/>
7847 </return-value>
7848 <parameters>
7849 <parameter name="font" transfer-ownership="none">
7850 <doc xml:space="preserve"
7851 filename="../src/hb-ft.cc"
7852 line="959">#hb_font_t to work upon</doc>
7853 <type name="font_t" c:type="hb_font_t*"/>
7854 </parameter>
7855 </parameters>
7856 </function>
7857 <function name="ft_font_set_load_flags"
7858 c:identifier="hb_ft_font_set_load_flags"
7859 version="1.0.5">
7860 <doc xml:space="preserve"
7861 filename="../src/hb-ft.cc"
7862 line="131">Sets the FT_Load_Glyph load flags for the specified #hb_font_t.
7863
7864 For more information, see
7865 https://www.freetype.org/freetype2/docs/reference/ft2-base_interface.html#ft_load_xxx</doc>
7866 <source-position filename="../src/hb-ft.h" line="120"/>
7867 <return-value transfer-ownership="none">
7868 <type name="none" c:type="void"/>
7869 </return-value>
7870 <parameters>
7871 <parameter name="font" transfer-ownership="none">
7872 <doc xml:space="preserve"
7873 filename="../src/hb-ft.cc"
7874 line="133">#hb_font_t to work upon</doc>
7875 <type name="font_t" c:type="hb_font_t*"/>
7876 </parameter>
7877 <parameter name="load_flags" transfer-ownership="none">
7878 <doc xml:space="preserve"
7879 filename="../src/hb-ft.cc"
7880 line="134">The FreeType load flags to set</doc>
7881 <type name="gint" c:type="int"/>
7882 </parameter>
7883 </parameters>
7884 </function>
7885 <function name="ft_font_unlock_face"
7886 c:identifier="hb_ft_font_unlock_face"
7887 version="2.6.5">
7888 <source-position filename="../src/hb-ft.h" line="117"/>
7889 <return-value transfer-ownership="none">
7890 <type name="none" c:type="void"/>
7891 </return-value>
7892 <parameters>
7893 <parameter name="font" transfer-ownership="none">
7894 <type name="font_t" c:type="hb_font_t*"/>
7895 </parameter>
7896 </parameters>
7897 </function>
7898 <function name="glib_blob_create"
7899 c:identifier="hb_glib_blob_create"
7900 version="0.9.38">
7901 <doc xml:space="preserve"
7902 filename="../src/hb-glib.cc"
7903 line="282">Creates an #hb_blob_t blob from the specified
7904 GBytes data structure.</doc>
7905 <source-position filename="../src/hb-glib.h" line="51"/>
7906 <return-value transfer-ownership="full">
7907 <doc xml:space="preserve"
7908 filename="../src/hb-glib.cc"
7909 line="289">the new #hb_blob_t blob object</doc>
7910 <type name="blob_t" c:type="hb_blob_t*"/>
7911 </return-value>
7912 <parameters>
7913 <parameter name="gbytes" transfer-ownership="none">
7914 <doc xml:space="preserve"
7915 filename="../src/hb-glib.cc"
7916 line="284">the GBytes structure to work upon</doc>
7917 <type name="GLib.Bytes" c:type="GBytes*"/>
7918 </parameter>
7919 </parameters>
7920 </function>
7921 <function name="glib_get_unicode_funcs"
7922 c:identifier="hb_glib_get_unicode_funcs"
7923 version="0.9.38">
7924 <doc xml:space="preserve"
7925 filename="../src/hb-glib.cc"
7926 line="256">Fetches a Unicode-functions structure that is populated
7927 with the appropriate GLib function for each method.</doc>
7928 <source-position filename="../src/hb-glib.h" line="47"/>
7929 <return-value transfer-ownership="none">
7930 <doc xml:space="preserve"
7931 filename="../src/hb-glib.cc"
7932 line="262">a pointer to the #hb_unicode_funcs_t Unicode-functions structure</doc>
7933 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
7934 </return-value>
7935 </function>
7936 <function name="glib_script_from_script"
7937 c:identifier="hb_glib_script_from_script"
7938 version="0.9.38">
7939 <doc xml:space="preserve"
7940 filename="../src/hb-glib.cc"
7941 line="69">Fetches the GUnicodeScript identifier that corresponds to the
7942 specified #hb_script_t script.</doc>
7943 <source-position filename="../src/hb-glib.h" line="43"/>
7944 <return-value transfer-ownership="none">
7945 <doc xml:space="preserve"
7946 filename="../src/hb-glib.cc"
7947 line="76">the GUnicodeScript identifier found</doc>
7948 <type name="GLib.UnicodeScript" c:type="GUnicodeScript"/>
7949 </return-value>
7950 <parameters>
7951 <parameter name="script" transfer-ownership="none">
7952 <doc xml:space="preserve"
7953 filename="../src/hb-glib.cc"
7954 line="71">The #hb_script_t to query</doc>
7955 <type name="script_t" c:type="hb_script_t"/>
7956 </parameter>
7957 </parameters>
7958 </function>
7959 <function name="glib_script_to_script"
7960 c:identifier="hb_glib_script_to_script"
7961 version="0.9.38">
7962 <doc xml:space="preserve"
7963 filename="../src/hb-glib.cc"
7964 line="52">Fetches the #hb_script_t script that corresponds to the
7965 specified GUnicodeScript identifier.</doc>
7966 <source-position filename="../src/hb-glib.h" line="40"/>
7967 <return-value transfer-ownership="none">
7968 <doc xml:space="preserve"
7969 filename="../src/hb-glib.cc"
7970 line="59">the #hb_script_t script found</doc>
7971 <type name="script_t" c:type="hb_script_t"/>
7972 </return-value>
7973 <parameters>
7974 <parameter name="script" transfer-ownership="none">
7975 <doc xml:space="preserve"
7976 filename="../src/hb-glib.cc"
7977 line="54">The GUnicodeScript identifier to query</doc>
7978 <type name="GLib.UnicodeScript" c:type="GUnicodeScript"/>
7979 </parameter>
7980 </parameters>
7981 </function>
7982 <record name="glyph_extents_t" c:type="hb_glyph_extents_t">
7983 <source-position filename="../src/hb-font.h" line="109"/>
7984 <field name="x_bearing" writable="1">
7985 <type name="position_t" c:type="hb_position_t"/>
7986 </field>
7987 <field name="y_bearing" writable="1">
7988 <type name="position_t" c:type="hb_position_t"/>
7989 </field>
7990 <field name="width" writable="1">
7991 <type name="position_t" c:type="hb_position_t"/>
7992 </field>
7993 <field name="height" writable="1">
7994 <type name="position_t" c:type="hb_position_t"/>
7995 </field>
7996 </record>
7997 <bitfield name="glyph_flags_t"
7998 version="1.5.0"
7999 glib:type-name="hb_glyph_flags_t"
8000 glib:get-type="hb_gobject_glyph_flags_get_type"
8001 c:type="hb_glyph_flags_t">
8002 <member name="unsafe_to_break"
8003 value="1"
8004 c:identifier="HB_GLYPH_FLAG_UNSAFE_TO_BREAK"
8005 glib:nick="unsafe-to-break">
8006 <doc xml:space="preserve"
8007 filename="../src/hb-buffer.h"
8008 line="77">Indicates that if input text is broken at the
8009 beginning of the cluster this glyph is part of,
8010 then both sides need to be re-shaped, as the
8011 result might be different. On the flip side,
8012 it means that when this flag is not present,
8013 then it's safe to break the glyph-run at the
8014 beginning of this cluster, and the two sides
8015 represent the exact same result one would get
8016 if breaking input text at the beginning of
8017 this cluster and shaping the two sides
8018 separately. This can be used to optimize
8019 paragraph layout, by avoiding re-shaping
8020 of each line after line-breaking, or limiting
8021 the reshaping to a small piece around the
8022 breaking point only.</doc>
8023 </member>
8024 <member name="defined"
8025 value="1"
8026 c:identifier="HB_GLYPH_FLAG_DEFINED"
8027 glib:nick="defined">
8028 <doc xml:space="preserve"
8029 filename="../src/hb-buffer.h"
8030 line="92">All the currently defined flags.</doc>
8031 </member>
8032 </bitfield>
8033 <function name="glyph_info_get_glyph_flags"
8034 c:identifier="hb_glyph_info_get_glyph_flags"
8035 version="1.5.0">
8036 <doc xml:space="preserve"
8037 filename="../src/hb-buffer.cc"
8038 line="1407">Returns glyph flags encoded within a #hb_glyph_info_t.</doc>
8039 <source-position filename="../src/hb-buffer.h" line="103"/>
8040 <return-value transfer-ownership="none">
8041 <doc xml:space="preserve"
8042 filename="../src/hb-buffer.cc"
8043 line="1413">The #hb_glyph_flags_t encoded within @info.</doc>
8044 <type name="glyph_flags_t" c:type="hb_glyph_flags_t"/>
8045 </return-value>
8046 <parameters>
8047 <parameter name="info" transfer-ownership="none">
8048 <doc xml:space="preserve"
8049 filename="../src/hb-buffer.cc"
8050 line="1409">a #hb_glyph_info_t.</doc>
8051 <type name="glyph_info_t" c:type="const hb_glyph_info_t*"/>
8052 </parameter>
8053 </parameters>
8054 </function>
8055 <record name="glyph_info_t"
8056 c:type="hb_glyph_info_t"
8057 glib:type-name="hb_glyph_info_t"
8058 glib:get-type="hb_gobject_glyph_info_get_type"
8059 c:symbol-prefix="gobject_glyph_info">
8060 <doc xml:space="preserve"
8061 filename="../src/hb-buffer.h"
8062 line="43">The #hb_glyph_info_t is the structure that holds information about the
8063 glyphs and their relation to input text.</doc>
8064 <source-position filename="../src/hb-buffer.h" line="73"/>
8065 <field name="codepoint" writable="1">
8066 <doc xml:space="preserve"
8067 filename="../src/hb-buffer.h"
8068 line="45">either a Unicode code point (before shaping) or a glyph index
8069 (after shaping).</doc>
8070 <type name="codepoint_t" c:type="hb_codepoint_t"/>
8071 </field>
8072 <field name="mask" readable="0" private="1">
8073 <type name="mask_t" c:type="hb_mask_t"/>
8074 </field>
8075 <field name="cluster" writable="1">
8076 <doc xml:space="preserve"
8077 filename="../src/hb-buffer.h"
8078 line="47">the index of the character in the original text that corresponds
8079 to this #hb_glyph_info_t, or whatever the client passes to
8080 hb_buffer_add(). More than one #hb_glyph_info_t can have the same
8081 @cluster value, if they resulted from the same character (e.g. one
8082 to many glyph substitution), and when more than one character gets
8083 merged in the same glyph (e.g. many to one glyph substitution) the
8084 #hb_glyph_info_t will have the smallest cluster value of them.
8085 By default some characters are merged into the same cluster
8086 (e.g. combining marks have the same cluster as their bases)
8087 even if they are separate glyphs, hb_buffer_set_cluster_level()
8088 allow selecting more fine-grained cluster handling.</doc>
8089 <type name="guint32" c:type="uint32_t"/>
8090 </field>
8091 <field name="var1" readable="0" private="1">
8092 <type name="var_int_t" c:type="hb_var_int_t"/>
8093 </field>
8094 <field name="var2" readable="0" private="1">
8095 <type name="var_int_t" c:type="hb_var_int_t"/>
8096 </field>
8097 </record>
8098 <record name="glyph_position_t"
8099 c:type="hb_glyph_position_t"
8100 glib:type-name="hb_glyph_position_t"
8101 glib:get-type="hb_gobject_glyph_position_get_type"
8102 c:symbol-prefix="gobject_glyph_position">
8103 <doc xml:space="preserve"
8104 filename="../src/hb-buffer.h"
8105 line="109">The #hb_glyph_position_t is the structure that holds the positions of the
8106 glyph in both horizontal and vertical directions. All positions in
8107 #hb_glyph_position_t are relative to the current point.</doc>
8108 <source-position filename="../src/hb-buffer.h" line="133"/>
8109 <field name="x_advance" writable="1">
8110 <doc xml:space="preserve"
8111 filename="../src/hb-buffer.h"
8112 line="111">how much the line advances after drawing this glyph when setting
8113 text in horizontal direction.</doc>
8114 <type name="position_t" c:type="hb_position_t"/>
8115 </field>
8116 <field name="y_advance" writable="1">
8117 <doc xml:space="preserve"
8118 filename="../src/hb-buffer.h"
8119 line="113">how much the line advances after drawing this glyph when setting
8120 text in vertical direction.</doc>
8121 <type name="position_t" c:type="hb_position_t"/>
8122 </field>
8123 <field name="x_offset" writable="1">
8124 <doc xml:space="preserve"
8125 filename="../src/hb-buffer.h"
8126 line="115">how much the glyph moves on the X-axis before drawing it, this
8127 should not affect how much the line advances.</doc>
8128 <type name="position_t" c:type="hb_position_t"/>
8129 </field>
8130 <field name="y_offset" writable="1">
8131 <doc xml:space="preserve"
8132 filename="../src/hb-buffer.h"
8133 line="117">how much the glyph moves on the Y-axis before drawing it, this
8134 should not affect how much the line advances.</doc>
8135 <type name="position_t" c:type="hb_position_t"/>
8136 </field>
8137 <field name="var" readable="0" private="1">
8138 <type name="var_int_t" c:type="hb_var_int_t"/>
8139 </field>
8140 </record>
8141 <function name="graphite2_face_get_gr_face"
8142 c:identifier="hb_graphite2_face_get_gr_face"
8143 version="0.9.10"
8144 introspectable="0">
8145 <doc xml:space="preserve"
8146 filename="../src/hb-graphite2.cc"
8147 line="159">Fetches the Graphite2 gr_face corresponding to the specified
8148 #hb_face_t face object.</doc>
8149 <source-position filename="../src/hb-graphite2.h" line="48"/>
8150 <return-value>
8151 <doc xml:space="preserve"
8152 filename="../src/hb-graphite2.cc"
8153 line="166">the gr_face found</doc>
8154 <type c:type="gr_face*"/>
8155 </return-value>
8156 <parameters>
8157 <parameter name="face" transfer-ownership="none">
8158 <doc xml:space="preserve"
8159 filename="../src/hb-graphite2.cc"
8160 line="161">@hb_face_t to query</doc>
8161 <type name="face_t" c:type="hb_face_t*"/>
8162 </parameter>
8163 </parameters>
8164 </function>
8165 <function name="graphite2_font_get_gr_font"
8166 c:identifier="hb_graphite2_font_get_gr_font"
8167 version="0.9.10"
8168 introspectable="0"
8169 deprecated="1"
8170 deprecated-version="1.4.2">
8171 <source-position filename="../src/hb-graphite2.h" line="53"/>
8172 <return-value>
8173 <type c:type="gr_font*"/>
8174 </return-value>
8175 <parameters>
8176 <parameter name="font" transfer-ownership="none">
8177 <type name="font_t" c:type="hb_font_t*"/>
8178 </parameter>
8179 </parameters>
8180 </function>
8181 <docsection name="hb-aat-layout">
8182 <doc xml:space="preserve"
8183 filename="../src/hb-aat-layout.cc"
8184 line="76">Functions for querying OpenType Layout features in the font face.</doc>
8185 </docsection>
8186 <docsection name="hb-blob">
8187 <doc xml:space="preserve"
8188 filename="../src/hb-blob.cc"
8189 line="42">Blobs wrap a chunk of binary data to handle lifecycle management of data
8190 while it is passed between client and HarfBuzz. Blobs are primarily used
8191 to create font faces, but also to access font face tables, as well as
8192 pass around other binary data.</doc>
8193 </docsection>
8194 <docsection name="hb-buffer">
8195 <doc xml:space="preserve"
8196 filename="../src/hb-buffer.cc"
8197 line="34">Buffers serve dual role in HarfBuzz; they hold the input characters that are
8198 passed to hb_shape(), and after shaping they hold the output glyphs.</doc>
8199 </docsection>
8200 <docsection name="hb-common">
8201 <doc xml:space="preserve"
8202 filename="../src/hb-common.cc"
8203 line="38">Common data types used across HarfBuzz are defined here.</doc>
8204 </docsection>
8205 <docsection name="hb-deprecated">
8206 <doc xml:space="preserve"
8207 filename="../src/hb-deprecated.h"
8208 line="40">These API have been deprecated in favor of newer API, or because they
8209 were deemed unnecessary.</doc>
8210 </docsection>
8211 <docsection name="hb-face">
8212 <doc xml:space="preserve"
8213 filename="../src/hb-face.cc"
8214 line="38">Font face is objects represent a single face in a font family.
8215 More exactly, a font face represents a single face in a binary font file.
8216 Font faces are typically built from a binary blob and a face index.
8217 Font faces are used to create fonts.</doc>
8218 </docsection>
8219 <docsection name="hb-font">
8220 <doc xml:space="preserve"
8221 filename="../src/hb-font.cc"
8222 line="40">Font objects represent a font face at a certain size and other
8223 parameters (pixels per EM, points per EM, variation settings.)
8224 Fonts are created from font faces, and are used as input to
8225 hb_shape() among other things.</doc>
8226 </docsection>
8227 <docsection name="hb-ft">
8228 <doc xml:space="preserve"
8229 filename="../src/hb-ft.cc"
8230 line="45">Functions for using HarfBuzz with the FreeType library.
8231
8232 HarfBuzz supports using FreeType to provide face and
8233 font data.
8234
8235 &lt;note&gt;Note that FreeType is not thread-safe, therefore these
8236 functions are not thread-safe either.&lt;/note&gt;</doc>
8237 </docsection>
8238 <docsection name="hb-glib">
8239 <doc xml:space="preserve"
8240 filename="../src/hb-glib.cc"
8241 line="38">Functions for using HarfBuzz with the GLib library.
8242
8243 HarfBuzz supports using GLib to provide Unicode data, by attaching
8244 GLib functions to the virtual methods in a #hb_unicode_funcs_t function
8245 structure.</doc>
8246 </docsection>
8247 <docsection name="hb-gobject">
8248 <doc xml:space="preserve"
8249 filename="../src/hb-gobject-structs.cc"
8250 line="32">Support for using HarfBuzz with the GObject library to provide
8251 type data.
8252
8253 The types and functions listed here are solely a linkage between
8254 HarfBuzz's public data types and the GTypes used by the GObject framework.
8255 HarfBuzz uses GObject introspection to generate its Python bindings
8256 (and potentially other language bindings); client programs should never need
8257 to access the GObject-integration mechanics.
8258
8259 For client programs using the GNOME and GTK software stack, please see the
8260 GLib and FreeType integration pages.</doc>
8261 </docsection>
8262 <docsection name="hb-graphite2">
8263 <doc xml:space="preserve"
8264 filename="../src/hb-graphite2.cc"
8265 line="42">Functions for using HarfBuzz with fonts that include Graphite features.
8266
8267 For Graphite features to work, you must be sure that HarfBuzz was compiled
8268 with the `graphite2` shaping engine enabled. Currently, the default is to
8269 not enable `graphite2` shaping.</doc>
8270 </docsection>
8271 <docsection name="hb-map">
8272 <doc xml:space="preserve"
8273 filename="../src/hb-map.cc"
8274 line="30">Map objects are integer-to-integer hash-maps. Currently they are
8275 not used in the HarfBuzz public API, but are provided for client's
8276 use if desired.</doc>
8277 </docsection>
8278 <docsection name="hb-ot-color">
8279 <doc xml:space="preserve"
8280 filename="../src/hb-ot-color.cc"
8281 line="44">Functions for fetching color-font information from OpenType font faces.
8282
8283 HarfBuzz supports `COLR`/`CPAL`, `sbix`, `CBDT`, and `SVG` color fonts.</doc>
8284 </docsection>
8285 <docsection name="hb-ot-font">
8286 <doc xml:space="preserve"
8287 filename="../src/hb-ot-font.cc"
8288 line="50">Functions for using OpenType fonts with hb_shape(). Note that fonts returned
8289 by hb_font_create() default to using these functions, so most clients would
8290 never need to call these functions directly.</doc>
8291 </docsection>
8292 <docsection name="hb-ot-layout">
8293 <doc xml:space="preserve"
8294 filename="../src/hb-ot-layout.cc"
8295 line="57">Functions for querying OpenType Layout features in the font face.</doc>
8296 </docsection>
8297 <docsection name="hb-ot-math">
8298 <doc xml:space="preserve"
8299 filename="../src/hb-ot-math.cc"
8300 line="34">Functions for fetching mathematics layout data from OpenType fonts.
8301
8302 HarfBuzz itself does not implement a math layout solution. The
8303 functions and types provided can be used by client programs to access
8304 the font data necessary for typesetting OpenType Math layout.</doc>
8305 </docsection>
8306 <docsection name="hb-ot-meta">
8307 <doc xml:space="preserve"
8308 filename="../src/hb-ot-meta.cc"
8309 line="31">Functions for fetching metadata from fonts.</doc>
8310 </docsection>
8311 <docsection name="hb-ot-name">
8312 <doc xml:space="preserve"
8313 filename="../src/hb-ot-name.cc"
8314 line="36">Functions for fetching name strings from OpenType fonts.</doc>
8315 </docsection>
8316 <docsection name="hb-ot-shape">
8317 <doc xml:space="preserve"
8318 filename="../src/hb-ot-shape.cc"
8319 line="61">Support functions for OpenType shaping related queries.</doc>
8320 </docsection>
8321 <docsection name="hb-ot-var">
8322 <doc xml:space="preserve"
8323 filename="../src/hb-ot-var.cc"
8324 line="38">Functions for fetching information about OpenType Variable Fonts.</doc>
8325 </docsection>
8326 <docsection name="hb-set">
8327 <doc xml:space="preserve"
8328 filename="../src/hb-set.cc"
8329 line="30">Set objects represent a mathematical set of integer values. They are
8330 used in non-shaping API to query certain set of characters or glyphs,
8331 or other integer values.</doc>
8332 </docsection>
8333 <docsection name="hb-shape">
8334 <doc xml:space="preserve"
8335 filename="../src/hb-shape.cc"
8336 line="38">Shaping is the central operation of HarfBuzz. Shaping operates on buffers,
8337 which are sequences of Unicode characters that use the same font and have
8338 the same text direction, script, and language. After shaping the buffer
8339 contains the output glyphs and their positions.</doc>
8340 </docsection>
8341 <docsection name="hb-shape-plan">
8342 <doc xml:space="preserve"
8343 filename="../src/hb-shape-plan.cc"
8344 line="34">Shape plans are not used for shaping directly, but can be access to query
8345 certain information about how shaping will perform given a set of input
8346 parameters (script, language, direction, features, etc.)
8347 Most client would not need to deal with shape plans directly.</doc>
8348 </docsection>
8349 <docsection name="hb-unicode">
8350 <doc xml:space="preserve"
8351 filename="../src/hb-unicode.cc"
8352 line="36">Unicode functions are used to access Unicode character properties.
8353 Client can pass its own Unicode functions to HarfBuzz, or access
8354 the built-in Unicode functions that come with HarfBuzz.
8355
8356 With the Unicode functions, one can query variour Unicode character
8357 properties, such as General Category, Script, Combining Class, etc.</doc>
8358 </docsection>
8359 <docsection name="hb-version">
8360 <doc xml:space="preserve"
8361 filename="../src/hb-common.cc"
8362 line="602">These functions and macros allow accessing version of the HarfBuzz
8363 library used at compile- as well as run-time, and to direct code
8364 conditionally based on those versions, again, at compile- or run-time.</doc>
8365 </docsection>
8366 <function name="language_from_string"
8367 c:identifier="hb_language_from_string"
8368 version="0.9.2">
8369 <doc xml:space="preserve"
8370 filename="../src/hb-common.cc"
8371 line="332">Converts @str representing a BCP 47 language tag to the corresponding
8372 #hb_language_t.</doc>
8373 <source-position filename="../src/hb-common.h" line="165"/>
8374 <return-value transfer-ownership="none">
8375 <doc xml:space="preserve"
8376 filename="../src/hb-common.cc"
8377 line="341">
8378 The #hb_language_t corresponding to the BCP 47 language tag.</doc>
8379 <type name="language_t" c:type="hb_language_t"/>
8380 </return-value>
8381 <parameters>
8382 <parameter name="str" transfer-ownership="none">
8383 <doc xml:space="preserve"
8384 filename="../src/hb-common.cc"
8385 line="334">a string representing
8386 a BCP 47 language tag</doc>
8387 <array length="1" zero-terminated="0" c:type="const char*">
8388 <type name="guint8"/>
8389 </array>
8390 </parameter>
8391 <parameter name="len" transfer-ownership="none">
8392 <doc xml:space="preserve"
8393 filename="../src/hb-common.cc"
8394 line="336">length of the @str, or -1 if it is %NULL-terminated.</doc>
8395 <type name="gint" c:type="int"/>
8396 </parameter>
8397 </parameters>
8398 </function>
8399 <function name="language_get_default"
8400 c:identifier="hb_language_get_default"
8401 version="0.9.2">
8402 <doc xml:space="preserve"
8403 filename="../src/hb-common.cc"
8404 line="388">Get default language from current locale.
8405
8406 Note that the first time this function is called, it calls
8407 "setlocale (LC_CTYPE, nullptr)" to fetch current locale. The underlying
8408 setlocale function is, in many implementations, NOT threadsafe. To avoid
8409 problems, call this function once before multiple threads can call it.
8410 This function is only used from hb_buffer_guess_segment_properties() by
8411 HarfBuzz itself.</doc>
8412 <source-position filename="../src/hb-common.h" line="173"/>
8413 <return-value transfer-ownership="none">
8414 <type name="language_t" c:type="hb_language_t"/>
8415 </return-value>
8416 </function>
8417 <record name="language_t" c:type="hb_language_t" disguised="1">
8418 <source-position filename="../src/hb-common.h" line="162"/>
8419 <method name="_string"
8420 c:identifier="hb_language_to_string"
8421 moved-to="language_to_string"
8422 version="0.9.2">
8423 <doc xml:space="preserve"
8424 filename="../src/hb-common.cc"
8425 line="368">See hb_language_from_string().</doc>
8426 <source-position filename="../src/hb-common.h" line="168"/>
8427 <return-value transfer-ownership="none">
8428 <doc xml:space="preserve"
8429 filename="../src/hb-common.cc"
8430 line="374">
8431 A %NULL-terminated string representing the @language. Must not be freed by
8432 the caller.</doc>
8433 <type name="utf8" c:type="const char*"/>
8434 </return-value>
8435 <parameters>
8436 <instance-parameter name="language" transfer-ownership="none">
8437 <doc xml:space="preserve"
8438 filename="../src/hb-common.cc"
8439 line="370">an #hb_language_t to convert.</doc>
8440 <type name="language_t" c:type="hb_language_t"/>
8441 </instance-parameter>
8442 </parameters>
8443 </method>
8444 </record>
8445 <function name="language_to_string"
8446 c:identifier="hb_language_to_string"
8447 version="0.9.2">
8448 <doc xml:space="preserve"
8449 filename="../src/hb-common.cc"
8450 line="368">See hb_language_from_string().</doc>
8451 <source-position filename="../src/hb-common.h" line="168"/>
8452 <return-value transfer-ownership="none">
8453 <doc xml:space="preserve"
8454 filename="../src/hb-common.cc"
8455 line="374">
8456 A %NULL-terminated string representing the @language. Must not be freed by
8457 the caller.</doc>
8458 <type name="utf8" c:type="const char*"/>
8459 </return-value>
8460 <parameters>
8461 <parameter name="language" transfer-ownership="none">
8462 <doc xml:space="preserve"
8463 filename="../src/hb-common.cc"
8464 line="370">an #hb_language_t to convert.</doc>
8465 <type name="language_t" c:type="hb_language_t"/>
8466 </parameter>
8467 </parameters>
8468 </function>
8469 <function name="map_allocation_successful"
8470 c:identifier="hb_map_allocation_successful"
8471 version="1.7.7">
8472 <source-position filename="../src/hb-map.h" line="73"/>
8473 <return-value transfer-ownership="none">
8474 <type name="bool_t" c:type="hb_bool_t"/>
8475 </return-value>
8476 <parameters>
8477 <parameter name="map" transfer-ownership="none">
8478 <doc xml:space="preserve"
8479 filename="../src/hb-map.cc"
8480 line="146">a map.</doc>
8481 <type name="map_t" c:type="const hb_map_t*"/>
8482 </parameter>
8483 </parameters>
8484 </function>
8485 <function name="map_clear" c:identifier="hb_map_clear" version="1.7.7">
8486 <source-position filename="../src/hb-map.h" line="76"/>
8487 <return-value transfer-ownership="none">
8488 <type name="none" c:type="void"/>
8489 </return-value>
8490 <parameters>
8491 <parameter name="map" transfer-ownership="none">
8492 <doc xml:space="preserve"
8493 filename="../src/hb-map.cc"
8494 line="230">a map.</doc>
8495 <type name="map_t" c:type="hb_map_t*"/>
8496 </parameter>
8497 </parameters>
8498 </function>
8499 <function name="map_create" c:identifier="hb_map_create" version="1.7.7">
8500 <source-position filename="../src/hb-map.h" line="48"/>
8501 <return-value transfer-ownership="full">
8502 <type name="map_t" c:type="hb_map_t*"/>
8503 </return-value>
8504 </function>
8505 <function name="map_del" c:identifier="hb_map_del" version="1.7.7">
8506 <source-position filename="../src/hb-map.h" line="94"/>
8507 <return-value transfer-ownership="none">
8508 <type name="none" c:type="void"/>
8509 </return-value>
8510 <parameters>
8511 <parameter name="map" transfer-ownership="none">
8512 <doc xml:space="preserve"
8513 filename="../src/hb-map.cc"
8514 line="197">a map.</doc>
8515 <type name="map_t" c:type="hb_map_t*"/>
8516 </parameter>
8517 <parameter name="key" transfer-ownership="none">
8518 <type name="codepoint_t" c:type="hb_codepoint_t"/>
8519 </parameter>
8520 </parameters>
8521 </function>
8522 <function name="map_destroy"
8523 c:identifier="hb_map_destroy"
8524 version="1.7.7"
8525 introspectable="0">
8526 <source-position filename="../src/hb-map.h" line="57"/>
8527 <return-value transfer-ownership="none">
8528 <type name="none" c:type="void"/>
8529 </return-value>
8530 <parameters>
8531 <parameter name="map" transfer-ownership="none">
8532 <doc xml:space="preserve"
8533 filename="../src/hb-map.cc"
8534 line="91">a map.</doc>
8535 <type name="map_t" c:type="hb_map_t*"/>
8536 </parameter>
8537 </parameters>
8538 </function>
8539 <function name="map_get" c:identifier="hb_map_get" version="1.7.7">
8540 <source-position filename="../src/hb-map.h" line="90"/>
8541 <return-value transfer-ownership="none">
8542 <type name="codepoint_t" c:type="hb_codepoint_t"/>
8543 </return-value>
8544 <parameters>
8545 <parameter name="map" transfer-ownership="none">
8546 <doc xml:space="preserve"
8547 filename="../src/hb-map.cc"
8548 line="181">a map.</doc>
8549 <type name="map_t" c:type="const hb_map_t*"/>
8550 </parameter>
8551 <parameter name="key" transfer-ownership="none">
8552 <type name="codepoint_t" c:type="hb_codepoint_t"/>
8553 </parameter>
8554 </parameters>
8555 </function>
8556 <function name="map_get_empty"
8557 c:identifier="hb_map_get_empty"
8558 version="1.7.7">
8559 <source-position filename="../src/hb-map.h" line="51"/>
8560 <return-value transfer-ownership="full">
8561 <type name="map_t" c:type="hb_map_t*"/>
8562 </return-value>
8563 </function>
8564 <function name="map_get_population"
8565 c:identifier="hb_map_get_population"
8566 version="1.7.7">
8567 <source-position filename="../src/hb-map.h" line="82"/>
8568 <return-value transfer-ownership="none">
8569 <type name="guint" c:type="unsigned int"/>
8570 </return-value>
8571 <parameters>
8572 <parameter name="map" transfer-ownership="none">
8573 <doc xml:space="preserve"
8574 filename="../src/hb-map.cc"
8575 line="258">a map.</doc>
8576 <type name="map_t" c:type="const hb_map_t*"/>
8577 </parameter>
8578 </parameters>
8579 </function>
8580 <function name="map_get_user_data"
8581 c:identifier="hb_map_get_user_data"
8582 version="1.7.7"
8583 introspectable="0">
8584 <source-position filename="../src/hb-map.h" line="67"/>
8585 <return-value transfer-ownership="none" nullable="1">
8586 <type name="gpointer" c:type="void*"/>
8587 </return-value>
8588 <parameters>
8589 <parameter name="map" transfer-ownership="none">
8590 <doc xml:space="preserve"
8591 filename="../src/hb-map.cc"
8592 line="129">a map.</doc>
8593 <type name="map_t" c:type="hb_map_t*"/>
8594 </parameter>
8595 <parameter name="key" transfer-ownership="none">
8596 <type name="user_data_key_t" c:type="hb_user_data_key_t*"/>
8597 </parameter>
8598 </parameters>
8599 </function>
8600 <function name="map_has" c:identifier="hb_map_has" version="1.7.7">
8601 <source-position filename="../src/hb-map.h" line="98"/>
8602 <return-value transfer-ownership="none">
8603 <type name="bool_t" c:type="hb_bool_t"/>
8604 </return-value>
8605 <parameters>
8606 <parameter name="map" transfer-ownership="none">
8607 <doc xml:space="preserve"
8608 filename="../src/hb-map.cc"
8609 line="213">a map.</doc>
8610 <type name="map_t" c:type="const hb_map_t*"/>
8611 </parameter>
8612 <parameter name="key" transfer-ownership="none">
8613 <type name="codepoint_t" c:type="hb_codepoint_t"/>
8614 </parameter>
8615 </parameters>
8616 </function>
8617 <function name="map_is_empty"
8618 c:identifier="hb_map_is_empty"
8619 version="1.7.7">
8620 <source-position filename="../src/hb-map.h" line="79"/>
8621 <return-value transfer-ownership="none">
8622 <type name="bool_t" c:type="hb_bool_t"/>
8623 </return-value>
8624 <parameters>
8625 <parameter name="map" transfer-ownership="none">
8626 <doc xml:space="preserve"
8627 filename="../src/hb-map.cc"
8628 line="244">a map.</doc>
8629 <type name="map_t" c:type="const hb_map_t*"/>
8630 </parameter>
8631 </parameters>
8632 </function>
8633 <function name="map_reference"
8634 c:identifier="hb_map_reference"
8635 version="1.7.7"
8636 introspectable="0">
8637 <source-position filename="../src/hb-map.h" line="54"/>
8638 <return-value transfer-ownership="full">
8639 <type name="map_t" c:type="hb_map_t*"/>
8640 </return-value>
8641 <parameters>
8642 <parameter name="map" transfer-ownership="none">
8643 <doc xml:space="preserve"
8644 filename="../src/hb-map.cc"
8645 line="77">a map.</doc>
8646 <type name="map_t" c:type="hb_map_t*"/>
8647 </parameter>
8648 </parameters>
8649 </function>
8650 <function name="map_set" c:identifier="hb_map_set" version="1.7.7">
8651 <source-position filename="../src/hb-map.h" line="85"/>
8652 <return-value transfer-ownership="none">
8653 <type name="none" c:type="void"/>
8654 </return-value>
8655 <parameters>
8656 <parameter name="map" transfer-ownership="none">
8657 <doc xml:space="preserve"
8658 filename="../src/hb-map.cc"
8659 line="163">a map.</doc>
8660 <type name="map_t" c:type="hb_map_t*"/>
8661 </parameter>
8662 <parameter name="key" transfer-ownership="none">
8663 <type name="codepoint_t" c:type="hb_codepoint_t"/>
8664 </parameter>
8665 <parameter name="value" transfer-ownership="none">
8666 <type name="codepoint_t" c:type="hb_codepoint_t"/>
8667 </parameter>
8668 </parameters>
8669 </function>
8670 <function name="map_set_user_data"
8671 c:identifier="hb_map_set_user_data"
8672 version="1.7.7"
8673 introspectable="0">
8674 <source-position filename="../src/hb-map.h" line="60"/>
8675 <return-value transfer-ownership="none">
8676 <type name="bool_t" c:type="hb_bool_t"/>
8677 </return-value>
8678 <parameters>
8679 <parameter name="map" transfer-ownership="none">
8680 <doc xml:space="preserve"
8681 filename="../src/hb-map.cc"
8682 line="107">a map.</doc>
8683 <type name="map_t" c:type="hb_map_t*"/>
8684 </parameter>
8685 <parameter name="key" transfer-ownership="none">
8686 <type name="user_data_key_t" c:type="hb_user_data_key_t*"/>
8687 </parameter>
8688 <parameter name="data"
8689 transfer-ownership="none"
8690 nullable="1"
8691 allow-none="1">
8692 <type name="gpointer" c:type="void*"/>
8693 </parameter>
8694 <parameter name="destroy" transfer-ownership="none">
8695 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
8696 </parameter>
8697 <parameter name="replace" transfer-ownership="none">
8698 <type name="bool_t" c:type="hb_bool_t"/>
8699 </parameter>
8700 </parameters>
8701 </function>
8702 <record name="map_t"
8703 c:type="hb_map_t"
8704 glib:type-name="hb_map_t"
8705 glib:get-type="hb_gobject_map_get_type"
8706 c:symbol-prefix="gobject_map">
8707 <source-position filename="../src/hb-map.h" line="44"/>
8708 </record>
8709 <enumeration name="memory_mode_t"
8710 glib:type-name="hb_memory_mode_t"
8711 glib:get-type="hb_gobject_memory_mode_get_type"
8712 c:type="hb_memory_mode_t">
8713 <member name="duplicate"
8714 value="0"
8715 c:identifier="HB_MEMORY_MODE_DUPLICATE"
8716 glib:nick="duplicate">
8717 </member>
8718 <member name="readonly"
8719 value="1"
8720 c:identifier="HB_MEMORY_MODE_READONLY"
8721 glib:nick="readonly">
8722 </member>
8723 <member name="writable"
8724 value="2"
8725 c:identifier="HB_MEMORY_MODE_WRITABLE"
8726 glib:nick="writable">
8727 </member>
8728 <member name="readonly_may_make_writable"
8729 value="3"
8730 c:identifier="HB_MEMORY_MODE_READONLY_MAY_MAKE_WRITABLE"
8731 glib:nick="readonly-may-make-writable">
8732 </member>
8733 </enumeration>
8734 <function name="ot_color_glyph_get_layers"
8735 c:identifier="hb_ot_color_glyph_get_layers"
8736 version="2.1.0">
8737 <doc xml:space="preserve"
8738 filename="../src/hb-ot-color.cc"
8739 line="208">Fetches a list of all color layers for the specified glyph index in the specified
8740 face. The list returned will begin at the offset provided.</doc>
8741 <source-position filename="../src/hb-ot-color.h" line="110"/>
8742 <return-value transfer-ownership="none">
8743 <doc xml:space="preserve"
8744 filename="../src/hb-ot-color.cc"
8745 line="220">Total number of layers available for the glyph index queried</doc>
8746 <type name="guint" c:type="unsigned int"/>
8747 </return-value>
8748 <parameters>
8749 <parameter name="face" transfer-ownership="none">
8750 <doc xml:space="preserve"
8751 filename="../src/hb-ot-color.cc"
8752 line="210">#hb_face_t to work upon</doc>
8753 <type name="face_t" c:type="hb_face_t*"/>
8754 </parameter>
8755 <parameter name="glyph" transfer-ownership="none">
8756 <doc xml:space="preserve"
8757 filename="../src/hb-ot-color.cc"
8758 line="211">The glyph index to query</doc>
8759 <type name="codepoint_t" c:type="hb_codepoint_t"/>
8760 </parameter>
8761 <parameter name="start_offset" transfer-ownership="none">
8762 <doc xml:space="preserve"
8763 filename="../src/hb-ot-color.cc"
8764 line="212">offset of the first layer to retrieve</doc>
8765 <type name="guint" c:type="unsigned int"/>
8766 </parameter>
8767 <parameter name="layer_count"
8768 direction="out"
8769 caller-allocates="0"
8770 transfer-ownership="full"
8771 optional="1"
8772 allow-none="1">
8773 <doc xml:space="preserve"
8774 filename="../src/hb-ot-color.cc"
8775 line="213">Input = the maximum number of layers to return;
8776 Output = the actual number of layers returned (may be zero)</doc>
8777 <type name="guint" c:type="unsigned int*"/>
8778 </parameter>
8779 <parameter name="layers"
8780 direction="out"
8781 caller-allocates="1"
8782 transfer-ownership="none"
8783 nullable="1">
8784 <doc xml:space="preserve"
8785 filename="../src/hb-ot-color.cc"
8786 line="215">The array of layers found</doc>
8787 <array length="3" zero-terminated="0" c:type="hb_ot_color_layer_t*">
8788 <type name="ot_color_layer_t" c:type="hb_ot_color_layer_t"/>
8789 </array>
8790 </parameter>
8791 </parameters>
8792 </function>
8793 <function name="ot_color_glyph_reference_png"
8794 c:identifier="hb_ot_color_glyph_reference_png"
8795 version="2.1.0">
8796 <doc xml:space="preserve"
8797 filename="../src/hb-ot-color.cc"
8798 line="293">Fetches the PNG image for a glyph. This function takes a font object, not a face object,
8799 as input. To get an optimally sized PNG blob, the UPEM value must be set on the @font
8800 object. If UPEM is unset, the blob returned will be the largest PNG available.</doc>
8801 <source-position filename="../src/hb-ot-color.h" line="134"/>
8802 <return-value transfer-ownership="full">
8803 <doc xml:space="preserve"
8804 filename="../src/hb-ot-color.cc"
8805 line="302">An #hb_blob_t containing the PNG image for the glyph, if available</doc>
8806 <type name="blob_t" c:type="hb_blob_t*"/>
8807 </return-value>
8808 <parameters>
8809 <parameter name="font" transfer-ownership="none">
8810 <doc xml:space="preserve"
8811 filename="../src/hb-ot-color.cc"
8812 line="295">#hb_font_t to work upon</doc>
8813 <type name="font_t" c:type="hb_font_t*"/>
8814 </parameter>
8815 <parameter name="glyph" transfer-ownership="none">
8816 <doc xml:space="preserve"
8817 filename="../src/hb-ot-color.cc"
8818 line="296">a glyph index</doc>
8819 <type name="codepoint_t" c:type="hb_codepoint_t"/>
8820 </parameter>
8821 </parameters>
8822 </function>
8823 <function name="ot_color_glyph_reference_svg"
8824 c:identifier="hb_ot_color_glyph_reference_svg"
8825 version="2.1.0">
8826 <doc xml:space="preserve"
8827 filename="../src/hb-ot-color.cc"
8828 line="255">Fetches the SVG document for a glyph. The blob may be either plain text or gzip-encoded.</doc>
8829 <source-position filename="../src/hb-ot-color.h" line="124"/>
8830 <return-value transfer-ownership="full">
8831 <doc xml:space="preserve"
8832 filename="../src/hb-ot-color.cc"
8833 line="262">An #hb_blob_t containing the SVG document of the glyph, if available</doc>
8834 <type name="blob_t" c:type="hb_blob_t*"/>
8835 </return-value>
8836 <parameters>
8837 <parameter name="face" transfer-ownership="none">
8838 <doc xml:space="preserve"
8839 filename="../src/hb-ot-color.cc"
8840 line="257">#hb_face_t to work upon</doc>
8841 <type name="face_t" c:type="hb_face_t*"/>
8842 </parameter>
8843 <parameter name="glyph" transfer-ownership="none">
8844 <doc xml:space="preserve"
8845 filename="../src/hb-ot-color.cc"
8846 line="258">a svg glyph index</doc>
8847 <type name="codepoint_t" c:type="hb_codepoint_t"/>
8848 </parameter>
8849 </parameters>
8850 </function>
8851 <function name="ot_color_has_layers"
8852 c:identifier="hb_ot_color_has_layers"
8853 version="2.1.0">
8854 <doc xml:space="preserve"
8855 filename="../src/hb-ot-color.cc"
8856 line="192">Tests whether a face includes any `COLR` color layers.</doc>
8857 <source-position filename="../src/hb-ot-color.h" line="94"/>
8858 <return-value transfer-ownership="none">
8859 <doc xml:space="preserve"
8860 filename="../src/hb-ot-color.cc"
8861 line="198">true if data found, false otherwise</doc>
8862 <type name="bool_t" c:type="hb_bool_t"/>
8863 </return-value>
8864 <parameters>
8865 <parameter name="face" transfer-ownership="none">
8866 <doc xml:space="preserve"
8867 filename="../src/hb-ot-color.cc"
8868 line="194">#hb_face_t to work upon</doc>
8869 <type name="face_t" c:type="hb_face_t*"/>
8870 </parameter>
8871 </parameters>
8872 </function>
8873 <function name="ot_color_has_palettes"
8874 c:identifier="hb_ot_color_has_palettes"
8875 version="2.1.0">
8876 <doc xml:space="preserve"
8877 filename="../src/hb-ot-color.cc"
8878 line="61">Tests whether a face includes a `CPAL` color-palette table.</doc>
8879 <source-position filename="../src/hb-ot-color.h" line="47"/>
8880 <return-value transfer-ownership="none">
8881 <doc xml:space="preserve"
8882 filename="../src/hb-ot-color.cc"
8883 line="67">true if data found, false otherwise</doc>
8884 <type name="bool_t" c:type="hb_bool_t"/>
8885 </return-value>
8886 <parameters>
8887 <parameter name="face" transfer-ownership="none">
8888 <doc xml:space="preserve"
8889 filename="../src/hb-ot-color.cc"
8890 line="63">#hb_face_t to work upon</doc>
8891 <type name="face_t" c:type="hb_face_t*"/>
8892 </parameter>
8893 </parameters>
8894 </function>
8895 <function name="ot_color_has_png"
8896 c:identifier="hb_ot_color_has_png"
8897 version="2.1.0">
8898 <doc xml:space="preserve"
8899 filename="../src/hb-ot-color.cc"
8900 line="277">Tests whether a face has PNG glyph images (either in `CBDT` or `sbix` tables).</doc>
8901 <source-position filename="../src/hb-ot-color.h" line="131"/>
8902 <return-value transfer-ownership="none">
8903 <doc xml:space="preserve"
8904 filename="../src/hb-ot-color.cc"
8905 line="283">true if data found, false otherwise</doc>
8906 <type name="bool_t" c:type="hb_bool_t"/>
8907 </return-value>
8908 <parameters>
8909 <parameter name="face" transfer-ownership="none">
8910 <doc xml:space="preserve"
8911 filename="../src/hb-ot-color.cc"
8912 line="279">#hb_face_t to work upon</doc>
8913 <type name="face_t" c:type="hb_face_t*"/>
8914 </parameter>
8915 </parameters>
8916 </function>
8917 <function name="ot_color_has_svg"
8918 c:identifier="hb_ot_color_has_svg"
8919 version="2.1.0">
8920 <doc xml:space="preserve"
8921 filename="../src/hb-ot-color.cc"
8922 line="239">Tests whether a face includes any `SVG` glyph images.</doc>
8923 <source-position filename="../src/hb-ot-color.h" line="121"/>
8924 <return-value transfer-ownership="none">
8925 <doc xml:space="preserve"
8926 filename="../src/hb-ot-color.cc"
8927 line="245">true if data found, false otherwise.</doc>
8928 <type name="bool_t" c:type="hb_bool_t"/>
8929 </return-value>
8930 <parameters>
8931 <parameter name="face" transfer-ownership="none">
8932 <doc xml:space="preserve"
8933 filename="../src/hb-ot-color.cc"
8934 line="241">#hb_face_t to work upon.</doc>
8935 <type name="face_t" c:type="hb_face_t*"/>
8936 </parameter>
8937 </parameters>
8938 </function>
8939 <record name="ot_color_layer_t"
8940 c:type="hb_ot_color_layer_t"
8941 version="2.1.0">
8942 <doc xml:space="preserve"
8943 filename="../src/hb-ot-color.h"
8944 line="96">Pairs of glyph and color index.</doc>
8945 <source-position filename="../src/hb-ot-color.h" line="107"/>
8946 <field name="glyph" writable="1">
8947 <type name="codepoint_t" c:type="hb_codepoint_t"/>
8948 </field>
8949 <field name="color_index" writable="1">
8950 <type name="guint" c:type="unsigned int"/>
8951 </field>
8952 </record>
8953 <function name="ot_color_palette_color_get_name_id"
8954 c:identifier="hb_ot_color_palette_color_get_name_id"
8955 version="2.1.0">
8956 <doc xml:space="preserve"
8957 filename="../src/hb-ot-color.cc"
8958 line="116">Fetches the `name` table Name ID that provides display names for
8959 the specificed color in a face's `CPAL` color palette.
8960
8961 Display names can be generic (e.g., "Background") or specific
8962 (e.g., "Eye color").</doc>
8963 <source-position filename="../src/hb-ot-color.h" line="57"/>
8964 <return-value transfer-ownership="none">
8965 <doc xml:space="preserve"
8966 filename="../src/hb-ot-color.cc"
8967 line="127">the Name ID found for the color.</doc>
8968 <type name="ot_name_id_t" c:type="hb_ot_name_id_t"/>
8969 </return-value>
8970 <parameters>
8971 <parameter name="face" transfer-ownership="none">
8972 <doc xml:space="preserve"
8973 filename="../src/hb-ot-color.cc"
8974 line="118">#hb_face_t to work upon</doc>
8975 <type name="face_t" c:type="hb_face_t*"/>
8976 </parameter>
8977 <parameter name="color_index" transfer-ownership="none">
8978 <doc xml:space="preserve"
8979 filename="../src/hb-ot-color.cc"
8980 line="119">The index of the color</doc>
8981 <type name="guint" c:type="unsigned int"/>
8982 </parameter>
8983 </parameters>
8984 </function>
8985 <bitfield name="ot_color_palette_flags_t"
8986 version="2.1.0"
8987 glib:type-name="hb_ot_color_palette_flags_t"
8988 glib:get-type="hb_gobject_ot_color_palette_flags_get_type"
8989 c:type="hb_ot_color_palette_flags_t">
8990 <member name="default"
8991 value="0"
8992 c:identifier="HB_OT_COLOR_PALETTE_FLAG_DEFAULT"
8993 glib:nick="default">
8994 <doc xml:space="preserve"
8995 filename="../src/hb-ot-color.h"
8996 line="62">Default indicating that there is nothing special
8997 to note about a color palette.</doc>
8998 </member>
8999 <member name="usable_with_light_background"
9000 value="1"
9001 c:identifier="HB_OT_COLOR_PALETTE_FLAG_USABLE_WITH_LIGHT_BACKGROUND"
9002 glib:nick="usable-with-light-background">
9003 <doc xml:space="preserve"
9004 filename="../src/hb-ot-color.h"
9005 line="64">Flag indicating that the color
9006 palette is appropriate to use when displaying the font on a light background such as white.</doc>
9007 </member>
9008 <member name="usable_with_dark_background"
9009 value="2"
9010 c:identifier="HB_OT_COLOR_PALETTE_FLAG_USABLE_WITH_DARK_BACKGROUND"
9011 glib:nick="usable-with-dark-background">
9012 <doc xml:space="preserve"
9013 filename="../src/hb-ot-color.h"
9014 line="66">Flag indicating that the color
9015 palette is appropriate to use when displaying the font on a dark background such as black.</doc>
9016 </member>
9017 </bitfield>
9018 <function name="ot_color_palette_get_colors"
9019 c:identifier="hb_ot_color_palette_get_colors"
9020 version="2.1.0">
9021 <doc xml:space="preserve"
9022 filename="../src/hb-ot-color.cc"
9023 line="156">Fetches a list of the colors in a color palette.
9024
9025 After calling this function, @colors will be filled with the palette
9026 colors. If @colors is NULL, the function will just return the number
9027 of total colors without storing any actual colors; this can be used
9028 for allocating a buffer of suitable size before calling
9029 hb_ot_color_palette_get_colors() a second time.</doc>
9030 <source-position filename="../src/hb-ot-color.h" line="82"/>
9031 <return-value transfer-ownership="none">
9032 <doc xml:space="preserve"
9033 filename="../src/hb-ot-color.cc"
9034 line="173">the total number of colors in the palette</doc>
9035 <type name="guint" c:type="unsigned int"/>
9036 </return-value>
9037 <parameters>
9038 <parameter name="face" transfer-ownership="none">
9039 <doc xml:space="preserve"
9040 filename="../src/hb-ot-color.cc"
9041 line="158">#hb_face_t to work upon</doc>
9042 <type name="face_t" c:type="hb_face_t*"/>
9043 </parameter>
9044 <parameter name="palette_index" transfer-ownership="none">
9045 <doc xml:space="preserve"
9046 filename="../src/hb-ot-color.cc"
9047 line="159">the index of the color palette to query</doc>
9048 <type name="guint" c:type="unsigned int"/>
9049 </parameter>
9050 <parameter name="start_offset" transfer-ownership="none">
9051 <doc xml:space="preserve"
9052 filename="../src/hb-ot-color.cc"
9053 line="160">offset of the first color to retrieve</doc>
9054 <type name="guint" c:type="unsigned int"/>
9055 </parameter>
9056 <parameter name="color_count"
9057 direction="out"
9058 caller-allocates="0"
9059 transfer-ownership="full"
9060 optional="1"
9061 allow-none="1">
9062 <doc xml:space="preserve"
9063 filename="../src/hb-ot-color.cc"
9064 line="161">Input = the maximum number of colors to return;
9065 Output = the actual number of colors returned (may be zero)</doc>
9066 <type name="guint" c:type="unsigned int*"/>
9067 </parameter>
9068 <parameter name="colors"
9069 direction="out"
9070 caller-allocates="0"
9071 transfer-ownership="full"
9072 nullable="1">
9073 <doc xml:space="preserve"
9074 filename="../src/hb-ot-color.cc"
9075 line="163">The array of #hb_color_t records found</doc>
9076 <array length="3" zero-terminated="0" c:type="hb_color_t*">
9077 <type name="color_t" c:type="hb_color_t"/>
9078 </array>
9079 </parameter>
9080 </parameters>
9081 </function>
9082 <function name="ot_color_palette_get_count"
9083 c:identifier="hb_ot_color_palette_get_count"
9084 version="2.1.0">
9085 <doc xml:space="preserve"
9086 filename="../src/hb-ot-color.cc"
9087 line="77">Fetches the number of color palettes in a face.</doc>
9088 <source-position filename="../src/hb-ot-color.h" line="50"/>
9089 <return-value transfer-ownership="none">
9090 <doc xml:space="preserve"
9091 filename="../src/hb-ot-color.cc"
9092 line="83">the number of palettes found</doc>
9093 <type name="guint" c:type="unsigned int"/>
9094 </return-value>
9095 <parameters>
9096 <parameter name="face" transfer-ownership="none">
9097 <doc xml:space="preserve"
9098 filename="../src/hb-ot-color.cc"
9099 line="79">#hb_face_t to work upon</doc>
9100 <type name="face_t" c:type="hb_face_t*"/>
9101 </parameter>
9102 </parameters>
9103 </function>
9104 <function name="ot_color_palette_get_flags"
9105 c:identifier="hb_ot_color_palette_get_flags"
9106 version="2.1.0">
9107 <doc xml:space="preserve"
9108 filename="../src/hb-ot-color.cc"
9109 line="138">Fetches the flags defined for a color palette.</doc>
9110 <source-position filename="../src/hb-ot-color.h" line="78"/>
9111 <return-value transfer-ownership="none">
9112 <doc xml:space="preserve"
9113 filename="../src/hb-ot-color.cc"
9114 line="145">the #hb_ot_color_palette_flags_t of the requested color palette</doc>
9115 <type name="ot_color_palette_flags_t"
9116 c:type="hb_ot_color_palette_flags_t"/>
9117 </return-value>
9118 <parameters>
9119 <parameter name="face" transfer-ownership="none">
9120 <doc xml:space="preserve"
9121 filename="../src/hb-ot-color.cc"
9122 line="140">#hb_face_t to work upon</doc>
9123 <type name="face_t" c:type="hb_face_t*"/>
9124 </parameter>
9125 <parameter name="palette_index" transfer-ownership="none">
9126 <doc xml:space="preserve"
9127 filename="../src/hb-ot-color.cc"
9128 line="141">The index of the color palette</doc>
9129 <type name="guint" c:type="unsigned int"/>
9130 </parameter>
9131 </parameters>
9132 </function>
9133 <function name="ot_color_palette_get_name_id"
9134 c:identifier="hb_ot_color_palette_get_name_id"
9135 version="2.1.0">
9136 <doc xml:space="preserve"
9137 filename="../src/hb-ot-color.cc"
9138 line="93">Fetches the `name` table Name ID that provides display names for
9139 a `CPAL` color palette.
9140
9141 Palette display names can be generic (e.g., "Default") or provide
9142 specific, themed names (e.g., "Spring", "Summer", "Fall", and "Winter").</doc>
9143 <source-position filename="../src/hb-ot-color.h" line="53"/>
9144 <return-value transfer-ownership="none">
9145 <doc xml:space="preserve"
9146 filename="../src/hb-ot-color.cc"
9147 line="104">the Named ID found for the palette.
9148 If the requested palette has no name the result is #HB_OT_NAME_ID_INVALID.</doc>
9149 <type name="ot_name_id_t" c:type="hb_ot_name_id_t"/>
9150 </return-value>
9151 <parameters>
9152 <parameter name="face" transfer-ownership="none">
9153 <doc xml:space="preserve"
9154 filename="../src/hb-ot-color.cc"
9155 line="95">#hb_face_t to work upon</doc>
9156 <type name="face_t" c:type="hb_face_t*"/>
9157 </parameter>
9158 <parameter name="palette_index" transfer-ownership="none">
9159 <doc xml:space="preserve"
9160 filename="../src/hb-ot-color.cc"
9161 line="96">The index of the color palette</doc>
9162 <type name="guint" c:type="unsigned int"/>
9163 </parameter>
9164 </parameters>
9165 </function>
9166 <function name="ot_font_set_funcs"
9167 c:identifier="hb_ot_font_set_funcs"
9168 version="0.9.28">
9169 <source-position filename="../src/hb-ot-font.h" line="40"/>
9170 <return-value transfer-ownership="none">
9171 <type name="none" c:type="void"/>
9172 </return-value>
9173 <parameters>
9174 <parameter name="font" transfer-ownership="none">
9175 <type name="font_t" c:type="hb_font_t*"/>
9176 </parameter>
9177 </parameters>
9178 </function>
9179 <enumeration name="ot_layout_baseline_tag_t"
9180 version="2.6.0"
9181 glib:type-name="hb_ot_layout_baseline_tag_t"
9182 glib:get-type="hb_gobject_ot_layout_baseline_tag_get_type"
9183 c:type="hb_ot_layout_baseline_tag_t">
9184 <doc xml:space="preserve"
9185 filename="../src/hb-ot-layout.h"
9186 line="416">Baseline tags from https://docs.microsoft.com/en-us/typography/opentype/spec/baselinetags</doc>
9187 <member name="roman"
9188 value="1919905134"
9189 c:identifier="HB_OT_LAYOUT_BASELINE_TAG_ROMAN"
9190 glib:nick="roman">
9191 <doc xml:space="preserve"
9192 filename="../src/hb-ot-layout.h"
9193 line="418">The baseline used by alphabetic scripts such as Latin, Cyrillic and Greek.
9194 In vertical writing mode, the alphabetic baseline for characters rotated 90 degrees clockwise.
9195 (This would not apply to alphabetic characters that remain upright in vertical writing mode, since these
9196 characters are not rotated.)</doc>
9197 </member>
9198 <member name="hanging"
9199 value="1751215719"
9200 c:identifier="HB_OT_LAYOUT_BASELINE_TAG_HANGING"
9201 glib:nick="hanging">
9202 <doc xml:space="preserve"
9203 filename="../src/hb-ot-layout.h"
9204 line="422">The hanging baseline. In horizontal direction, this is the horizontal
9205 line from which syllables seem, to hang in Tibetan and other similar scripts. In vertical writing mode,
9206 for Tibetan (or some other similar script) characters rotated 90 degrees clockwise.</doc>
9207 </member>
9208 <member name="ideo_face_bottom_or_left"
9209 value="1768121954"
9210 c:identifier="HB_OT_LAYOUT_BASELINE_TAG_IDEO_FACE_BOTTOM_OR_LEFT"
9211 glib:nick="ideo-face-bottom-or-left">
9212 <doc xml:space="preserve"
9213 filename="../src/hb-ot-layout.h"
9214 line="425">Ideographic character face bottom or left edge,
9215 if the direction is horizontal or vertical, respectively.</doc>
9216 </member>
9217 <member name="ideo_face_top_or_right"
9218 value="1768121972"
9219 c:identifier="HB_OT_LAYOUT_BASELINE_TAG_IDEO_FACE_TOP_OR_RIGHT"
9220 glib:nick="ideo-face-top-or-right">
9221 <doc xml:space="preserve"
9222 filename="../src/hb-ot-layout.h"
9223 line="427">Ideographic character face top or right edge,
9224 if the direction is horizontal or vertical, respectively.</doc>
9225 </member>
9226 <member name="ideo_embox_bottom_or_left"
9227 value="1768187247"
9228 c:identifier="HB_OT_LAYOUT_BASELINE_TAG_IDEO_EMBOX_BOTTOM_OR_LEFT"
9229 glib:nick="ideo-embox-bottom-or-left">
9230 <doc xml:space="preserve"
9231 filename="../src/hb-ot-layout.h"
9232 line="429">Ideographic em-box bottom or left edge,
9233 if the direction is horizontal or vertical, respectively.</doc>
9234 </member>
9235 <member name="ideo_embox_top_or_right"
9236 value="1768191088"
9237 c:identifier="HB_OT_LAYOUT_BASELINE_TAG_IDEO_EMBOX_TOP_OR_RIGHT"
9238 glib:nick="ideo-embox-top-or-right">
9239 <doc xml:space="preserve"
9240 filename="../src/hb-ot-layout.h"
9241 line="431">Ideographic em-box top or right edge baseline,
9242 if the direction is horizontal or vertical, respectively.</doc>
9243 </member>
9244 <member name="math"
9245 value="1835103336"
9246 c:identifier="HB_OT_LAYOUT_BASELINE_TAG_MATH"
9247 glib:nick="math">
9248 <doc xml:space="preserve"
9249 filename="../src/hb-ot-layout.h"
9250 line="433">The baseline about which mathematical characters are centered.
9251 In vertical writing mode when mathematical characters rotated 90 degrees clockwise, are centered.</doc>
9252 </member>
9253 </enumeration>
9254 <function name="ot_layout_collect_features"
9255 c:identifier="hb_ot_layout_collect_features"
9256 version="1.8.5">
9257 <doc xml:space="preserve"
9258 filename="../src/hb-ot-layout.cc"
9259 line="1101">Fetches a list of all feature indexes in the specified face's GSUB table
9260 or GPOS table, underneath the specified scripts, languages, and features.
9261 If no list of scripts is provided, all scripts will be queried. If no list
9262 of languages is provided, all languages will be queried. If no list of
9263 features is provided, all features will be queried.</doc>
9264 <source-position filename="../src/hb-ot-layout.h" line="250"/>
9265 <return-value transfer-ownership="none">
9266 <type name="none" c:type="void"/>
9267 </return-value>
9268 <parameters>
9269 <parameter name="face" transfer-ownership="none">
9270 <doc xml:space="preserve"
9271 filename="../src/hb-ot-layout.cc"
9272 line="1103">#hb_face_t to work upon</doc>
9273 <type name="face_t" c:type="hb_face_t*"/>
9274 </parameter>
9275 <parameter name="table_tag" transfer-ownership="none">
9276 <doc xml:space="preserve"
9277 filename="../src/hb-ot-layout.cc"
9278 line="1104">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc>
9279 <type name="tag_t" c:type="hb_tag_t"/>
9280 </parameter>
9281 <parameter name="scripts" transfer-ownership="none">
9282 <doc xml:space="preserve"
9283 filename="../src/hb-ot-layout.cc"
9284 line="1105">The array of scripts to collect features for</doc>
9285 <type name="tag_t" c:type="const hb_tag_t*"/>
9286 </parameter>
9287 <parameter name="languages" transfer-ownership="none">
9288 <doc xml:space="preserve"
9289 filename="../src/hb-ot-layout.cc"
9290 line="1106">The array of languages to collect features for</doc>
9291 <type name="tag_t" c:type="const hb_tag_t*"/>
9292 </parameter>
9293 <parameter name="features" transfer-ownership="none">
9294 <doc xml:space="preserve"
9295 filename="../src/hb-ot-layout.cc"
9296 line="1107">The array of features to collect</doc>
9297 <type name="tag_t" c:type="const hb_tag_t*"/>
9298 </parameter>
9299 <parameter name="feature_indexes"
9300 direction="out"
9301 caller-allocates="1"
9302 transfer-ownership="none">
9303 <doc xml:space="preserve"
9304 filename="../src/hb-ot-layout.cc"
9305 line="1108">The array of feature indexes found for the query</doc>
9306 <type name="set_t" c:type="hb_set_t*"/>
9307 </parameter>
9308 </parameters>
9309 </function>
9310 <function name="ot_layout_collect_lookups"
9311 c:identifier="hb_ot_layout_collect_lookups"
9312 version="0.9.8">
9313 <doc xml:space="preserve"
9314 filename="../src/hb-ot-layout.cc"
9315 line="1152">Fetches a list of all feature-lookup indexes in the specified face's GSUB
9316 table or GPOS table, underneath the specified scripts, languages, and
9317 features. If no list of scripts is provided, all scripts will be queried.
9318 If no list of languages is provided, all languages will be queried. If no
9319 list of features is provided, all features will be queried.</doc>
9320 <source-position filename="../src/hb-ot-layout.h" line="258"/>
9321 <return-value transfer-ownership="none">
9322 <type name="none" c:type="void"/>
9323 </return-value>
9324 <parameters>
9325 <parameter name="face" transfer-ownership="none">
9326 <doc xml:space="preserve"
9327 filename="../src/hb-ot-layout.cc"
9328 line="1154">#hb_face_t to work upon</doc>
9329 <type name="face_t" c:type="hb_face_t*"/>
9330 </parameter>
9331 <parameter name="table_tag" transfer-ownership="none">
9332 <doc xml:space="preserve"
9333 filename="../src/hb-ot-layout.cc"
9334 line="1155">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc>
9335 <type name="tag_t" c:type="hb_tag_t"/>
9336 </parameter>
9337 <parameter name="scripts" transfer-ownership="none">
9338 <doc xml:space="preserve"
9339 filename="../src/hb-ot-layout.cc"
9340 line="1156">The array of scripts to collect lookups for</doc>
9341 <type name="tag_t" c:type="const hb_tag_t*"/>
9342 </parameter>
9343 <parameter name="languages" transfer-ownership="none">
9344 <doc xml:space="preserve"
9345 filename="../src/hb-ot-layout.cc"
9346 line="1157">The array of languages to collect lookups for</doc>
9347 <type name="tag_t" c:type="const hb_tag_t*"/>
9348 </parameter>
9349 <parameter name="features" transfer-ownership="none">
9350 <doc xml:space="preserve"
9351 filename="../src/hb-ot-layout.cc"
9352 line="1158">The array of features to collect lookups for</doc>
9353 <type name="tag_t" c:type="const hb_tag_t*"/>
9354 </parameter>
9355 <parameter name="lookup_indexes"
9356 direction="out"
9357 caller-allocates="1"
9358 transfer-ownership="none">
9359 <doc xml:space="preserve"
9360 filename="../src/hb-ot-layout.cc"
9361 line="1159">The array of lookup indexes found for the query</doc>
9362 <type name="set_t" c:type="hb_set_t*"/>
9363 </parameter>
9364 </parameters>
9365 </function>
9366 <function name="ot_layout_feature_get_characters"
9367 c:identifier="hb_ot_layout_feature_get_characters"
9368 version="2.0.0">
9369 <doc xml:space="preserve"
9370 filename="../src/hb-ot-layout.cc"
9371 line="1682">Fetches a list of the characters defined as having a variant under the specified
9372 "Character Variant" ("cvXX") feature tag.</doc>
9373 <source-position filename="../src/hb-ot-layout.h" line="405"/>
9374 <return-value transfer-ownership="none">
9375 <doc xml:space="preserve"
9376 filename="../src/hb-ot-layout.cc"
9377 line="1697">Number of total sample characters in the cvXX feature.</doc>
9378 <type name="guint" c:type="unsigned int"/>
9379 </return-value>
9380 <parameters>
9381 <parameter name="face" transfer-ownership="none">
9382 <doc xml:space="preserve"
9383 filename="../src/hb-ot-layout.cc"
9384 line="1684">#hb_face_t to work upon</doc>
9385 <type name="face_t" c:type="hb_face_t*"/>
9386 </parameter>
9387 <parameter name="table_tag" transfer-ownership="none">
9388 <doc xml:space="preserve"
9389 filename="../src/hb-ot-layout.cc"
9390 line="1685">table tag to query, "GSUB" or "GPOS".</doc>
9391 <type name="tag_t" c:type="hb_tag_t"/>
9392 </parameter>
9393 <parameter name="feature_index" transfer-ownership="none">
9394 <doc xml:space="preserve"
9395 filename="../src/hb-ot-layout.cc"
9396 line="1686">index of feature to query.</doc>
9397 <type name="guint" c:type="unsigned int"/>
9398 </parameter>
9399 <parameter name="start_offset" transfer-ownership="none">
9400 <doc xml:space="preserve"
9401 filename="../src/hb-ot-layout.cc"
9402 line="1687">offset of the first character to retrieve</doc>
9403 <type name="guint" c:type="unsigned int"/>
9404 </parameter>
9405 <parameter name="char_count"
9406 direction="out"
9407 caller-allocates="0"
9408 transfer-ownership="full"
9409 nullable="1">
9410 <doc xml:space="preserve"
9411 filename="../src/hb-ot-layout.cc"
9412 line="1688">Input = the maximum number of characters to return;
9413 Output = the actual number of characters returned (may be zero)</doc>
9414 <type name="guint" c:type="unsigned int*"/>
9415 </parameter>
9416 <parameter name="characters"
9417 direction="out"
9418 caller-allocates="1"
9419 transfer-ownership="none">
9420 <doc xml:space="preserve"
9421 filename="../src/hb-ot-layout.cc"
9422 line="1690">A buffer pointer.
9423 The Unicode codepoints of the characters for which this feature provides
9424 glyph variants.</doc>
9425 <array length="4" zero-terminated="0" c:type="hb_codepoint_t*">
9426 <type name="codepoint_t" c:type="hb_codepoint_t"/>
9427 </array>
9428 </parameter>
9429 </parameters>
9430 </function>
9431 <function name="ot_layout_feature_get_lookups"
9432 c:identifier="hb_ot_layout_feature_get_lookups"
9433 version="0.9.7">
9434 <doc xml:space="preserve"
9435 filename="../src/hb-ot-layout.cc"
9436 line="910">Fetches a list of all lookups enumerated for the specified feature, in
9437 the specified face's GSUB table or GPOS table. The list returned will
9438 begin at the offset provided.</doc>
9439 <source-position filename="../src/hb-ot-layout.h" line="238"/>
9440 <return-value transfer-ownership="none">
9441 <type name="guint" c:type="unsigned int"/>
9442 </return-value>
9443 <parameters>
9444 <parameter name="face" transfer-ownership="none">
9445 <doc xml:space="preserve"
9446 filename="../src/hb-ot-layout.cc"
9447 line="912">#hb_face_t to work upon</doc>
9448 <type name="face_t" c:type="hb_face_t*"/>
9449 </parameter>
9450 <parameter name="table_tag" transfer-ownership="none">
9451 <doc xml:space="preserve"
9452 filename="../src/hb-ot-layout.cc"
9453 line="913">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc>
9454 <type name="tag_t" c:type="hb_tag_t"/>
9455 </parameter>
9456 <parameter name="feature_index" transfer-ownership="none">
9457 <doc xml:space="preserve"
9458 filename="../src/hb-ot-layout.cc"
9459 line="914">The index of the requested feature</doc>
9460 <type name="guint" c:type="unsigned int"/>
9461 </parameter>
9462 <parameter name="start_offset" transfer-ownership="none">
9463 <doc xml:space="preserve"
9464 filename="../src/hb-ot-layout.cc"
9465 line="915">offset of the first lookup to retrieve</doc>
9466 <type name="guint" c:type="unsigned int"/>
9467 </parameter>
9468 <parameter name="lookup_count"
9469 direction="out"
9470 caller-allocates="0"
9471 transfer-ownership="full"
9472 nullable="1">
9473 <doc xml:space="preserve"
9474 filename="../src/hb-ot-layout.cc"
9475 line="916">Input = the maximum number of lookups to return;
9476 Output = the actual number of lookups returned (may be zero)</doc>
9477 <type name="guint" c:type="unsigned int*"/>
9478 </parameter>
9479 <parameter name="lookup_indexes"
9480 direction="out"
9481 caller-allocates="0"
9482 transfer-ownership="full">
9483 <doc xml:space="preserve"
9484 filename="../src/hb-ot-layout.cc"
9485 line="918">The array of lookup indexes found for the query</doc>
9486 <array length="4" zero-terminated="0" c:type="unsigned int*">
9487 <type name="guint" c:type="unsigned int"/>
9488 </array>
9489 </parameter>
9490 </parameters>
9491 </function>
9492 <function name="ot_layout_feature_get_name_ids"
9493 c:identifier="hb_ot_layout_feature_get_name_ids"
9494 version="2.0.0">
9495 <doc xml:space="preserve"
9496 filename="../src/hb-ot-layout.cc"
9497 line="1608">Fetches name indices from feature parameters for "Stylistic Set" ('ssXX') or
9498 "Character Variant" ('cvXX') features.</doc>
9499 <source-position filename="../src/hb-ot-layout.h" line="394"/>
9500 <return-value transfer-ownership="none">
9501 <doc xml:space="preserve"
9502 filename="../src/hb-ot-layout.cc"
9503 line="1628">true if data found, false otherwise</doc>
9504 <type name="bool_t" c:type="hb_bool_t"/>
9505 </return-value>
9506 <parameters>
9507 <parameter name="face" transfer-ownership="none">
9508 <doc xml:space="preserve"
9509 filename="../src/hb-ot-layout.cc"
9510 line="1610">#hb_face_t to work upon</doc>
9511 <type name="face_t" c:type="hb_face_t*"/>
9512 </parameter>
9513 <parameter name="table_tag" transfer-ownership="none">
9514 <doc xml:space="preserve"
9515 filename="../src/hb-ot-layout.cc"
9516 line="1611">table tag to query, "GSUB" or "GPOS".</doc>
9517 <type name="tag_t" c:type="hb_tag_t"/>
9518 </parameter>
9519 <parameter name="feature_index" transfer-ownership="none">
9520 <doc xml:space="preserve"
9521 filename="../src/hb-ot-layout.cc"
9522 line="1612">index of feature to query.</doc>
9523 <type name="guint" c:type="unsigned int"/>
9524 </parameter>
9525 <parameter name="label_id"
9526 direction="out"
9527 caller-allocates="0"
9528 transfer-ownership="full"
9529 optional="1"
9530 allow-none="1">
9531 <doc xml:space="preserve"
9532 filename="../src/hb-ot-layout.cc"
9533 line="1613">The ‘name’ table name ID that specifies a string
9534 for a user-interface label for this feature. (May be NULL.)</doc>
9535 <type name="ot_name_id_t" c:type="hb_ot_name_id_t*"/>
9536 </parameter>
9537 <parameter name="tooltip_id"
9538 direction="out"
9539 caller-allocates="0"
9540 transfer-ownership="full"
9541 optional="1"
9542 allow-none="1">
9543 <doc xml:space="preserve"
9544 filename="../src/hb-ot-layout.cc"
9545 line="1615">The ‘name’ table name ID that specifies a string
9546 that an application can use for tooltip text for this
9547 feature. (May be NULL.)</doc>
9548 <type name="ot_name_id_t" c:type="hb_ot_name_id_t*"/>
9549 </parameter>
9550 <parameter name="sample_id"
9551 direction="out"
9552 caller-allocates="0"
9553 transfer-ownership="full"
9554 optional="1"
9555 allow-none="1">
9556 <doc xml:space="preserve"
9557 filename="../src/hb-ot-layout.cc"
9558 line="1618">The ‘name’ table name ID that specifies sample text
9559 that illustrates the effect of this feature. (May be NULL.)</doc>
9560 <type name="ot_name_id_t" c:type="hb_ot_name_id_t*"/>
9561 </parameter>
9562 <parameter name="num_named_parameters"
9563 direction="out"
9564 caller-allocates="0"
9565 transfer-ownership="full"
9566 optional="1"
9567 allow-none="1">
9568 <doc xml:space="preserve"
9569 filename="../src/hb-ot-layout.cc"
9570 line="1620">Number of named parameters. (May be zero.)</doc>
9571 <type name="guint" c:type="unsigned int*"/>
9572 </parameter>
9573 <parameter name="first_param_id"
9574 direction="out"
9575 caller-allocates="0"
9576 transfer-ownership="full"
9577 optional="1"
9578 allow-none="1">
9579 <doc xml:space="preserve"
9580 filename="../src/hb-ot-layout.cc"
9581 line="1621">The first ‘name’ table name ID used to specify
9582 strings for user-interface labels for the feature
9583 parameters. (Must be zero if numParameters is zero.)</doc>
9584 <type name="ot_name_id_t" c:type="hb_ot_name_id_t*"/>
9585 </parameter>
9586 </parameters>
9587 </function>
9588 <function name="ot_layout_feature_with_variations_get_lookups"
9589 c:identifier="hb_ot_layout_feature_with_variations_get_lookups">
9590 <doc xml:space="preserve"
9591 filename="../src/hb-ot-layout.cc"
9592 line="1268">Fetches a list of all lookups enumerated for the specified feature, in
9593 the specified face's GSUB table or GPOS table, enabled at the specified
9594 variations index. The list returned will begin at the offset provided.</doc>
9595 <source-position filename="../src/hb-ot-layout.h" line="310"/>
9596 <return-value transfer-ownership="none">
9597 <type name="guint" c:type="unsigned int"/>
9598 </return-value>
9599 <parameters>
9600 <parameter name="face" transfer-ownership="none">
9601 <doc xml:space="preserve"
9602 filename="../src/hb-ot-layout.cc"
9603 line="1270">#hb_face_t to work upon</doc>
9604 <type name="face_t" c:type="hb_face_t*"/>
9605 </parameter>
9606 <parameter name="table_tag" transfer-ownership="none">
9607 <doc xml:space="preserve"
9608 filename="../src/hb-ot-layout.cc"
9609 line="1271">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc>
9610 <type name="tag_t" c:type="hb_tag_t"/>
9611 </parameter>
9612 <parameter name="feature_index" transfer-ownership="none">
9613 <doc xml:space="preserve"
9614 filename="../src/hb-ot-layout.cc"
9615 line="1272">The index of the feature to query</doc>
9616 <type name="guint" c:type="unsigned int"/>
9617 </parameter>
9618 <parameter name="variations_index" transfer-ownership="none">
9619 <doc xml:space="preserve"
9620 filename="../src/hb-ot-layout.cc"
9621 line="1273">The index of the feature variation to query</doc>
9622 <type name="guint" c:type="unsigned int"/>
9623 </parameter>
9624 <parameter name="start_offset" transfer-ownership="none">
9625 <doc xml:space="preserve"
9626 filename="../src/hb-ot-layout.cc"
9627 line="1274">offset of the first lookup to retrieve</doc>
9628 <type name="guint" c:type="unsigned int"/>
9629 </parameter>
9630 <parameter name="lookup_count"
9631 direction="out"
9632 caller-allocates="0"
9633 transfer-ownership="full"
9634 nullable="1">
9635 <doc xml:space="preserve"
9636 filename="../src/hb-ot-layout.cc"
9637 line="1275">Input = the maximum number of lookups to return;
9638 Output = the actual number of lookups returned (may be zero)</doc>
9639 <type name="guint" c:type="unsigned int*"/>
9640 </parameter>
9641 <parameter name="lookup_indexes"
9642 direction="out"
9643 caller-allocates="0"
9644 transfer-ownership="full">
9645 <doc xml:space="preserve"
9646 filename="../src/hb-ot-layout.cc"
9647 line="1277">The array of lookups found for the query</doc>
9648 <array length="5" zero-terminated="0" c:type="unsigned int*">
9649 <type name="guint" c:type="unsigned int"/>
9650 </array>
9651 </parameter>
9652 </parameters>
9653 </function>
9654 <function name="ot_layout_get_attach_points"
9655 c:identifier="hb_ot_layout_get_attach_points">
9656 <doc xml:space="preserve"
9657 filename="../src/hb-ot-layout.cc"
9658 line="320">Fetches a list of all attachment points for the specified glyph in the GDEF
9659 table of the face. The list returned will begin at the offset provided.
9660
9661 Useful if the client program wishes to cache the list.</doc>
9662 <source-position filename="../src/hb-ot-layout.h" line="127"/>
9663 <return-value transfer-ownership="none">
9664 <type name="guint" c:type="unsigned int"/>
9665 </return-value>
9666 <parameters>
9667 <parameter name="face" transfer-ownership="none">
9668 <doc xml:space="preserve"
9669 filename="../src/hb-ot-layout.cc"
9670 line="322">The #hb_face_t to work on</doc>
9671 <type name="face_t" c:type="hb_face_t*"/>
9672 </parameter>
9673 <parameter name="glyph" transfer-ownership="none">
9674 <doc xml:space="preserve"
9675 filename="../src/hb-ot-layout.cc"
9676 line="323">The #hb_codepoint_t code point to query</doc>
9677 <type name="codepoint_t" c:type="hb_codepoint_t"/>
9678 </parameter>
9679 <parameter name="start_offset" transfer-ownership="none">
9680 <doc xml:space="preserve"
9681 filename="../src/hb-ot-layout.cc"
9682 line="324">offset of the first attachment point to retrieve</doc>
9683 <type name="guint" c:type="unsigned int"/>
9684 </parameter>
9685 <parameter name="point_count"
9686 direction="out"
9687 caller-allocates="0"
9688 transfer-ownership="full"
9689 nullable="1">
9690 <doc xml:space="preserve"
9691 filename="../src/hb-ot-layout.cc"
9692 line="325">Input = the maximum number of attachment points to return;
9693 Output = the actual number of attachment points returned (may be zero)</doc>
9694 <type name="guint" c:type="unsigned int*"/>
9695 </parameter>
9696 <parameter name="point_array"
9697 direction="out"
9698 caller-allocates="0"
9699 transfer-ownership="full">
9700 <doc xml:space="preserve"
9701 filename="../src/hb-ot-layout.cc"
9702 line="327">The array of attachment points found for the query</doc>
9703 <array length="3" zero-terminated="0" c:type="unsigned int*">
9704 <type name="guint" c:type="unsigned int"/>
9705 </array>
9706 </parameter>
9707 </parameters>
9708 </function>
9709 <function name="ot_layout_get_baseline"
9710 c:identifier="hb_ot_layout_get_baseline"
9711 version="2.6.0">
9712 <doc xml:space="preserve"
9713 filename="../src/hb-ot-layout.cc"
9714 line="1904">Fetches a baseline value from the face.</doc>
9715 <source-position filename="../src/hb-ot-layout.h" line="453"/>
9716 <return-value transfer-ownership="none">
9717 <doc xml:space="preserve"
9718 filename="../src/hb-ot-layout.cc"
9719 line="1915">if found baseline value in the font.</doc>
9720 <type name="bool_t" c:type="hb_bool_t"/>
9721 </return-value>
9722 <parameters>
9723 <parameter name="font" transfer-ownership="none">
9724 <doc xml:space="preserve"
9725 filename="../src/hb-ot-layout.cc"
9726 line="1906">a font</doc>
9727 <type name="font_t" c:type="hb_font_t*"/>
9728 </parameter>
9729 <parameter name="baseline_tag" transfer-ownership="none">
9730 <doc xml:space="preserve"
9731 filename="../src/hb-ot-layout.cc"
9732 line="1907">a baseline tag</doc>
9733 <type name="ot_layout_baseline_tag_t"
9734 c:type="hb_ot_layout_baseline_tag_t"/>
9735 </parameter>
9736 <parameter name="direction" transfer-ownership="none">
9737 <doc xml:space="preserve"
9738 filename="../src/hb-ot-layout.cc"
9739 line="1908">text direction.</doc>
9740 <type name="direction_t" c:type="hb_direction_t"/>
9741 </parameter>
9742 <parameter name="script_tag" transfer-ownership="none">
9743 <doc xml:space="preserve"
9744 filename="../src/hb-ot-layout.cc"
9745 line="1909">script tag.</doc>
9746 <type name="tag_t" c:type="hb_tag_t"/>
9747 </parameter>
9748 <parameter name="language_tag" transfer-ownership="none">
9749 <doc xml:space="preserve"
9750 filename="../src/hb-ot-layout.cc"
9751 line="1910">language tag.</doc>
9752 <type name="tag_t" c:type="hb_tag_t"/>
9753 </parameter>
9754 <parameter name="coord"
9755 direction="out"
9756 caller-allocates="0"
9757 transfer-ownership="full">
9758 <doc xml:space="preserve"
9759 filename="../src/hb-ot-layout.cc"
9760 line="1911">baseline value if found.</doc>
9761 <type name="position_t" c:type="hb_position_t*"/>
9762 </parameter>
9763 </parameters>
9764 </function>
9765 <function name="ot_layout_get_glyph_class"
9766 c:identifier="hb_ot_layout_get_glyph_class"
9767 version="0.9.7">
9768 <doc xml:space="preserve"
9769 filename="../src/hb-ot-layout.cc"
9770 line="280">Fetches the GDEF class of the requested glyph in the specified face.</doc>
9771 <source-position filename="../src/hb-ot-layout.h" line="116"/>
9772 <return-value transfer-ownership="none">
9773 <doc xml:space="preserve"
9774 filename="../src/hb-ot-layout.cc"
9775 line="287">The #hb_ot_layout_glyph_class_t glyph class of the given code
9776 point in the GDEF table of the face.</doc>
9777 <type name="ot_layout_glyph_class_t"
9778 c:type="hb_ot_layout_glyph_class_t"/>
9779 </return-value>
9780 <parameters>
9781 <parameter name="face" transfer-ownership="none">
9782 <doc xml:space="preserve"
9783 filename="../src/hb-ot-layout.cc"
9784 line="282">The #hb_face_t to work on</doc>
9785 <type name="face_t" c:type="hb_face_t*"/>
9786 </parameter>
9787 <parameter name="glyph" transfer-ownership="none">
9788 <doc xml:space="preserve"
9789 filename="../src/hb-ot-layout.cc"
9790 line="283">The #hb_codepoint_t code point to query</doc>
9791 <type name="codepoint_t" c:type="hb_codepoint_t"/>
9792 </parameter>
9793 </parameters>
9794 </function>
9795 <function name="ot_layout_get_glyphs_in_class"
9796 c:identifier="hb_ot_layout_get_glyphs_in_class"
9797 version="0.9.7">
9798 <doc xml:space="preserve"
9799 filename="../src/hb-ot-layout.cc"
9800 line="299">Retrieves the set of all glyphs from the face that belong to the requested
9801 glyph class in the face's GDEF table.</doc>
9802 <source-position filename="../src/hb-ot-layout.h" line="120"/>
9803 <return-value transfer-ownership="none">
9804 <type name="none" c:type="void"/>
9805 </return-value>
9806 <parameters>
9807 <parameter name="face" transfer-ownership="none">
9808 <doc xml:space="preserve"
9809 filename="../src/hb-ot-layout.cc"
9810 line="301">The #hb_face_t to work on</doc>
9811 <type name="face_t" c:type="hb_face_t*"/>
9812 </parameter>
9813 <parameter name="klass" transfer-ownership="none">
9814 <doc xml:space="preserve"
9815 filename="../src/hb-ot-layout.cc"
9816 line="302">The #hb_ot_layout_glyph_class_t GDEF class to retrieve</doc>
9817 <type name="ot_layout_glyph_class_t"
9818 c:type="hb_ot_layout_glyph_class_t"/>
9819 </parameter>
9820 <parameter name="glyphs"
9821 direction="out"
9822 caller-allocates="1"
9823 transfer-ownership="none">
9824 <doc xml:space="preserve"
9825 filename="../src/hb-ot-layout.cc"
9826 line="303">The #hb_set_t set of all glyphs belonging to the requested
9827 class.</doc>
9828 <type name="set_t" c:type="hb_set_t*"/>
9829 </parameter>
9830 </parameters>
9831 </function>
9832 <function name="ot_layout_get_ligature_carets"
9833 c:identifier="hb_ot_layout_get_ligature_carets">
9834 <doc xml:space="preserve"
9835 filename="../src/hb-ot-layout.cc"
9836 line="347">Fetches a list of the caret positions defined for a ligature glyph in the GDEF
9837 table of the font. The list returned will begin at the offset provided.</doc>
9838 <source-position filename="../src/hb-ot-layout.h" line="135"/>
9839 <return-value transfer-ownership="none">
9840 <type name="guint" c:type="unsigned int"/>
9841 </return-value>
9842 <parameters>
9843 <parameter name="font" transfer-ownership="none">
9844 <doc xml:space="preserve"
9845 filename="../src/hb-ot-layout.cc"
9846 line="349">The #hb_font_t to work on</doc>
9847 <type name="font_t" c:type="hb_font_t*"/>
9848 </parameter>
9849 <parameter name="direction" transfer-ownership="none">
9850 <doc xml:space="preserve"
9851 filename="../src/hb-ot-layout.cc"
9852 line="350">The #hb_direction_t text direction to use</doc>
9853 <type name="direction_t" c:type="hb_direction_t"/>
9854 </parameter>
9855 <parameter name="glyph" transfer-ownership="none">
9856 <doc xml:space="preserve"
9857 filename="../src/hb-ot-layout.cc"
9858 line="351">The #hb_codepoint_t code point to query</doc>
9859 <type name="codepoint_t" c:type="hb_codepoint_t"/>
9860 </parameter>
9861 <parameter name="start_offset" transfer-ownership="none">
9862 <doc xml:space="preserve"
9863 filename="../src/hb-ot-layout.cc"
9864 line="352">offset of the first caret position to retrieve</doc>
9865 <type name="guint" c:type="unsigned int"/>
9866 </parameter>
9867 <parameter name="caret_count"
9868 direction="out"
9869 caller-allocates="0"
9870 transfer-ownership="full"
9871 nullable="1">
9872 <doc xml:space="preserve"
9873 filename="../src/hb-ot-layout.cc"
9874 line="353">Input = the maximum number of caret positions to return;
9875 Output = the actual number of caret positions returned (may be zero)</doc>
9876 <type name="guint" c:type="unsigned int*"/>
9877 </parameter>
9878 <parameter name="caret_array"
9879 direction="out"
9880 caller-allocates="0"
9881 transfer-ownership="full">
9882 <doc xml:space="preserve"
9883 filename="../src/hb-ot-layout.cc"
9884 line="355">The array of caret positions found for the query</doc>
9885 <array length="4" zero-terminated="0" c:type="hb_position_t*">
9886 <type name="position_t" c:type="hb_position_t"/>
9887 </array>
9888 </parameter>
9889 </parameters>
9890 </function>
9891 <function name="ot_layout_get_size_params"
9892 c:identifier="hb_ot_layout_get_size_params"
9893 version="0.9.10">
9894 <doc xml:space="preserve"
9895 filename="../src/hb-ot-layout.cc"
9896 line="1546">Fetches optical-size feature data (i.e., the `size` feature from GPOS). Note that
9897 the subfamily_id and the subfamily name string (accessible via the subfamily_name_id)
9898 as used here are defined as pertaining only to fonts within a font family that differ
9899 specifically in their respective size ranges; other ways to differentiate fonts within
9900 a subfamily are not covered by the `size` feature.
9901
9902 For more information on this distinction, see the [`size` feature documentation](
9903 https://docs.microsoft.com/en-us/typography/opentype/spec/features_pt#tag-size).</doc>
9904 <source-position filename="../src/hb-ot-layout.h" line="385"/>
9905 <return-value transfer-ownership="none">
9906 <doc xml:space="preserve"
9907 filename="../src/hb-ot-layout.cc"
9908 line="1564">true if data found, false otherwise</doc>
9909 <type name="bool_t" c:type="hb_bool_t"/>
9910 </return-value>
9911 <parameters>
9912 <parameter name="face" transfer-ownership="none">
9913 <doc xml:space="preserve"
9914 filename="../src/hb-ot-layout.cc"
9915 line="1548">#hb_face_t to work upon</doc>
9916 <type name="face_t" c:type="hb_face_t*"/>
9917 </parameter>
9918 <parameter name="design_size"
9919 direction="out"
9920 caller-allocates="0"
9921 transfer-ownership="full">
9922 <doc xml:space="preserve"
9923 filename="../src/hb-ot-layout.cc"
9924 line="1549">The design size of the face</doc>
9925 <type name="guint" c:type="unsigned int*"/>
9926 </parameter>
9927 <parameter name="subfamily_id"
9928 direction="out"
9929 caller-allocates="0"
9930 transfer-ownership="full">
9931 <doc xml:space="preserve"
9932 filename="../src/hb-ot-layout.cc"
9933 line="1550">The identifier of the face within the font subfamily</doc>
9934 <type name="guint" c:type="unsigned int*"/>
9935 </parameter>
9936 <parameter name="subfamily_name_id"
9937 direction="out"
9938 caller-allocates="0"
9939 transfer-ownership="full">
9940 <doc xml:space="preserve"
9941 filename="../src/hb-ot-layout.cc"
9942 line="1551">The ‘name’ table name ID of the face within the font subfamily</doc>
9943 <type name="ot_name_id_t" c:type="hb_ot_name_id_t*"/>
9944 </parameter>
9945 <parameter name="range_start"
9946 direction="out"
9947 caller-allocates="0"
9948 transfer-ownership="full">
9949 <doc xml:space="preserve"
9950 filename="../src/hb-ot-layout.cc"
9951 line="1552">The minimum size of the recommended size range for the face</doc>
9952 <type name="guint" c:type="unsigned int*"/>
9953 </parameter>
9954 <parameter name="range_end"
9955 direction="out"
9956 caller-allocates="0"
9957 transfer-ownership="full">
9958 <doc xml:space="preserve"
9959 filename="../src/hb-ot-layout.cc"
9960 line="1553">The maximum size of the recommended size range for the face</doc>
9961 <type name="guint" c:type="unsigned int*"/>
9962 </parameter>
9963 </parameters>
9964 </function>
9965 <enumeration name="ot_layout_glyph_class_t"
9966 glib:type-name="hb_ot_layout_glyph_class_t"
9967 glib:get-type="hb_gobject_ot_layout_glyph_class_get_type"
9968 c:type="hb_ot_layout_glyph_class_t">
9969 <doc xml:space="preserve"
9970 filename="../src/hb-ot-layout.h"
9971 line="96">The GDEF classes defined for glyphs.</doc>
9972 <member name="unclassified"
9973 value="0"
9974 c:identifier="HB_OT_LAYOUT_GLYPH_CLASS_UNCLASSIFIED"
9975 glib:nick="unclassified">
9976 <doc xml:space="preserve"
9977 filename="../src/hb-ot-layout.h"
9978 line="98">Glyphs not matching the other classifications</doc>
9979 </member>
9980 <member name="base_glyph"
9981 value="1"
9982 c:identifier="HB_OT_LAYOUT_GLYPH_CLASS_BASE_GLYPH"
9983 glib:nick="base-glyph">
9984 <doc xml:space="preserve"
9985 filename="../src/hb-ot-layout.h"
9986 line="99">Spacing, single characters, capable of accepting marks</doc>
9987 </member>
9988 <member name="ligature"
9989 value="2"
9990 c:identifier="HB_OT_LAYOUT_GLYPH_CLASS_LIGATURE"
9991 glib:nick="ligature">
9992 <doc xml:space="preserve"
9993 filename="../src/hb-ot-layout.h"
9994 line="100">Glyphs that represent ligation of multiple characters</doc>
9995 </member>
9996 <member name="mark"
9997 value="3"
9998 c:identifier="HB_OT_LAYOUT_GLYPH_CLASS_MARK"
9999 glib:nick="mark">
10000 <doc xml:space="preserve"
10001 filename="../src/hb-ot-layout.h"
10002 line="101">Non-spacing, combining glyphs that represent marks</doc>
10003 </member>
10004 <member name="component"
10005 value="4"
10006 c:identifier="HB_OT_LAYOUT_GLYPH_CLASS_COMPONENT"
10007 glib:nick="component">
10008 <doc xml:space="preserve"
10009 filename="../src/hb-ot-layout.h"
10010 line="102">Spacing glyphs that represent part of a single character</doc>
10011 </member>
10012 </enumeration>
10013 <function name="ot_layout_has_glyph_classes"
10014 c:identifier="hb_ot_layout_has_glyph_classes">
10015 <doc xml:space="preserve"
10016 filename="../src/hb-ot-layout.cc"
10017 line="265">Tests whether a face has any glyph classes defined in its GDEF table.</doc>
10018 <source-position filename="../src/hb-ot-layout.h" line="94"/>
10019 <return-value transfer-ownership="none">
10020 <doc xml:space="preserve"
10021 filename="../src/hb-ot-layout.cc"
10022 line="271">true if data found, false otherwise</doc>
10023 <type name="bool_t" c:type="hb_bool_t"/>
10024 </return-value>
10025 <parameters>
10026 <parameter name="face" transfer-ownership="none">
10027 <doc xml:space="preserve"
10028 filename="../src/hb-ot-layout.cc"
10029 line="267">#hb_face_t to work upon</doc>
10030 <type name="face_t" c:type="hb_face_t*"/>
10031 </parameter>
10032 </parameters>
10033 </function>
10034 <function name="ot_layout_has_positioning"
10035 c:identifier="hb_ot_layout_has_positioning">
10036 <source-position filename="../src/hb-ot-layout.h" line="371"/>
10037 <return-value transfer-ownership="none">
10038 <doc xml:space="preserve"
10039 filename="../src/hb-ot-layout.cc"
10040 line="1491">true if the face has GPOS data, false otherwise</doc>
10041 <type name="bool_t" c:type="hb_bool_t"/>
10042 </return-value>
10043 <parameters>
10044 <parameter name="face" transfer-ownership="none">
10045 <doc xml:space="preserve"
10046 filename="../src/hb-ot-layout.cc"
10047 line="1489">#hb_face_t to work upon</doc>
10048 <type name="face_t" c:type="hb_face_t*"/>
10049 </parameter>
10050 </parameters>
10051 </function>
10052 <function name="ot_layout_has_substitution"
10053 c:identifier="hb_ot_layout_has_substitution">
10054 <doc xml:space="preserve"
10055 filename="../src/hb-ot-layout.cc"
10056 line="1307">Tests whether the specified face includes any GSUB substitutions.</doc>
10057 <source-position filename="../src/hb-ot-layout.h" line="324"/>
10058 <return-value transfer-ownership="none">
10059 <doc xml:space="preserve"
10060 filename="../src/hb-ot-layout.cc"
10061 line="1313">true if data found, false otherwise</doc>
10062 <type name="bool_t" c:type="hb_bool_t"/>
10063 </return-value>
10064 <parameters>
10065 <parameter name="face" transfer-ownership="none">
10066 <doc xml:space="preserve"
10067 filename="../src/hb-ot-layout.cc"
10068 line="1309">#hb_face_t to work upon</doc>
10069 <type name="face_t" c:type="hb_face_t*"/>
10070 </parameter>
10071 </parameters>
10072 </function>
10073 <function name="ot_layout_language_find_feature"
10074 c:identifier="hb_ot_layout_language_find_feature">
10075 <doc xml:space="preserve"
10076 filename="../src/hb-ot-layout.cc"
10077 line="868">Fetches the index of a given feature tag in the specified face's GSUB table
10078 or GPOS table, underneath the specified script and language.</doc>
10079 <source-position filename="../src/hb-ot-layout.h" line="230"/>
10080 <return-value transfer-ownership="none">
10081 <doc xml:space="preserve"
10082 filename="../src/hb-ot-layout.cc"
10083 line="880">true if the feature is found, false otherwise</doc>
10084 <type name="bool_t" c:type="hb_bool_t"/>
10085 </return-value>
10086 <parameters>
10087 <parameter name="face" transfer-ownership="none">
10088 <doc xml:space="preserve"
10089 filename="../src/hb-ot-layout.cc"
10090 line="870">#hb_face_t to work upon</doc>
10091 <type name="face_t" c:type="hb_face_t*"/>
10092 </parameter>
10093 <parameter name="table_tag" transfer-ownership="none">
10094 <doc xml:space="preserve"
10095 filename="../src/hb-ot-layout.cc"
10096 line="871">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc>
10097 <type name="tag_t" c:type="hb_tag_t"/>
10098 </parameter>
10099 <parameter name="script_index" transfer-ownership="none">
10100 <doc xml:space="preserve"
10101 filename="../src/hb-ot-layout.cc"
10102 line="872">The index of the requested script tag</doc>
10103 <type name="guint" c:type="unsigned int"/>
10104 </parameter>
10105 <parameter name="language_index" transfer-ownership="none">
10106 <doc xml:space="preserve"
10107 filename="../src/hb-ot-layout.cc"
10108 line="873">The index of the requested language tag</doc>
10109 <type name="guint" c:type="unsigned int"/>
10110 </parameter>
10111 <parameter name="feature_tag" transfer-ownership="none">
10112 <doc xml:space="preserve"
10113 filename="../src/hb-ot-layout.cc"
10114 line="874">#hb_tag_t of the feature tag requested</doc>
10115 <type name="tag_t" c:type="hb_tag_t"/>
10116 </parameter>
10117 <parameter name="feature_index"
10118 direction="out"
10119 caller-allocates="0"
10120 transfer-ownership="full">
10121 <doc xml:space="preserve"
10122 filename="../src/hb-ot-layout.cc"
10123 line="875">The index of the requested feature</doc>
10124 <type name="guint" c:type="unsigned int*"/>
10125 </parameter>
10126 </parameters>
10127 </function>
10128 <function name="ot_layout_language_get_feature_indexes"
10129 c:identifier="hb_ot_layout_language_get_feature_indexes">
10130 <doc xml:space="preserve"
10131 filename="../src/hb-ot-layout.cc"
10132 line="796">Fetches a list of all features in the specified face's GSUB table
10133 or GPOS table, underneath the specified script and language. The list
10134 returned will begin at the offset provided.</doc>
10135 <source-position filename="../src/hb-ot-layout.h" line="212"/>
10136 <return-value transfer-ownership="none">
10137 <type name="guint" c:type="unsigned int"/>
10138 </return-value>
10139 <parameters>
10140 <parameter name="face" transfer-ownership="none">
10141 <doc xml:space="preserve"
10142 filename="../src/hb-ot-layout.cc"
10143 line="798">#hb_face_t to work upon</doc>
10144 <type name="face_t" c:type="hb_face_t*"/>
10145 </parameter>
10146 <parameter name="table_tag" transfer-ownership="none">
10147 <doc xml:space="preserve"
10148 filename="../src/hb-ot-layout.cc"
10149 line="799">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc>
10150 <type name="tag_t" c:type="hb_tag_t"/>
10151 </parameter>
10152 <parameter name="script_index" transfer-ownership="none">
10153 <doc xml:space="preserve"
10154 filename="../src/hb-ot-layout.cc"
10155 line="800">The index of the requested script tag</doc>
10156 <type name="guint" c:type="unsigned int"/>
10157 </parameter>
10158 <parameter name="language_index" transfer-ownership="none">
10159 <doc xml:space="preserve"
10160 filename="../src/hb-ot-layout.cc"
10161 line="801">The index of the requested language tag</doc>
10162 <type name="guint" c:type="unsigned int"/>
10163 </parameter>
10164 <parameter name="start_offset" transfer-ownership="none">
10165 <doc xml:space="preserve"
10166 filename="../src/hb-ot-layout.cc"
10167 line="802">offset of the first feature tag to retrieve</doc>
10168 <type name="guint" c:type="unsigned int"/>
10169 </parameter>
10170 <parameter name="feature_count"
10171 direction="out"
10172 caller-allocates="0"
10173 transfer-ownership="full"
10174 nullable="1">
10175 <doc xml:space="preserve"
10176 filename="../src/hb-ot-layout.cc"
10177 line="803">Input = the maximum number of feature tags to return;
10178 Output: the actual number of feature tags returned (may be zero)</doc>
10179 <type name="guint" c:type="unsigned int*"/>
10180 </parameter>
10181 <parameter name="feature_indexes"
10182 direction="out"
10183 caller-allocates="0"
10184 transfer-ownership="full">
10185 <doc xml:space="preserve"
10186 filename="../src/hb-ot-layout.cc"
10187 line="805">The array of feature indexes found for the query</doc>
10188 <array length="5" zero-terminated="0" c:type="unsigned int*">
10189 <type name="guint" c:type="unsigned int"/>
10190 </array>
10191 </parameter>
10192 </parameters>
10193 </function>
10194 <function name="ot_layout_language_get_feature_tags"
10195 c:identifier="hb_ot_layout_language_get_feature_tags">
10196 <doc xml:space="preserve"
10197 filename="../src/hb-ot-layout.cc"
10198 line="827">Fetches a list of all features in the specified face's GSUB table
10199 or GPOS table, underneath the specified script and language. The list
10200 returned will begin at the offset provided.</doc>
10201 <source-position filename="../src/hb-ot-layout.h" line="221"/>
10202 <return-value transfer-ownership="none">
10203 <type name="guint" c:type="unsigned int"/>
10204 </return-value>
10205 <parameters>
10206 <parameter name="face" transfer-ownership="none">
10207 <doc xml:space="preserve"
10208 filename="../src/hb-ot-layout.cc"
10209 line="829">#hb_face_t to work upon</doc>
10210 <type name="face_t" c:type="hb_face_t*"/>
10211 </parameter>
10212 <parameter name="table_tag" transfer-ownership="none">
10213 <doc xml:space="preserve"
10214 filename="../src/hb-ot-layout.cc"
10215 line="830">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc>
10216 <type name="tag_t" c:type="hb_tag_t"/>
10217 </parameter>
10218 <parameter name="script_index" transfer-ownership="none">
10219 <doc xml:space="preserve"
10220 filename="../src/hb-ot-layout.cc"
10221 line="831">The index of the requested script tag</doc>
10222 <type name="guint" c:type="unsigned int"/>
10223 </parameter>
10224 <parameter name="language_index" transfer-ownership="none">
10225 <doc xml:space="preserve"
10226 filename="../src/hb-ot-layout.cc"
10227 line="832">The index of the requested language tag</doc>
10228 <type name="guint" c:type="unsigned int"/>
10229 </parameter>
10230 <parameter name="start_offset" transfer-ownership="none">
10231 <doc xml:space="preserve"
10232 filename="../src/hb-ot-layout.cc"
10233 line="833">offset of the first feature tag to retrieve</doc>
10234 <type name="guint" c:type="unsigned int"/>
10235 </parameter>
10236 <parameter name="feature_count"
10237 direction="out"
10238 caller-allocates="0"
10239 transfer-ownership="full"
10240 nullable="1">
10241 <doc xml:space="preserve"
10242 filename="../src/hb-ot-layout.cc"
10243 line="834">Input = the maximum number of feature tags to return;
10244 Output = the actual number of feature tags returned (may be zero)</doc>
10245 <type name="guint" c:type="unsigned int*"/>
10246 </parameter>
10247 <parameter name="feature_tags"
10248 direction="out"
10249 caller-allocates="0"
10250 transfer-ownership="full">
10251 <doc xml:space="preserve"
10252 filename="../src/hb-ot-layout.cc"
10253 line="836">The array of #hb_tag_t feature tags found for the query</doc>
10254 <array length="5" zero-terminated="0" c:type="hb_tag_t*">
10255 <type name="tag_t" c:type="hb_tag_t"/>
10256 </array>
10257 </parameter>
10258 </parameters>
10259 </function>
10260 <function name="ot_layout_language_get_required_feature"
10261 c:identifier="hb_ot_layout_language_get_required_feature"
10262 version="0.9.30">
10263 <doc xml:space="preserve"
10264 filename="../src/hb-ot-layout.cc"
10265 line="761">Fetches the tag of a requested feature index in the given face's GSUB or GPOS table,
10266 underneath the specified script and language.</doc>
10267 <source-position filename="../src/hb-ot-layout.h" line="204"/>
10268 <return-value transfer-ownership="none">
10269 <doc xml:space="preserve"
10270 filename="../src/hb-ot-layout.cc"
10271 line="773">true if the feature is found, false otherwise</doc>
10272 <type name="bool_t" c:type="hb_bool_t"/>
10273 </return-value>
10274 <parameters>
10275 <parameter name="face" transfer-ownership="none">
10276 <doc xml:space="preserve"
10277 filename="../src/hb-ot-layout.cc"
10278 line="763">#hb_face_t to work upon</doc>
10279 <type name="face_t" c:type="hb_face_t*"/>
10280 </parameter>
10281 <parameter name="table_tag" transfer-ownership="none">
10282 <doc xml:space="preserve"
10283 filename="../src/hb-ot-layout.cc"
10284 line="764">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc>
10285 <type name="tag_t" c:type="hb_tag_t"/>
10286 </parameter>
10287 <parameter name="script_index" transfer-ownership="none">
10288 <doc xml:space="preserve"
10289 filename="../src/hb-ot-layout.cc"
10290 line="765">The index of the requested script tag</doc>
10291 <type name="guint" c:type="unsigned int"/>
10292 </parameter>
10293 <parameter name="language_index" transfer-ownership="none">
10294 <doc xml:space="preserve"
10295 filename="../src/hb-ot-layout.cc"
10296 line="766">The index of the requested language tag</doc>
10297 <type name="guint" c:type="unsigned int"/>
10298 </parameter>
10299 <parameter name="feature_index"
10300 direction="out"
10301 caller-allocates="0"
10302 transfer-ownership="full">
10303 <doc xml:space="preserve"
10304 filename="../src/hb-ot-layout.cc"
10305 line="767">The index of the requested feature</doc>
10306 <type name="guint" c:type="unsigned int*"/>
10307 </parameter>
10308 <parameter name="feature_tag"
10309 direction="out"
10310 caller-allocates="0"
10311 transfer-ownership="full">
10312 <doc xml:space="preserve"
10313 filename="../src/hb-ot-layout.cc"
10314 line="768">The #hb_tag_t of the requested feature</doc>
10315 <type name="tag_t" c:type="hb_tag_t*"/>
10316 </parameter>
10317 </parameters>
10318 </function>
10319 <function name="ot_layout_language_get_required_feature_index"
10320 c:identifier="hb_ot_layout_language_get_required_feature_index">
10321 <doc xml:space="preserve"
10322 filename="../src/hb-ot-layout.cc"
10323 line="731">Fetches the index of a requested feature in the given face's GSUB or GPOS table,
10324 underneath the specified script and language.</doc>
10325 <source-position filename="../src/hb-ot-layout.h" line="197"/>
10326 <return-value transfer-ownership="none">
10327 <doc xml:space="preserve"
10328 filename="../src/hb-ot-layout.cc"
10329 line="742">true if the feature is found, false otherwise</doc>
10330 <type name="bool_t" c:type="hb_bool_t"/>
10331 </return-value>
10332 <parameters>
10333 <parameter name="face" transfer-ownership="none">
10334 <doc xml:space="preserve"
10335 filename="../src/hb-ot-layout.cc"
10336 line="733">#hb_face_t to work upon</doc>
10337 <type name="face_t" c:type="hb_face_t*"/>
10338 </parameter>
10339 <parameter name="table_tag" transfer-ownership="none">
10340 <doc xml:space="preserve"
10341 filename="../src/hb-ot-layout.cc"
10342 line="734">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc>
10343 <type name="tag_t" c:type="hb_tag_t"/>
10344 </parameter>
10345 <parameter name="script_index" transfer-ownership="none">
10346 <doc xml:space="preserve"
10347 filename="../src/hb-ot-layout.cc"
10348 line="735">The index of the requested script tag</doc>
10349 <type name="guint" c:type="unsigned int"/>
10350 </parameter>
10351 <parameter name="language_index" transfer-ownership="none">
10352 <doc xml:space="preserve"
10353 filename="../src/hb-ot-layout.cc"
10354 line="736">The index of the requested language tag</doc>
10355 <type name="guint" c:type="unsigned int"/>
10356 </parameter>
10357 <parameter name="feature_index"
10358 direction="out"
10359 caller-allocates="0"
10360 transfer-ownership="full">
10361 <doc xml:space="preserve"
10362 filename="../src/hb-ot-layout.cc"
10363 line="737">The index of the requested feature</doc>
10364 <type name="guint" c:type="unsigned int*"/>
10365 </parameter>
10366 </parameters>
10367 </function>
10368 <function name="ot_layout_lookup_collect_glyphs"
10369 c:identifier="hb_ot_layout_lookup_collect_glyphs"
10370 version="0.9.7">
10371 <doc xml:space="preserve"
10372 filename="../src/hb-ot-layout.cc"
10373 line="1191">Fetches a list of all glyphs affected by the specified lookup in the
10374 specified face's GSUB table or GPOS table.</doc>
10375 <source-position filename="../src/hb-ot-layout.h" line="266"/>
10376 <return-value transfer-ownership="none">
10377 <type name="none" c:type="void"/>
10378 </return-value>
10379 <parameters>
10380 <parameter name="face" transfer-ownership="none">
10381 <doc xml:space="preserve"
10382 filename="../src/hb-ot-layout.cc"
10383 line="1193">#hb_face_t to work upon</doc>
10384 <type name="face_t" c:type="hb_face_t*"/>
10385 </parameter>
10386 <parameter name="table_tag" transfer-ownership="none">
10387 <doc xml:space="preserve"
10388 filename="../src/hb-ot-layout.cc"
10389 line="1194">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc>
10390 <type name="tag_t" c:type="hb_tag_t"/>
10391 </parameter>
10392 <parameter name="lookup_index" transfer-ownership="none">
10393 <doc xml:space="preserve"
10394 filename="../src/hb-ot-layout.cc"
10395 line="1195">The index of the feature lookup to query</doc>
10396 <type name="guint" c:type="unsigned int"/>
10397 </parameter>
10398 <parameter name="glyphs_before"
10399 direction="out"
10400 caller-allocates="1"
10401 transfer-ownership="none">
10402 <doc xml:space="preserve"
10403 filename="../src/hb-ot-layout.cc"
10404 line="1196">Array of glyphs preceding the substitution range</doc>
10405 <type name="set_t" c:type="hb_set_t*"/>
10406 </parameter>
10407 <parameter name="glyphs_input"
10408 direction="out"
10409 caller-allocates="1"
10410 transfer-ownership="none">
10411 <doc xml:space="preserve"
10412 filename="../src/hb-ot-layout.cc"
10413 line="1197">Array of input glyphs that would be substituted by the lookup</doc>
10414 <type name="set_t" c:type="hb_set_t*"/>
10415 </parameter>
10416 <parameter name="glyphs_after"
10417 direction="out"
10418 caller-allocates="1"
10419 transfer-ownership="none">
10420 <doc xml:space="preserve"
10421 filename="../src/hb-ot-layout.cc"
10422 line="1198">Array of glyphs following the substitution range</doc>
10423 <type name="set_t" c:type="hb_set_t*"/>
10424 </parameter>
10425 <parameter name="glyphs_output"
10426 direction="out"
10427 caller-allocates="1"
10428 transfer-ownership="none">
10429 <doc xml:space="preserve"
10430 filename="../src/hb-ot-layout.cc"
10431 line="1199">Array of glyphs that would be the substitued output of the lookup</doc>
10432 <type name="set_t" c:type="hb_set_t*"/>
10433 </parameter>
10434 </parameters>
10435 </function>
10436 <function name="ot_layout_lookup_get_glyph_alternates"
10437 c:identifier="hb_ot_layout_lookup_get_glyph_alternates"
10438 version="2.6.8">
10439 <doc xml:space="preserve"
10440 filename="../src/hb-ot-layout.cc"
10441 line="1961">Fetches alternates of a glyph from a given GSUB lookup index.</doc>
10442 <source-position filename="../src/hb-ot-layout.h" line="327"/>
10443 <return-value transfer-ownership="none">
10444 <doc xml:space="preserve"
10445 filename="../src/hb-ot-layout.cc"
10446 line="1974">total number of alternates found in the specific lookup index for the given glyph id.</doc>
10447 <type name="guint" c:type="unsigned"/>
10448 </return-value>
10449 <parameters>
10450 <parameter name="face" transfer-ownership="none">
10451 <doc xml:space="preserve"
10452 filename="../src/hb-ot-layout.cc"
10453 line="1963">a face.</doc>
10454 <type name="face_t" c:type="hb_face_t*"/>
10455 </parameter>
10456 <parameter name="lookup_index" transfer-ownership="none">
10457 <doc xml:space="preserve"
10458 filename="../src/hb-ot-layout.cc"
10459 line="1964">index of the feature lookup to query.</doc>
10460 <type name="guint" c:type="unsigned"/>
10461 </parameter>
10462 <parameter name="glyph" transfer-ownership="none">
10463 <doc xml:space="preserve"
10464 filename="../src/hb-ot-layout.cc"
10465 line="1965">a glyph id.</doc>
10466 <type name="codepoint_t" c:type="hb_codepoint_t"/>
10467 </parameter>
10468 <parameter name="start_offset" transfer-ownership="none">
10469 <doc xml:space="preserve"
10470 filename="../src/hb-ot-layout.cc"
10471 line="1966">starting offset.</doc>
10472 <type name="guint" c:type="unsigned"/>
10473 </parameter>
10474 <parameter name="alternate_count"
10475 direction="out"
10476 caller-allocates="0"
10477 transfer-ownership="full"
10478 nullable="1">
10479 <doc xml:space="preserve"
10480 filename="../src/hb-ot-layout.cc"
10481 line="1967">Input = the maximum number of alternate glyphs to return;
10482 Output = the actual number of alternate glyphs returned (may be zero).</doc>
10483 <type name="guint" c:type="unsigned*"/>
10484 </parameter>
10485 <parameter name="alternate_glyphs"
10486 direction="out"
10487 caller-allocates="1"
10488 transfer-ownership="none">
10489 <doc xml:space="preserve"
10490 filename="../src/hb-ot-layout.cc"
10491 line="1969">A glyphs buffer.
10492 Alternate glyphs associated with the glyph id.</doc>
10493 <array length="4" zero-terminated="0" c:type="hb_codepoint_t*">
10494 <type name="codepoint_t" c:type="hb_codepoint_t"/>
10495 </array>
10496 </parameter>
10497 </parameters>
10498 </function>
10499 <function name="ot_layout_lookup_substitute_closure"
10500 c:identifier="hb_ot_layout_lookup_substitute_closure"
10501 version="0.9.7">
10502 <doc xml:space="preserve"
10503 filename="../src/hb-ot-layout.cc"
10504 line="1419">Compute the transitive closure of glyphs needed for a
10505 specified lookup.</doc>
10506 <source-position filename="../src/hb-ot-layout.h" line="342"/>
10507 <return-value transfer-ownership="none">
10508 <type name="none" c:type="void"/>
10509 </return-value>
10510 <parameters>
10511 <parameter name="face" transfer-ownership="none">
10512 <doc xml:space="preserve"
10513 filename="../src/hb-ot-layout.cc"
10514 line="1421">#hb_face_t to work upon</doc>
10515 <type name="face_t" c:type="hb_face_t*"/>
10516 </parameter>
10517 <parameter name="lookup_index" transfer-ownership="none">
10518 <doc xml:space="preserve"
10519 filename="../src/hb-ot-layout.cc"
10520 line="1422">index of the feature lookup to query</doc>
10521 <type name="guint" c:type="unsigned int"/>
10522 </parameter>
10523 <parameter name="glyphs"
10524 direction="out"
10525 caller-allocates="1"
10526 transfer-ownership="none">
10527 <doc xml:space="preserve"
10528 filename="../src/hb-ot-layout.cc"
10529 line="1423">Array of glyphs comprising the transitive closure of the lookup</doc>
10530 <type name="set_t" c:type="hb_set_t*"/>
10531 </parameter>
10532 </parameters>
10533 </function>
10534 <function name="ot_layout_lookup_would_substitute"
10535 c:identifier="hb_ot_layout_lookup_would_substitute"
10536 version="0.9.7">
10537 <doc xml:space="preserve"
10538 filename="../src/hb-ot-layout.cc"
10539 line="1323">Tests whether a specified lookup in the specified face would
10540 trigger a substitution on the given glyph sequence.</doc>
10541 <source-position filename="../src/hb-ot-layout.h" line="335"/>
10542 <return-value transfer-ownership="none">
10543 <doc xml:space="preserve"
10544 filename="../src/hb-ot-layout.cc"
10545 line="1334">true if a substitution would be triggered, false otherwise</doc>
10546 <type name="bool_t" c:type="hb_bool_t"/>
10547 </return-value>
10548 <parameters>
10549 <parameter name="face" transfer-ownership="none">
10550 <doc xml:space="preserve"
10551 filename="../src/hb-ot-layout.cc"
10552 line="1325">#hb_face_t to work upon</doc>
10553 <type name="face_t" c:type="hb_face_t*"/>
10554 </parameter>
10555 <parameter name="lookup_index" transfer-ownership="none">
10556 <doc xml:space="preserve"
10557 filename="../src/hb-ot-layout.cc"
10558 line="1326">The index of the lookup to query</doc>
10559 <type name="guint" c:type="unsigned int"/>
10560 </parameter>
10561 <parameter name="glyphs" transfer-ownership="none">
10562 <doc xml:space="preserve"
10563 filename="../src/hb-ot-layout.cc"
10564 line="1327">The sequence of glyphs to query for substitution</doc>
10565 <type name="codepoint_t" c:type="const hb_codepoint_t*"/>
10566 </parameter>
10567 <parameter name="glyphs_length" transfer-ownership="none">
10568 <doc xml:space="preserve"
10569 filename="../src/hb-ot-layout.cc"
10570 line="1328">The length of the glyph sequence</doc>
10571 <type name="guint" c:type="unsigned int"/>
10572 </parameter>
10573 <parameter name="zero_context" transfer-ownership="none">
10574 <doc xml:space="preserve"
10575 filename="../src/hb-ot-layout.cc"
10576 line="1329">#hb_bool_t indicating whether substitutions should be context-free</doc>
10577 <type name="bool_t" c:type="hb_bool_t"/>
10578 </parameter>
10579 </parameters>
10580 </function>
10581 <function name="ot_layout_lookups_substitute_closure"
10582 c:identifier="hb_ot_layout_lookups_substitute_closure"
10583 version="1.8.1">
10584 <doc xml:space="preserve"
10585 filename="../src/hb-ot-layout.cc"
10586 line="1443">Compute the transitive closure of glyphs needed for all of the
10587 provided lookups.</doc>
10588 <source-position filename="../src/hb-ot-layout.h" line="348"/>
10589 <return-value transfer-ownership="none">
10590 <type name="none" c:type="void"/>
10591 </return-value>
10592 <parameters>
10593 <parameter name="face" transfer-ownership="none">
10594 <doc xml:space="preserve"
10595 filename="../src/hb-ot-layout.cc"
10596 line="1445">#hb_face_t to work upon</doc>
10597 <type name="face_t" c:type="hb_face_t*"/>
10598 </parameter>
10599 <parameter name="lookups" transfer-ownership="none">
10600 <doc xml:space="preserve"
10601 filename="../src/hb-ot-layout.cc"
10602 line="1446">The set of lookups to query</doc>
10603 <type name="set_t" c:type="const hb_set_t*"/>
10604 </parameter>
10605 <parameter name="glyphs"
10606 direction="out"
10607 caller-allocates="1"
10608 transfer-ownership="none">
10609 <doc xml:space="preserve"
10610 filename="../src/hb-ot-layout.cc"
10611 line="1447">Array of glyphs comprising the transitive closure of the lookups</doc>
10612 <type name="set_t" c:type="hb_set_t*"/>
10613 </parameter>
10614 </parameters>
10615 </function>
10616 <function name="ot_layout_script_find_language"
10617 c:identifier="hb_ot_layout_script_find_language"
10618 deprecated="1">
10619 <doc xml:space="preserve"
10620 filename="../src/hb-ot-layout.cc"
10621 line="655">Fetches the index of a given language tag in the specified face's GSUB table
10622 or GPOS table, underneath the specified script tag.</doc>
10623 <doc-version xml:space="preserve">??</doc-version>
10624 <doc-deprecated xml:space="preserve">??</doc-deprecated>
10625 <source-position filename="../src/hb-ot-deprecated.h" line="56"/>
10626 <return-value transfer-ownership="none">
10627 <doc xml:space="preserve"
10628 filename="../src/hb-ot-layout.cc"
10629 line="666">true if the language tag is found, false otherwise</doc>
10630 <type name="bool_t" c:type="hb_bool_t"/>
10631 </return-value>
10632 <parameters>
10633 <parameter name="face" transfer-ownership="none">
10634 <doc xml:space="preserve"
10635 filename="../src/hb-ot-layout.cc"
10636 line="657">#hb_face_t to work upon</doc>
10637 <type name="face_t" c:type="hb_face_t*"/>
10638 </parameter>
10639 <parameter name="table_tag" transfer-ownership="none">
10640 <doc xml:space="preserve"
10641 filename="../src/hb-ot-layout.cc"
10642 line="658">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc>
10643 <type name="tag_t" c:type="hb_tag_t"/>
10644 </parameter>
10645 <parameter name="script_index" transfer-ownership="none">
10646 <doc xml:space="preserve"
10647 filename="../src/hb-ot-layout.cc"
10648 line="659">The index of the requested script tag</doc>
10649 <type name="guint" c:type="unsigned int"/>
10650 </parameter>
10651 <parameter name="language_tag" transfer-ownership="none">
10652 <doc xml:space="preserve"
10653 filename="../src/hb-ot-layout.cc"
10654 line="660">The #hb_tag_t of the requested language</doc>
10655 <type name="tag_t" c:type="hb_tag_t"/>
10656 </parameter>
10657 <parameter name="language_index" transfer-ownership="none">
10658 <doc xml:space="preserve"
10659 filename="../src/hb-ot-layout.cc"
10660 line="661">The index of the requested language</doc>
10661 <type name="guint" c:type="unsigned int*"/>
10662 </parameter>
10663 </parameters>
10664 </function>
10665 <function name="ot_layout_script_get_language_tags"
10666 c:identifier="hb_ot_layout_script_get_language_tags">
10667 <doc xml:space="preserve"
10668 filename="../src/hb-ot-layout.cc"
10669 line="626">Fetches a list of language tags in the given face's GSUB or GPOS table, underneath
10670 the specified script index. The list returned will begin at the offset provided.</doc>
10671 <source-position filename="../src/hb-ot-layout.h" line="181"/>
10672 <return-value transfer-ownership="none">
10673 <type name="guint" c:type="unsigned int"/>
10674 </return-value>
10675 <parameters>
10676 <parameter name="face" transfer-ownership="none">
10677 <doc xml:space="preserve"
10678 filename="../src/hb-ot-layout.cc"
10679 line="628">#hb_face_t to work upon</doc>
10680 <type name="face_t" c:type="hb_face_t*"/>
10681 </parameter>
10682 <parameter name="table_tag" transfer-ownership="none">
10683 <doc xml:space="preserve"
10684 filename="../src/hb-ot-layout.cc"
10685 line="629">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc>
10686 <type name="tag_t" c:type="hb_tag_t"/>
10687 </parameter>
10688 <parameter name="script_index" transfer-ownership="none">
10689 <doc xml:space="preserve"
10690 filename="../src/hb-ot-layout.cc"
10691 line="630">The index of the requested script tag</doc>
10692 <type name="guint" c:type="unsigned int"/>
10693 </parameter>
10694 <parameter name="start_offset" transfer-ownership="none">
10695 <doc xml:space="preserve"
10696 filename="../src/hb-ot-layout.cc"
10697 line="631">offset of the first language tag to retrieve</doc>
10698 <type name="guint" c:type="unsigned int"/>
10699 </parameter>
10700 <parameter name="language_count"
10701 direction="out"
10702 caller-allocates="0"
10703 transfer-ownership="full"
10704 nullable="1">
10705 <doc xml:space="preserve"
10706 filename="../src/hb-ot-layout.cc"
10707 line="632">Input = the maximum number of language tags to return;
10708 Output = the actual number of language tags returned (may be zero)</doc>
10709 <type name="guint" c:type="unsigned int*"/>
10710 </parameter>
10711 <parameter name="language_tags"
10712 direction="out"
10713 caller-allocates="0"
10714 transfer-ownership="full">
10715 <doc xml:space="preserve"
10716 filename="../src/hb-ot-layout.cc"
10717 line="634">Array of language tags found in the table</doc>
10718 <array length="4" zero-terminated="0" c:type="hb_tag_t*">
10719 <type name="tag_t" c:type="hb_tag_t"/>
10720 </array>
10721 </parameter>
10722 </parameters>
10723 </function>
10724 <function name="ot_layout_script_select_language"
10725 c:identifier="hb_ot_layout_script_select_language"
10726 version="2.0.0">
10727 <doc xml:space="preserve"
10728 filename="../src/hb-ot-layout.cc"
10729 line="688">Fetches the index of a given language tag in the specified face's GSUB table
10730 or GPOS table, underneath the specified script index.</doc>
10731 <source-position filename="../src/hb-ot-layout.h" line="189"/>
10732 <return-value transfer-ownership="none">
10733 <doc xml:space="preserve"
10734 filename="../src/hb-ot-layout.cc"
10735 line="700">true if the language tag is found, false otherwise</doc>
10736 <type name="bool_t" c:type="hb_bool_t"/>
10737 </return-value>
10738 <parameters>
10739 <parameter name="face" transfer-ownership="none">
10740 <doc xml:space="preserve"
10741 filename="../src/hb-ot-layout.cc"
10742 line="690">#hb_face_t to work upon</doc>
10743 <type name="face_t" c:type="hb_face_t*"/>
10744 </parameter>
10745 <parameter name="table_tag" transfer-ownership="none">
10746 <doc xml:space="preserve"
10747 filename="../src/hb-ot-layout.cc"
10748 line="691">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc>
10749 <type name="tag_t" c:type="hb_tag_t"/>
10750 </parameter>
10751 <parameter name="script_index" transfer-ownership="none">
10752 <doc xml:space="preserve"
10753 filename="../src/hb-ot-layout.cc"
10754 line="692">The index of the requested script tag</doc>
10755 <type name="guint" c:type="unsigned int"/>
10756 </parameter>
10757 <parameter name="language_count" transfer-ownership="none">
10758 <doc xml:space="preserve"
10759 filename="../src/hb-ot-layout.cc"
10760 line="693">The number of languages in the specified script</doc>
10761 <type name="guint" c:type="unsigned int"/>
10762 </parameter>
10763 <parameter name="language_tags" transfer-ownership="none">
10764 <doc xml:space="preserve"
10765 filename="../src/hb-ot-layout.cc"
10766 line="694">The array of language tags</doc>
10767 <type name="tag_t" c:type="const hb_tag_t*"/>
10768 </parameter>
10769 <parameter name="language_index"
10770 direction="out"
10771 caller-allocates="0"
10772 transfer-ownership="full">
10773 <doc xml:space="preserve"
10774 filename="../src/hb-ot-layout.cc"
10775 line="695">The index of the requested language</doc>
10776 <type name="guint" c:type="unsigned int*"/>
10777 </parameter>
10778 </parameters>
10779 </function>
10780 <function name="ot_layout_table_choose_script"
10781 c:identifier="hb_ot_layout_table_choose_script">
10782 <doc xml:space="preserve"
10783 filename="../src/hb-ot-layout.cc"
10784 line="481">Deprecated since 2.0.0</doc>
10785 <source-position filename="../src/hb-ot-deprecated.h" line="49"/>
10786 <return-value transfer-ownership="none">
10787 <type name="bool_t" c:type="hb_bool_t"/>
10788 </return-value>
10789 <parameters>
10790 <parameter name="face" transfer-ownership="none">
10791 <doc xml:space="preserve"
10792 filename="../src/hb-ot-layout.cc"
10793 line="483">#hb_face_t to work upon</doc>
10794 <type name="face_t" c:type="hb_face_t*"/>
10795 </parameter>
10796 <parameter name="table_tag" transfer-ownership="none">
10797 <doc xml:space="preserve"
10798 filename="../src/hb-ot-layout.cc"
10799 line="484">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc>
10800 <type name="tag_t" c:type="hb_tag_t"/>
10801 </parameter>
10802 <parameter name="script_tags" transfer-ownership="none">
10803 <doc xml:space="preserve"
10804 filename="../src/hb-ot-layout.cc"
10805 line="485">Array of #hb_tag_t script tags</doc>
10806 <type name="tag_t" c:type="const hb_tag_t*"/>
10807 </parameter>
10808 <parameter name="script_index"
10809 direction="out"
10810 caller-allocates="0"
10811 transfer-ownership="full">
10812 <doc xml:space="preserve"
10813 filename="../src/hb-ot-layout.cc"
10814 line="486">The index of the requested script tag</doc>
10815 <type name="guint" c:type="unsigned int*"/>
10816 </parameter>
10817 <parameter name="chosen_script"
10818 direction="out"
10819 caller-allocates="0"
10820 transfer-ownership="full">
10821 <doc xml:space="preserve"
10822 filename="../src/hb-ot-layout.cc"
10823 line="487">#hb_tag_t of the script tag requested</doc>
10824 <type name="tag_t" c:type="hb_tag_t*"/>
10825 </parameter>
10826 </parameters>
10827 </function>
10828 <function name="ot_layout_table_find_feature_variations"
10829 c:identifier="hb_ot_layout_table_find_feature_variations">
10830 <doc xml:space="preserve"
10831 filename="../src/hb-ot-layout.cc"
10832 line="1243">Fetches a list of feature variations in the specified face's GSUB table
10833 or GPOS table, at the specified variation coordinates.</doc>
10834 <source-position filename="../src/hb-ot-layout.h" line="303"/>
10835 <return-value transfer-ownership="none">
10836 <type name="bool_t" c:type="hb_bool_t"/>
10837 </return-value>
10838 <parameters>
10839 <parameter name="face" transfer-ownership="none">
10840 <doc xml:space="preserve"
10841 filename="../src/hb-ot-layout.cc"
10842 line="1245">#hb_face_t to work upon</doc>
10843 <type name="face_t" c:type="hb_face_t*"/>
10844 </parameter>
10845 <parameter name="table_tag" transfer-ownership="none">
10846 <doc xml:space="preserve"
10847 filename="../src/hb-ot-layout.cc"
10848 line="1246">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc>
10849 <type name="tag_t" c:type="hb_tag_t"/>
10850 </parameter>
10851 <parameter name="coords" transfer-ownership="none">
10852 <doc xml:space="preserve"
10853 filename="../src/hb-ot-layout.cc"
10854 line="1247">The variation coordinates to query</doc>
10855 <type name="gint" c:type="const int*"/>
10856 </parameter>
10857 <parameter name="num_coords" transfer-ownership="none">
10858 <doc xml:space="preserve"
10859 filename="../src/hb-ot-layout.cc"
10860 line="1248">The number of variation coorinates</doc>
10861 <type name="guint" c:type="unsigned int"/>
10862 </parameter>
10863 <parameter name="variations_index"
10864 direction="out"
10865 caller-allocates="0"
10866 transfer-ownership="full">
10867 <doc xml:space="preserve"
10868 filename="../src/hb-ot-layout.cc"
10869 line="1249">The array of feature variations found for the query</doc>
10870 <type name="guint" c:type="unsigned int*"/>
10871 </parameter>
10872 </parameters>
10873 </function>
10874 <function name="ot_layout_table_find_script"
10875 c:identifier="hb_ot_layout_table_find_script">
10876 <doc xml:space="preserve"
10877 filename="../src/hb-ot-layout.cc"
10878 line="437">Fetches the index if a given script tag in the specified face's GSUB table
10879 or GPOS table.</doc>
10880 <source-position filename="../src/hb-ot-layout.h" line="160"/>
10881 <return-value transfer-ownership="none">
10882 <doc xml:space="preserve"
10883 filename="../src/hb-ot-layout.cc"
10884 line="447">true if the script is found, false otherwise</doc>
10885 <type name="bool_t" c:type="hb_bool_t"/>
10886 </return-value>
10887 <parameters>
10888 <parameter name="face" transfer-ownership="none">
10889 <doc xml:space="preserve"
10890 filename="../src/hb-ot-layout.cc"
10891 line="439">#hb_face_t to work upon</doc>
10892 <type name="face_t" c:type="hb_face_t*"/>
10893 </parameter>
10894 <parameter name="table_tag" transfer-ownership="none">
10895 <doc xml:space="preserve"
10896 filename="../src/hb-ot-layout.cc"
10897 line="440">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc>
10898 <type name="tag_t" c:type="hb_tag_t"/>
10899 </parameter>
10900 <parameter name="script_tag" transfer-ownership="none">
10901 <doc xml:space="preserve"
10902 filename="../src/hb-ot-layout.cc"
10903 line="441">#hb_tag_t of the script tag requested</doc>
10904 <type name="tag_t" c:type="hb_tag_t"/>
10905 </parameter>
10906 <parameter name="script_index"
10907 direction="out"
10908 caller-allocates="0"
10909 transfer-ownership="full">
10910 <doc xml:space="preserve"
10911 filename="../src/hb-ot-layout.cc"
10912 line="442">The index of the requested script tag</doc>
10913 <type name="guint" c:type="unsigned int*"/>
10914 </parameter>
10915 </parameters>
10916 </function>
10917 <function name="ot_layout_table_get_feature_tags"
10918 c:identifier="hb_ot_layout_table_get_feature_tags">
10919 <doc xml:space="preserve"
10920 filename="../src/hb-ot-layout.cc"
10921 line="566">Fetches a list of all feature tags in the given face's GSUB or GPOS table.</doc>
10922 <source-position filename="../src/hb-ot-layout.h" line="174"/>
10923 <return-value transfer-ownership="none">
10924 <type name="guint" c:type="unsigned int"/>
10925 </return-value>
10926 <parameters>
10927 <parameter name="face" transfer-ownership="none">
10928 <doc xml:space="preserve"
10929 filename="../src/hb-ot-layout.cc"
10930 line="568">#hb_face_t to work upon</doc>
10931 <type name="face_t" c:type="hb_face_t*"/>
10932 </parameter>
10933 <parameter name="table_tag" transfer-ownership="none">
10934 <doc xml:space="preserve"
10935 filename="../src/hb-ot-layout.cc"
10936 line="569">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc>
10937 <type name="tag_t" c:type="hb_tag_t"/>
10938 </parameter>
10939 <parameter name="start_offset" transfer-ownership="none">
10940 <doc xml:space="preserve"
10941 filename="../src/hb-ot-layout.cc"
10942 line="570">offset of the first feature tag to retrieve</doc>
10943 <type name="guint" c:type="unsigned int"/>
10944 </parameter>
10945 <parameter name="feature_count"
10946 direction="out"
10947 caller-allocates="0"
10948 transfer-ownership="full"
10949 nullable="1">
10950 <doc xml:space="preserve"
10951 filename="../src/hb-ot-layout.cc"
10952 line="571">Input = the maximum number of feature tags to return;
10953 Output = the actual number of feature tags returned (may be zero)</doc>
10954 <type name="guint" c:type="unsigned int*"/>
10955 </parameter>
10956 <parameter name="feature_tags"
10957 direction="out"
10958 caller-allocates="0"
10959 transfer-ownership="full">
10960 <doc xml:space="preserve"
10961 filename="../src/hb-ot-layout.cc"
10962 line="573">Array of feature tags found in the table</doc>
10963 <array length="3" zero-terminated="0" c:type="hb_tag_t*">
10964 <type name="tag_t" c:type="hb_tag_t"/>
10965 </array>
10966 </parameter>
10967 </parameters>
10968 </function>
10969 <function name="ot_layout_table_get_lookup_count"
10970 c:identifier="hb_ot_layout_table_get_lookup_count"
10971 version="0.9.22">
10972 <doc xml:space="preserve"
10973 filename="../src/hb-ot-layout.cc"
10974 line="944">Fetches the total number of lookups enumerated in the specified
10975 face's GSUB table or GPOS table.</doc>
10976 <source-position filename="../src/hb-ot-layout.h" line="246"/>
10977 <return-value transfer-ownership="none">
10978 <type name="guint" c:type="unsigned int"/>
10979 </return-value>
10980 <parameters>
10981 <parameter name="face" transfer-ownership="none">
10982 <doc xml:space="preserve"
10983 filename="../src/hb-ot-layout.cc"
10984 line="946">#hb_face_t to work upon</doc>
10985 <type name="face_t" c:type="hb_face_t*"/>
10986 </parameter>
10987 <parameter name="table_tag" transfer-ownership="none">
10988 <doc xml:space="preserve"
10989 filename="../src/hb-ot-layout.cc"
10990 line="947">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc>
10991 <type name="tag_t" c:type="hb_tag_t"/>
10992 </parameter>
10993 </parameters>
10994 </function>
10995 <function name="ot_layout_table_get_script_tags"
10996 c:identifier="hb_ot_layout_table_get_script_tags">
10997 <doc xml:space="preserve"
10998 filename="../src/hb-ot-layout.cc"
10999 line="410">Fetches a list of all scripts enumerated in the specified face's GSUB table
11000 or GPOS table. The list returned will begin at the offset provided.</doc>
11001 <source-position filename="../src/hb-ot-layout.h" line="153"/>
11002 <return-value transfer-ownership="none">
11003 <type name="guint" c:type="unsigned int"/>
11004 </return-value>
11005 <parameters>
11006 <parameter name="face" transfer-ownership="none">
11007 <doc xml:space="preserve"
11008 filename="../src/hb-ot-layout.cc"
11009 line="412">#hb_face_t to work upon</doc>
11010 <type name="face_t" c:type="hb_face_t*"/>
11011 </parameter>
11012 <parameter name="table_tag" transfer-ownership="none">
11013 <doc xml:space="preserve"
11014 filename="../src/hb-ot-layout.cc"
11015 line="413">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc>
11016 <type name="tag_t" c:type="hb_tag_t"/>
11017 </parameter>
11018 <parameter name="start_offset" transfer-ownership="none">
11019 <doc xml:space="preserve"
11020 filename="../src/hb-ot-layout.cc"
11021 line="414">offset of the first script tag to retrieve</doc>
11022 <type name="guint" c:type="unsigned int"/>
11023 </parameter>
11024 <parameter name="script_count"
11025 direction="out"
11026 caller-allocates="0"
11027 transfer-ownership="full"
11028 nullable="1">
11029 <doc xml:space="preserve"
11030 filename="../src/hb-ot-layout.cc"
11031 line="415">Input = the maximum number of script tags to return;
11032 Output = the actual number of script tags returned (may be zero)</doc>
11033 <type name="guint" c:type="unsigned int*"/>
11034 </parameter>
11035 <parameter name="script_tags"
11036 direction="out"
11037 caller-allocates="0"
11038 transfer-ownership="full">
11039 <doc xml:space="preserve"
11040 filename="../src/hb-ot-layout.cc"
11041 line="417">The array of #hb_tag_t script tags found for the query</doc>
11042 <array length="3" zero-terminated="0" c:type="hb_tag_t*">
11043 <type name="tag_t" c:type="hb_tag_t"/>
11044 </array>
11045 </parameter>
11046 </parameters>
11047 </function>
11048 <function name="ot_layout_table_select_script"
11049 c:identifier="hb_ot_layout_table_select_script"
11050 version="2.0.0">
11051 <source-position filename="../src/hb-ot-layout.h" line="166"/>
11052 <return-value transfer-ownership="none">
11053 <type name="bool_t" c:type="hb_bool_t"/>
11054 </return-value>
11055 <parameters>
11056 <parameter name="face" transfer-ownership="none">
11057 <doc xml:space="preserve"
11058 filename="../src/hb-ot-layout.cc"
11059 line="506">#hb_face_t to work upon</doc>
11060 <type name="face_t" c:type="hb_face_t*"/>
11061 </parameter>
11062 <parameter name="table_tag" transfer-ownership="none">
11063 <doc xml:space="preserve"
11064 filename="../src/hb-ot-layout.cc"
11065 line="507">HB_OT_TAG_GSUB or HB_OT_TAG_GPOS</doc>
11066 <type name="tag_t" c:type="hb_tag_t"/>
11067 </parameter>
11068 <parameter name="script_count" transfer-ownership="none">
11069 <doc xml:space="preserve"
11070 filename="../src/hb-ot-layout.cc"
11071 line="508">Number of script tags in the array</doc>
11072 <type name="guint" c:type="unsigned int"/>
11073 </parameter>
11074 <parameter name="script_tags" transfer-ownership="none">
11075 <doc xml:space="preserve"
11076 filename="../src/hb-ot-layout.cc"
11077 line="509">Array of #hb_tag_t script tags</doc>
11078 <type name="tag_t" c:type="const hb_tag_t*"/>
11079 </parameter>
11080 <parameter name="script_index"
11081 direction="out"
11082 caller-allocates="0"
11083 transfer-ownership="full">
11084 <doc xml:space="preserve"
11085 filename="../src/hb-ot-layout.cc"
11086 line="510">The index of the requested script</doc>
11087 <type name="guint" c:type="unsigned int*"/>
11088 </parameter>
11089 <parameter name="chosen_script"
11090 direction="out"
11091 caller-allocates="0"
11092 transfer-ownership="full">
11093 <doc xml:space="preserve"
11094 filename="../src/hb-ot-layout.cc"
11095 line="511">#hb_tag_t of the requested script</doc>
11096 <type name="tag_t" c:type="hb_tag_t*"/>
11097 </parameter>
11098 </parameters>
11099 </function>
11100 <enumeration name="ot_math_constant_t"
11101 version="1.3.3"
11102 glib:type-name="hb_ot_math_constant_t"
11103 glib:get-type="hb_gobject_ot_math_constant_get_type"
11104 c:type="hb_ot_math_constant_t">
11105 <doc xml:space="preserve"
11106 filename="../src/hb-ot-math.h"
11107 line="50">The 'MATH' table constants specified at
11108 https://docs.microsoft.com/en-us/typography/opentype/spec/math</doc>
11109 <member name="script_percent_scale_down"
11110 value="0"
11111 c:identifier="HB_OT_MATH_CONSTANT_SCRIPT_PERCENT_SCALE_DOWN"
11112 glib:nick="script-percent-scale-down">
11113 </member>
11114 <member name="script_script_percent_scale_down"
11115 value="1"
11116 c:identifier="HB_OT_MATH_CONSTANT_SCRIPT_SCRIPT_PERCENT_SCALE_DOWN"
11117 glib:nick="script-script-percent-scale-down">
11118 </member>
11119 <member name="delimited_sub_formula_min_height"
11120 value="2"
11121 c:identifier="HB_OT_MATH_CONSTANT_DELIMITED_SUB_FORMULA_MIN_HEIGHT"
11122 glib:nick="delimited-sub-formula-min-height">
11123 </member>
11124 <member name="display_operator_min_height"
11125 value="3"
11126 c:identifier="HB_OT_MATH_CONSTANT_DISPLAY_OPERATOR_MIN_HEIGHT"
11127 glib:nick="display-operator-min-height">
11128 </member>
11129 <member name="math_leading"
11130 value="4"
11131 c:identifier="HB_OT_MATH_CONSTANT_MATH_LEADING"
11132 glib:nick="math-leading">
11133 </member>
11134 <member name="axis_height"
11135 value="5"
11136 c:identifier="HB_OT_MATH_CONSTANT_AXIS_HEIGHT"
11137 glib:nick="axis-height">
11138 </member>
11139 <member name="accent_base_height"
11140 value="6"
11141 c:identifier="HB_OT_MATH_CONSTANT_ACCENT_BASE_HEIGHT"
11142 glib:nick="accent-base-height">
11143 </member>
11144 <member name="flattened_accent_base_height"
11145 value="7"
11146 c:identifier="HB_OT_MATH_CONSTANT_FLATTENED_ACCENT_BASE_HEIGHT"
11147 glib:nick="flattened-accent-base-height">
11148 </member>
11149 <member name="subscript_shift_down"
11150 value="8"
11151 c:identifier="HB_OT_MATH_CONSTANT_SUBSCRIPT_SHIFT_DOWN"
11152 glib:nick="subscript-shift-down">
11153 </member>
11154 <member name="subscript_top_max"
11155 value="9"
11156 c:identifier="HB_OT_MATH_CONSTANT_SUBSCRIPT_TOP_MAX"
11157 glib:nick="subscript-top-max">
11158 </member>
11159 <member name="subscript_baseline_drop_min"
11160 value="10"
11161 c:identifier="HB_OT_MATH_CONSTANT_SUBSCRIPT_BASELINE_DROP_MIN"
11162 glib:nick="subscript-baseline-drop-min">
11163 </member>
11164 <member name="superscript_shift_up"
11165 value="11"
11166 c:identifier="HB_OT_MATH_CONSTANT_SUPERSCRIPT_SHIFT_UP"
11167 glib:nick="superscript-shift-up">
11168 </member>
11169 <member name="superscript_shift_up_cramped"
11170 value="12"
11171 c:identifier="HB_OT_MATH_CONSTANT_SUPERSCRIPT_SHIFT_UP_CRAMPED"
11172 glib:nick="superscript-shift-up-cramped">
11173 </member>
11174 <member name="superscript_bottom_min"
11175 value="13"
11176 c:identifier="HB_OT_MATH_CONSTANT_SUPERSCRIPT_BOTTOM_MIN"
11177 glib:nick="superscript-bottom-min">
11178 </member>
11179 <member name="superscript_baseline_drop_max"
11180 value="14"
11181 c:identifier="HB_OT_MATH_CONSTANT_SUPERSCRIPT_BASELINE_DROP_MAX"
11182 glib:nick="superscript-baseline-drop-max">
11183 </member>
11184 <member name="sub_superscript_gap_min"
11185 value="15"
11186 c:identifier="HB_OT_MATH_CONSTANT_SUB_SUPERSCRIPT_GAP_MIN"
11187 glib:nick="sub-superscript-gap-min">
11188 </member>
11189 <member name="superscript_bottom_max_with_subscript"
11190 value="16"
11191 c:identifier="HB_OT_MATH_CONSTANT_SUPERSCRIPT_BOTTOM_MAX_WITH_SUBSCRIPT"
11192 glib:nick="superscript-bottom-max-with-subscript">
11193 </member>
11194 <member name="space_after_script"
11195 value="17"
11196 c:identifier="HB_OT_MATH_CONSTANT_SPACE_AFTER_SCRIPT"
11197 glib:nick="space-after-script">
11198 </member>
11199 <member name="upper_limit_gap_min"
11200 value="18"
11201 c:identifier="HB_OT_MATH_CONSTANT_UPPER_LIMIT_GAP_MIN"
11202 glib:nick="upper-limit-gap-min">
11203 </member>
11204 <member name="upper_limit_baseline_rise_min"
11205 value="19"
11206 c:identifier="HB_OT_MATH_CONSTANT_UPPER_LIMIT_BASELINE_RISE_MIN"
11207 glib:nick="upper-limit-baseline-rise-min">
11208 </member>
11209 <member name="lower_limit_gap_min"
11210 value="20"
11211 c:identifier="HB_OT_MATH_CONSTANT_LOWER_LIMIT_GAP_MIN"
11212 glib:nick="lower-limit-gap-min">
11213 </member>
11214 <member name="lower_limit_baseline_drop_min"
11215 value="21"
11216 c:identifier="HB_OT_MATH_CONSTANT_LOWER_LIMIT_BASELINE_DROP_MIN"
11217 glib:nick="lower-limit-baseline-drop-min">
11218 </member>
11219 <member name="stack_top_shift_up"
11220 value="22"
11221 c:identifier="HB_OT_MATH_CONSTANT_STACK_TOP_SHIFT_UP"
11222 glib:nick="stack-top-shift-up">
11223 </member>
11224 <member name="stack_top_display_style_shift_up"
11225 value="23"
11226 c:identifier="HB_OT_MATH_CONSTANT_STACK_TOP_DISPLAY_STYLE_SHIFT_UP"
11227 glib:nick="stack-top-display-style-shift-up">
11228 </member>
11229 <member name="stack_bottom_shift_down"
11230 value="24"
11231 c:identifier="HB_OT_MATH_CONSTANT_STACK_BOTTOM_SHIFT_DOWN"
11232 glib:nick="stack-bottom-shift-down">
11233 </member>
11234 <member name="stack_bottom_display_style_shift_down"
11235 value="25"
11236 c:identifier="HB_OT_MATH_CONSTANT_STACK_BOTTOM_DISPLAY_STYLE_SHIFT_DOWN"
11237 glib:nick="stack-bottom-display-style-shift-down">
11238 </member>
11239 <member name="stack_gap_min"
11240 value="26"
11241 c:identifier="HB_OT_MATH_CONSTANT_STACK_GAP_MIN"
11242 glib:nick="stack-gap-min">
11243 </member>
11244 <member name="stack_display_style_gap_min"
11245 value="27"
11246 c:identifier="HB_OT_MATH_CONSTANT_STACK_DISPLAY_STYLE_GAP_MIN"
11247 glib:nick="stack-display-style-gap-min">
11248 </member>
11249 <member name="stretch_stack_top_shift_up"
11250 value="28"
11251 c:identifier="HB_OT_MATH_CONSTANT_STRETCH_STACK_TOP_SHIFT_UP"
11252 glib:nick="stretch-stack-top-shift-up">
11253 </member>
11254 <member name="stretch_stack_bottom_shift_down"
11255 value="29"
11256 c:identifier="HB_OT_MATH_CONSTANT_STRETCH_STACK_BOTTOM_SHIFT_DOWN"
11257 glib:nick="stretch-stack-bottom-shift-down">
11258 </member>
11259 <member name="stretch_stack_gap_above_min"
11260 value="30"
11261 c:identifier="HB_OT_MATH_CONSTANT_STRETCH_STACK_GAP_ABOVE_MIN"
11262 glib:nick="stretch-stack-gap-above-min">
11263 </member>
11264 <member name="stretch_stack_gap_below_min"
11265 value="31"
11266 c:identifier="HB_OT_MATH_CONSTANT_STRETCH_STACK_GAP_BELOW_MIN"
11267 glib:nick="stretch-stack-gap-below-min">
11268 </member>
11269 <member name="fraction_numerator_shift_up"
11270 value="32"
11271 c:identifier="HB_OT_MATH_CONSTANT_FRACTION_NUMERATOR_SHIFT_UP"
11272 glib:nick="fraction-numerator-shift-up">
11273 </member>
11274 <member name="fraction_numerator_display_style_shift_up"
11275 value="33"
11276 c:identifier="HB_OT_MATH_CONSTANT_FRACTION_NUMERATOR_DISPLAY_STYLE_SHIFT_UP"
11277 glib:nick="fraction-numerator-display-style-shift-up">
11278 </member>
11279 <member name="fraction_denominator_shift_down"
11280 value="34"
11281 c:identifier="HB_OT_MATH_CONSTANT_FRACTION_DENOMINATOR_SHIFT_DOWN"
11282 glib:nick="fraction-denominator-shift-down">
11283 </member>
11284 <member name="fraction_denominator_display_style_shift_down"
11285 value="35"
11286 c:identifier="HB_OT_MATH_CONSTANT_FRACTION_DENOMINATOR_DISPLAY_STYLE_SHIFT_DOWN"
11287 glib:nick="fraction-denominator-display-style-shift-down">
11288 </member>
11289 <member name="fraction_numerator_gap_min"
11290 value="36"
11291 c:identifier="HB_OT_MATH_CONSTANT_FRACTION_NUMERATOR_GAP_MIN"
11292 glib:nick="fraction-numerator-gap-min">
11293 </member>
11294 <member name="fraction_num_display_style_gap_min"
11295 value="37"
11296 c:identifier="HB_OT_MATH_CONSTANT_FRACTION_NUM_DISPLAY_STYLE_GAP_MIN"
11297 glib:nick="fraction-num-display-style-gap-min">
11298 </member>
11299 <member name="fraction_rule_thickness"
11300 value="38"
11301 c:identifier="HB_OT_MATH_CONSTANT_FRACTION_RULE_THICKNESS"
11302 glib:nick="fraction-rule-thickness">
11303 </member>
11304 <member name="fraction_denominator_gap_min"
11305 value="39"
11306 c:identifier="HB_OT_MATH_CONSTANT_FRACTION_DENOMINATOR_GAP_MIN"
11307 glib:nick="fraction-denominator-gap-min">
11308 </member>
11309 <member name="fraction_denom_display_style_gap_min"
11310 value="40"
11311 c:identifier="HB_OT_MATH_CONSTANT_FRACTION_DENOM_DISPLAY_STYLE_GAP_MIN"
11312 glib:nick="fraction-denom-display-style-gap-min">
11313 </member>
11314 <member name="skewed_fraction_horizontal_gap"
11315 value="41"
11316 c:identifier="HB_OT_MATH_CONSTANT_SKEWED_FRACTION_HORIZONTAL_GAP"
11317 glib:nick="skewed-fraction-horizontal-gap">
11318 </member>
11319 <member name="skewed_fraction_vertical_gap"
11320 value="42"
11321 c:identifier="HB_OT_MATH_CONSTANT_SKEWED_FRACTION_VERTICAL_GAP"
11322 glib:nick="skewed-fraction-vertical-gap">
11323 </member>
11324 <member name="overbar_vertical_gap"
11325 value="43"
11326 c:identifier="HB_OT_MATH_CONSTANT_OVERBAR_VERTICAL_GAP"
11327 glib:nick="overbar-vertical-gap">
11328 </member>
11329 <member name="overbar_rule_thickness"
11330 value="44"
11331 c:identifier="HB_OT_MATH_CONSTANT_OVERBAR_RULE_THICKNESS"
11332 glib:nick="overbar-rule-thickness">
11333 </member>
11334 <member name="overbar_extra_ascender"
11335 value="45"
11336 c:identifier="HB_OT_MATH_CONSTANT_OVERBAR_EXTRA_ASCENDER"
11337 glib:nick="overbar-extra-ascender">
11338 </member>
11339 <member name="underbar_vertical_gap"
11340 value="46"
11341 c:identifier="HB_OT_MATH_CONSTANT_UNDERBAR_VERTICAL_GAP"
11342 glib:nick="underbar-vertical-gap">
11343 </member>
11344 <member name="underbar_rule_thickness"
11345 value="47"
11346 c:identifier="HB_OT_MATH_CONSTANT_UNDERBAR_RULE_THICKNESS"
11347 glib:nick="underbar-rule-thickness">
11348 </member>
11349 <member name="underbar_extra_descender"
11350 value="48"
11351 c:identifier="HB_OT_MATH_CONSTANT_UNDERBAR_EXTRA_DESCENDER"
11352 glib:nick="underbar-extra-descender">
11353 </member>
11354 <member name="radical_vertical_gap"
11355 value="49"
11356 c:identifier="HB_OT_MATH_CONSTANT_RADICAL_VERTICAL_GAP"
11357 glib:nick="radical-vertical-gap">
11358 </member>
11359 <member name="radical_display_style_vertical_gap"
11360 value="50"
11361 c:identifier="HB_OT_MATH_CONSTANT_RADICAL_DISPLAY_STYLE_VERTICAL_GAP"
11362 glib:nick="radical-display-style-vertical-gap">
11363 </member>
11364 <member name="radical_rule_thickness"
11365 value="51"
11366 c:identifier="HB_OT_MATH_CONSTANT_RADICAL_RULE_THICKNESS"
11367 glib:nick="radical-rule-thickness">
11368 </member>
11369 <member name="radical_extra_ascender"
11370 value="52"
11371 c:identifier="HB_OT_MATH_CONSTANT_RADICAL_EXTRA_ASCENDER"
11372 glib:nick="radical-extra-ascender">
11373 </member>
11374 <member name="radical_kern_before_degree"
11375 value="53"
11376 c:identifier="HB_OT_MATH_CONSTANT_RADICAL_KERN_BEFORE_DEGREE"
11377 glib:nick="radical-kern-before-degree">
11378 </member>
11379 <member name="radical_kern_after_degree"
11380 value="54"
11381 c:identifier="HB_OT_MATH_CONSTANT_RADICAL_KERN_AFTER_DEGREE"
11382 glib:nick="radical-kern-after-degree">
11383 </member>
11384 <member name="radical_degree_bottom_raise_percent"
11385 value="55"
11386 c:identifier="HB_OT_MATH_CONSTANT_RADICAL_DEGREE_BOTTOM_RAISE_PERCENT"
11387 glib:nick="radical-degree-bottom-raise-percent">
11388 </member>
11389 </enumeration>
11390 <function name="ot_math_get_constant"
11391 c:identifier="hb_ot_math_get_constant"
11392 version="1.3.3">
11393 <doc xml:space="preserve"
11394 filename="../src/hb-ot-math.cc"
11395 line="69">Fetches the specified math constant. For most constants, the value returned
11396 is an #hb_position_t.
11397
11398 However, if the requested constant is #HB_OT_MATH_CONSTANT_SCRIPT_PERCENT_SCALE_DOWN,
11399 #HB_OT_MATH_CONSTANT_SCRIPT_SCRIPT_PERCENT_SCALE_DOWN or
11400 #HB_OT_MATH_CONSTANT_SCRIPT_PERCENT_SCALE_DOWN, then the return value is
11401 an integer between 0 and 100 representing that percentage.</doc>
11402 <source-position filename="../src/hb-ot-math.h" line="185"/>
11403 <return-value transfer-ownership="none">
11404 <doc xml:space="preserve"
11405 filename="../src/hb-ot-math.cc"
11406 line="82">the requested constant or zero</doc>
11407 <type name="position_t" c:type="hb_position_t"/>
11408 </return-value>
11409 <parameters>
11410 <parameter name="font" transfer-ownership="none">
11411 <doc xml:space="preserve"
11412 filename="../src/hb-ot-math.cc"
11413 line="71">#hb_font_t to work upon</doc>
11414 <type name="font_t" c:type="hb_font_t*"/>
11415 </parameter>
11416 <parameter name="constant" transfer-ownership="none">
11417 <doc xml:space="preserve"
11418 filename="../src/hb-ot-math.cc"
11419 line="72">#hb_ot_math_constant_t the constant to retrieve</doc>
11420 <type name="ot_math_constant_t" c:type="hb_ot_math_constant_t"/>
11421 </parameter>
11422 </parameters>
11423 </function>
11424 <function name="ot_math_get_glyph_assembly"
11425 c:identifier="hb_ot_math_get_glyph_assembly"
11426 version="1.3.3">
11427 <doc xml:space="preserve"
11428 filename="../src/hb-ot-math.cc"
11429 line="249">Fetches the GlyphAssembly for the specified font, glyph index, and direction.
11430 Returned are a list of #hb_ot_math_glyph_part_t glyph parts that can be
11431 used to draw the glyph and an italics-correction value (if one is defined
11432 in the font).
11433
11434 &lt;note&gt;The @direction parameter is only used to select between horizontal
11435 or vertical directions for the construction. Even though all #hb_direction_t
11436 values are accepted, only the result of #HB_DIRECTION_IS_HORIZONTAL is
11437 considered.&lt;/note&gt;</doc>
11438 <source-position filename="../src/hb-ot-math.h" line="219"/>
11439 <return-value transfer-ownership="none">
11440 <doc xml:space="preserve"
11441 filename="../src/hb-ot-math.cc"
11442 line="270">the total number of parts in the glyph assembly</doc>
11443 <type name="guint" c:type="unsigned int"/>
11444 </return-value>
11445 <parameters>
11446 <parameter name="font" transfer-ownership="none">
11447 <doc xml:space="preserve"
11448 filename="../src/hb-ot-math.cc"
11449 line="251">#hb_font_t to work upon</doc>
11450 <type name="font_t" c:type="hb_font_t*"/>
11451 </parameter>
11452 <parameter name="glyph" transfer-ownership="none">
11453 <doc xml:space="preserve"
11454 filename="../src/hb-ot-math.cc"
11455 line="252">The index of the glyph to stretch</doc>
11456 <type name="codepoint_t" c:type="hb_codepoint_t"/>
11457 </parameter>
11458 <parameter name="direction" transfer-ownership="none">
11459 <doc xml:space="preserve"
11460 filename="../src/hb-ot-math.cc"
11461 line="253">direction of the stretching (horizontal or vertical)</doc>
11462 <type name="direction_t" c:type="hb_direction_t"/>
11463 </parameter>
11464 <parameter name="start_offset" transfer-ownership="none">
11465 <doc xml:space="preserve"
11466 filename="../src/hb-ot-math.cc"
11467 line="254">offset of the first glyph part to retrieve</doc>
11468 <type name="guint" c:type="unsigned int"/>
11469 </parameter>
11470 <parameter name="parts_count"
11471 direction="out"
11472 caller-allocates="0"
11473 transfer-ownership="full">
11474 <doc xml:space="preserve"
11475 filename="../src/hb-ot-math.cc"
11476 line="255">Input = maximum number of glyph parts to return;
11477 Output = actual number of parts returned</doc>
11478 <type name="guint" c:type="unsigned int*"/>
11479 </parameter>
11480 <parameter name="parts"
11481 direction="out"
11482 caller-allocates="1"
11483 transfer-ownership="none">
11484 <doc xml:space="preserve"
11485 filename="../src/hb-ot-math.cc"
11486 line="257">the glyph parts returned</doc>
11487 <array length="4"
11488 zero-terminated="0"
11489 c:type="hb_ot_math_glyph_part_t*">
11490 <type name="ot_math_glyph_part_t"
11491 c:type="hb_ot_math_glyph_part_t"/>
11492 </array>
11493 </parameter>
11494 <parameter name="italics_correction"
11495 direction="out"
11496 caller-allocates="0"
11497 transfer-ownership="full">
11498 <doc xml:space="preserve"
11499 filename="../src/hb-ot-math.cc"
11500 line="258">italics correction of the glyph assembly</doc>
11501 <type name="position_t" c:type="hb_position_t*"/>
11502 </parameter>
11503 </parameters>
11504 </function>
11505 <function name="ot_math_get_glyph_italics_correction"
11506 c:identifier="hb_ot_math_get_glyph_italics_correction"
11507 version="1.3.3">
11508 <doc xml:space="preserve"
11509 filename="../src/hb-ot-math.cc"
11510 line="93">Fetches an italics-correction value (if one exists) for the specified
11511 glyph index.</doc>
11512 <source-position filename="../src/hb-ot-math.h" line="189"/>
11513 <return-value transfer-ownership="none">
11514 <doc xml:space="preserve"
11515 filename="../src/hb-ot-math.cc"
11516 line="101">the italics correction of the glyph or zero</doc>
11517 <type name="position_t" c:type="hb_position_t"/>
11518 </return-value>
11519 <parameters>
11520 <parameter name="font" transfer-ownership="none">
11521 <doc xml:space="preserve"
11522 filename="../src/hb-ot-math.cc"
11523 line="95">#hb_font_t to work upon</doc>
11524 <type name="font_t" c:type="hb_font_t*"/>
11525 </parameter>
11526 <parameter name="glyph" transfer-ownership="none">
11527 <doc xml:space="preserve"
11528 filename="../src/hb-ot-math.cc"
11529 line="96">The glyph index from which to retrieve the value</doc>
11530 <type name="codepoint_t" c:type="hb_codepoint_t"/>
11531 </parameter>
11532 </parameters>
11533 </function>
11534 <function name="ot_math_get_glyph_kerning"
11535 c:identifier="hb_ot_math_get_glyph_kerning"
11536 version="1.3.3">
11537 <doc xml:space="preserve"
11538 filename="../src/hb-ot-math.cc"
11539 line="156">Fetches the math kerning (cut-ins) value for the specified font, glyph index, and
11540 @kern.
11541
11542 If the MathKern table is found, the function examines it to find a height
11543 value that is greater or equal to @correction_height. If such a height
11544 value is found, corresponding kerning value from the table is returned. If
11545 no such height value is found, the last kerning value is returned.</doc>
11546 <source-position filename="../src/hb-ot-math.h" line="201"/>
11547 <return-value transfer-ownership="none">
11548 <doc xml:space="preserve"
11549 filename="../src/hb-ot-math.cc"
11550 line="171">requested kerning value or zero</doc>
11551 <type name="position_t" c:type="hb_position_t"/>
11552 </return-value>
11553 <parameters>
11554 <parameter name="font" transfer-ownership="none">
11555 <doc xml:space="preserve"
11556 filename="../src/hb-ot-math.cc"
11557 line="158">#hb_font_t to work upon</doc>
11558 <type name="font_t" c:type="hb_font_t*"/>
11559 </parameter>
11560 <parameter name="glyph" transfer-ownership="none">
11561 <doc xml:space="preserve"
11562 filename="../src/hb-ot-math.cc"
11563 line="159">The glyph index from which to retrieve the value</doc>
11564 <type name="codepoint_t" c:type="hb_codepoint_t"/>
11565 </parameter>
11566 <parameter name="kern" transfer-ownership="none">
11567 <doc xml:space="preserve"
11568 filename="../src/hb-ot-math.cc"
11569 line="160">The #hb_ot_math_kern_t from which to retrieve the value</doc>
11570 <type name="ot_math_kern_t" c:type="hb_ot_math_kern_t"/>
11571 </parameter>
11572 <parameter name="correction_height" transfer-ownership="none">
11573 <doc xml:space="preserve"
11574 filename="../src/hb-ot-math.cc"
11575 line="161">the correction height to use to determine the kerning.</doc>
11576 <type name="position_t" c:type="hb_position_t"/>
11577 </parameter>
11578 </parameters>
11579 </function>
11580 <function name="ot_math_get_glyph_top_accent_attachment"
11581 c:identifier="hb_ot_math_get_glyph_top_accent_attachment"
11582 version="1.3.3">
11583 <doc xml:space="preserve"
11584 filename="../src/hb-ot-math.cc"
11585 line="112">Fetches a top-accent-attachment value (if one exists) for the specified
11586 glyph index.
11587
11588 For any glyph that does not have a top-accent-attachment value - that is,
11589 a glyph not covered by the `MathTopAccentAttachment` table (or, when
11590 @font has no `MathTopAccentAttachment` table or no `MATH` table, any
11591 glyph) - the function synthesizes a value, returning the position at
11592 one-half the glyph's advance width.</doc>
11593 <source-position filename="../src/hb-ot-math.h" line="193"/>
11594 <return-value transfer-ownership="none">
11595 <doc xml:space="preserve"
11596 filename="../src/hb-ot-math.cc"
11597 line="126">the top accent attachment of the glyph or 0.5 * the advance
11598 width of @glyph</doc>
11599 <type name="position_t" c:type="hb_position_t"/>
11600 </return-value>
11601 <parameters>
11602 <parameter name="font" transfer-ownership="none">
11603 <doc xml:space="preserve"
11604 filename="../src/hb-ot-math.cc"
11605 line="114">#hb_font_t to work upon</doc>
11606 <type name="font_t" c:type="hb_font_t*"/>
11607 </parameter>
11608 <parameter name="glyph" transfer-ownership="none">
11609 <doc xml:space="preserve"
11610 filename="../src/hb-ot-math.cc"
11611 line="115">The glyph index from which to retrieve the value</doc>
11612 <type name="codepoint_t" c:type="hb_codepoint_t"/>
11613 </parameter>
11614 </parameters>
11615 </function>
11616 <function name="ot_math_get_glyph_variants"
11617 c:identifier="hb_ot_math_get_glyph_variants"
11618 version="1.3.3">
11619 <doc xml:space="preserve"
11620 filename="../src/hb-ot-math.cc"
11621 line="187">Fetches the MathGlyphConstruction for the specified font, glyph index, and
11622 direction. The corresponding list of size variants is returned as a list of
11623 #hb_ot_math_glyph_variant_t structs.
11624
11625 &lt;note&gt;The @direction parameter is only used to select between horizontal
11626 or vertical directions for the construction. Even though all #hb_direction_t
11627 values are accepted, only the result of #HB_DIRECTION_IS_HORIZONTAL is
11628 considered.&lt;/note&gt;</doc>
11629 <source-position filename="../src/hb-ot-math.h" line="207"/>
11630 <return-value transfer-ownership="none">
11631 <doc xml:space="preserve"
11632 filename="../src/hb-ot-math.cc"
11633 line="206">the total number of size variants available or zero</doc>
11634 <type name="guint" c:type="unsigned int"/>
11635 </return-value>
11636 <parameters>
11637 <parameter name="font" transfer-ownership="none">
11638 <doc xml:space="preserve"
11639 filename="../src/hb-ot-math.cc"
11640 line="189">#hb_font_t to work upon</doc>
11641 <type name="font_t" c:type="hb_font_t*"/>
11642 </parameter>
11643 <parameter name="glyph" transfer-ownership="none">
11644 <doc xml:space="preserve"
11645 filename="../src/hb-ot-math.cc"
11646 line="190">The index of the glyph to stretch</doc>
11647 <type name="codepoint_t" c:type="hb_codepoint_t"/>
11648 </parameter>
11649 <parameter name="direction" transfer-ownership="none">
11650 <doc xml:space="preserve"
11651 filename="../src/hb-ot-math.cc"
11652 line="191">The direction of the stretching (horizontal or vertical)</doc>
11653 <type name="direction_t" c:type="hb_direction_t"/>
11654 </parameter>
11655 <parameter name="start_offset" transfer-ownership="none">
11656 <doc xml:space="preserve"
11657 filename="../src/hb-ot-math.cc"
11658 line="192">offset of the first variant to retrieve</doc>
11659 <type name="guint" c:type="unsigned int"/>
11660 </parameter>
11661 <parameter name="variants_count"
11662 direction="out"
11663 caller-allocates="0"
11664 transfer-ownership="full">
11665 <doc xml:space="preserve"
11666 filename="../src/hb-ot-math.cc"
11667 line="193">Input = the maximum number of variants to return;
11668 Output = the actual number of variants returned</doc>
11669 <type name="guint" c:type="unsigned int*"/>
11670 </parameter>
11671 <parameter name="variants"
11672 direction="out"
11673 caller-allocates="1"
11674 transfer-ownership="none">
11675 <doc xml:space="preserve"
11676 filename="../src/hb-ot-math.cc"
11677 line="195">array of variants returned</doc>
11678 <array length="4"
11679 zero-terminated="0"
11680 c:type="hb_ot_math_glyph_variant_t*">
11681 <type name="ot_math_glyph_variant_t"
11682 c:type="hb_ot_math_glyph_variant_t"/>
11683 </array>
11684 </parameter>
11685 </parameters>
11686 </function>
11687 <function name="ot_math_get_min_connector_overlap"
11688 c:identifier="hb_ot_math_get_min_connector_overlap"
11689 version="1.3.3">
11690 <doc xml:space="preserve"
11691 filename="../src/hb-ot-math.cc"
11692 line="224">Fetches the MathVariants table for the specified font and returns the
11693 minimum overlap of connecting glyphs that are required to draw a glyph
11694 assembly in the specified direction.
11695
11696 &lt;note&gt;The @direction parameter is only used to select between horizontal
11697 or vertical directions for the construction. Even though all #hb_direction_t
11698 values are accepted, only the result of #HB_DIRECTION_IS_HORIZONTAL is
11699 considered.&lt;/note&gt;</doc>
11700 <source-position filename="../src/hb-ot-math.h" line="215"/>
11701 <return-value transfer-ownership="none">
11702 <doc xml:space="preserve"
11703 filename="../src/hb-ot-math.cc"
11704 line="238">requested minimum connector overlap or zero</doc>
11705 <type name="position_t" c:type="hb_position_t"/>
11706 </return-value>
11707 <parameters>
11708 <parameter name="font" transfer-ownership="none">
11709 <doc xml:space="preserve"
11710 filename="../src/hb-ot-math.cc"
11711 line="226">#hb_font_t to work upon</doc>
11712 <type name="font_t" c:type="hb_font_t*"/>
11713 </parameter>
11714 <parameter name="direction" transfer-ownership="none">
11715 <doc xml:space="preserve"
11716 filename="../src/hb-ot-math.cc"
11717 line="227">direction of the stretching (horizontal or vertical)</doc>
11718 <type name="direction_t" c:type="hb_direction_t"/>
11719 </parameter>
11720 </parameters>
11721 </function>
11722 <bitfield name="ot_math_glyph_part_flags_t"
11723 version="1.3.3"
11724 glib:type-name="hb_ot_math_glyph_part_flags_t"
11725 glib:get-type="hb_gobject_ot_math_glyph_part_flags_get_type"
11726 c:type="hb_ot_math_glyph_part_flags_t">
11727 <doc xml:space="preserve"
11728 filename="../src/hb-ot-math.h"
11729 line="146">Flags for math glyph parts.</doc>
11730 <member name="extender"
11731 value="1"
11732 c:identifier="HB_OT_MATH_GLYPH_PART_FLAG_EXTENDER"
11733 glib:nick="extender">
11734 </member>
11735 </bitfield>
11736 <record name="ot_math_glyph_part_t"
11737 c:type="hb_ot_math_glyph_part_t"
11738 version="1.3.3"
11739 glib:type-name="hb_ot_math_glyph_part_t"
11740 glib:get-type="hb_gobject_ot_math_glyph_part_get_type"
11741 c:symbol-prefix="gobject_ot_math_glyph_part">
11742 <doc xml:space="preserve"
11743 filename="../src/hb-ot-math.h"
11744 line="157">Data type to hold information for a "part" component of a math-variant glyph.
11745 Large variants for stretchable math glyphs (such as parentheses) can be constructed
11746 on the fly from parts.</doc>
11747 <source-position filename="../src/hb-ot-math.h" line="177"/>
11748 <field name="glyph" writable="1">
11749 <doc xml:space="preserve"
11750 filename="../src/hb-ot-math.h"
11751 line="159">The glyph index of the variant part</doc>
11752 <type name="codepoint_t" c:type="hb_codepoint_t"/>
11753 </field>
11754 <field name="start_connector_length" writable="1">
11755 <doc xml:space="preserve"
11756 filename="../src/hb-ot-math.h"
11757 line="160">The length of the connector on the starting side of the variant part</doc>
11758 <type name="position_t" c:type="hb_position_t"/>
11759 </field>
11760 <field name="end_connector_length" writable="1">
11761 <doc xml:space="preserve"
11762 filename="../src/hb-ot-math.h"
11763 line="161">The length of the connector on the ending side of the variant part</doc>
11764 <type name="position_t" c:type="hb_position_t"/>
11765 </field>
11766 <field name="full_advance" writable="1">
11767 <doc xml:space="preserve"
11768 filename="../src/hb-ot-math.h"
11769 line="162">The total advance of the part</doc>
11770 <type name="position_t" c:type="hb_position_t"/>
11771 </field>
11772 <field name="flags" writable="1">
11773 <doc xml:space="preserve"
11774 filename="../src/hb-ot-math.h"
11775 line="163">#hb_ot_math_glyph_part_flags_t flags for the part</doc>
11776 <type name="ot_math_glyph_part_flags_t"
11777 c:type="hb_ot_math_glyph_part_flags_t"/>
11778 </field>
11779 </record>
11780 <record name="ot_math_glyph_variant_t"
11781 c:type="hb_ot_math_glyph_variant_t"
11782 version="1.3.3"
11783 glib:type-name="hb_ot_math_glyph_variant_t"
11784 glib:get-type="hb_gobject_ot_math_glyph_variant_get_type"
11785 c:symbol-prefix="gobject_ot_math_glyph_variant">
11786 <doc xml:space="preserve"
11787 filename="../src/hb-ot-math.h"
11788 line="132">Data type to hold math-variant information for a glyph.</doc>
11789 <source-position filename="../src/hb-ot-math.h" line="144"/>
11790 <field name="glyph" writable="1">
11791 <doc xml:space="preserve"
11792 filename="../src/hb-ot-math.h"
11793 line="134">The glyph index of the variant</doc>
11794 <type name="codepoint_t" c:type="hb_codepoint_t"/>
11795 </field>
11796 <field name="advance" writable="1">
11797 <doc xml:space="preserve"
11798 filename="../src/hb-ot-math.h"
11799 line="135">The advance width of the variant</doc>
11800 <type name="position_t" c:type="hb_position_t"/>
11801 </field>
11802 </record>
11803 <function name="ot_math_has_data"
11804 c:identifier="hb_ot_math_has_data"
11805 version="1.3.3">
11806 <doc xml:space="preserve"
11807 filename="../src/hb-ot-math.cc"
11808 line="53">Tests whether a face has a `MATH` table.</doc>
11809 <source-position filename="../src/hb-ot-math.h" line="182"/>
11810 <return-value transfer-ownership="none">
11811 <doc xml:space="preserve"
11812 filename="../src/hb-ot-math.cc"
11813 line="59">true if the table is found, false otherwise</doc>
11814 <type name="bool_t" c:type="hb_bool_t"/>
11815 </return-value>
11816 <parameters>
11817 <parameter name="face" transfer-ownership="none">
11818 <doc xml:space="preserve"
11819 filename="../src/hb-ot-math.cc"
11820 line="55">#hb_face_t to test</doc>
11821 <type name="face_t" c:type="hb_face_t*"/>
11822 </parameter>
11823 </parameters>
11824 </function>
11825 <function name="ot_math_is_glyph_extended_shape"
11826 c:identifier="hb_ot_math_is_glyph_extended_shape"
11827 version="1.3.3">
11828 <doc xml:space="preserve"
11829 filename="../src/hb-ot-math.cc"
11830 line="138">Tests whether the given glyph index is an extended shape in the face.</doc>
11831 <source-position filename="../src/hb-ot-math.h" line="197"/>
11832 <return-value transfer-ownership="none">
11833 <doc xml:space="preserve"
11834 filename="../src/hb-ot-math.cc"
11835 line="145">true if the glyph is an extended shape, false otherwise</doc>
11836 <type name="bool_t" c:type="hb_bool_t"/>
11837 </return-value>
11838 <parameters>
11839 <parameter name="face" transfer-ownership="none">
11840 <doc xml:space="preserve"
11841 filename="../src/hb-ot-math.cc"
11842 line="140">#hb_face_t to work upon</doc>
11843 <type name="face_t" c:type="hb_face_t*"/>
11844 </parameter>
11845 <parameter name="glyph" transfer-ownership="none">
11846 <doc xml:space="preserve"
11847 filename="../src/hb-ot-math.cc"
11848 line="141">The glyph index to test</doc>
11849 <type name="codepoint_t" c:type="hb_codepoint_t"/>
11850 </parameter>
11851 </parameters>
11852 </function>
11853 <enumeration name="ot_math_kern_t"
11854 version="1.3.3"
11855 glib:type-name="hb_ot_math_kern_t"
11856 glib:get-type="hb_gobject_ot_math_kern_get_type"
11857 c:type="hb_ot_math_kern_t">
11858 <doc xml:space="preserve"
11859 filename="../src/hb-ot-math.h"
11860 line="117">The math kerning-table types defined for the four corners
11861 of a glyph.</doc>
11862 <member name="top_right"
11863 value="0"
11864 c:identifier="HB_OT_MATH_KERN_TOP_RIGHT"
11865 glib:nick="top-right">
11866 </member>
11867 <member name="top_left"
11868 value="1"
11869 c:identifier="HB_OT_MATH_KERN_TOP_LEFT"
11870 glib:nick="top-left">
11871 </member>
11872 <member name="bottom_right"
11873 value="2"
11874 c:identifier="HB_OT_MATH_KERN_BOTTOM_RIGHT"
11875 glib:nick="bottom-right">
11876 </member>
11877 <member name="bottom_left"
11878 value="3"
11879 c:identifier="HB_OT_MATH_KERN_BOTTOM_LEFT"
11880 glib:nick="bottom-left">
11881 </member>
11882 </enumeration>
11883 <function name="ot_meta_get_entry_tags"
11884 c:identifier="hb_ot_meta_get_entry_tags"
11885 version="2.6.0">
11886 <source-position filename="../src/hb-ot-meta.h" line="61"/>
11887 <return-value transfer-ownership="none">
11888 <doc xml:space="preserve"
11889 filename="../src/hb-ot-meta.cc"
11890 line="47">Number of all available feature types.</doc>
11891 <type name="guint" c:type="unsigned int"/>
11892 </return-value>
11893 <parameters>
11894 <parameter name="face" transfer-ownership="none">
11895 <doc xml:space="preserve"
11896 filename="../src/hb-ot-meta.cc"
11897 line="42">a face object</doc>
11898 <type name="face_t" c:type="hb_face_t*"/>
11899 </parameter>
11900 <parameter name="start_offset" transfer-ownership="none">
11901 <doc xml:space="preserve"
11902 filename="../src/hb-ot-meta.cc"
11903 line="43">iteration's start offset</doc>
11904 <type name="guint" c:type="unsigned int"/>
11905 </parameter>
11906 <parameter name="entries_count"
11907 direction="out"
11908 caller-allocates="0"
11909 transfer-ownership="full"
11910 nullable="1">
11911 <doc xml:space="preserve"
11912 filename="../src/hb-ot-meta.cc"
11913 line="44">buffer size as input, filled size as output</doc>
11914 <type name="guint" c:type="unsigned int*"/>
11915 </parameter>
11916 <parameter name="entries"
11917 direction="out"
11918 caller-allocates="1"
11919 transfer-ownership="none">
11920 <doc xml:space="preserve"
11921 filename="../src/hb-ot-meta.cc"
11922 line="45">entries tags buffer</doc>
11923 <array length="2" zero-terminated="0" c:type="hb_ot_meta_tag_t*">
11924 <type name="ot_meta_tag_t" c:type="hb_ot_meta_tag_t"/>
11925 </array>
11926 </parameter>
11927 </parameters>
11928 </function>
11929 <function name="ot_meta_reference_entry"
11930 c:identifier="hb_ot_meta_reference_entry"
11931 version="2.6.0">
11932 <doc xml:space="preserve"
11933 filename="../src/hb-ot-meta.cc"
11934 line="60">It fetches metadata entry of a given tag from a font.</doc>
11935 <source-position filename="../src/hb-ot-meta.h" line="67"/>
11936 <return-value transfer-ownership="full">
11937 <doc xml:space="preserve"
11938 filename="../src/hb-ot-meta.cc"
11939 line="67">A blob containing the blob.</doc>
11940 <type name="blob_t" c:type="hb_blob_t*"/>
11941 </return-value>
11942 <parameters>
11943 <parameter name="face" transfer-ownership="none">
11944 <doc xml:space="preserve"
11945 filename="../src/hb-ot-meta.cc"
11946 line="62">a #hb_face_t object.</doc>
11947 <type name="face_t" c:type="hb_face_t*"/>
11948 </parameter>
11949 <parameter name="meta_tag" transfer-ownership="none">
11950 <doc xml:space="preserve"
11951 filename="../src/hb-ot-meta.cc"
11952 line="63">tag of metadata you like to have.</doc>
11953 <type name="ot_meta_tag_t" c:type="hb_ot_meta_tag_t"/>
11954 </parameter>
11955 </parameters>
11956 </function>
11957 <enumeration name="ot_meta_tag_t"
11958 version="2.6.0"
11959 glib:type-name="hb_ot_meta_tag_t"
11960 glib:get-type="hb_gobject_ot_meta_tag_get_type"
11961 c:type="hb_ot_meta_tag_t">
11962 <doc xml:space="preserve"
11963 filename="../src/hb-ot-meta.h"
11964 line="36">Known metadata tags from https://docs.microsoft.com/en-us/typography/opentype/spec/meta</doc>
11965 <member name="design_languages"
11966 value="1684827751"
11967 c:identifier="HB_OT_META_TAG_DESIGN_LANGUAGES"
11968 glib:nick="design-languages">
11969 <doc xml:space="preserve"
11970 filename="../src/hb-ot-meta.h"
11971 line="38">Design languages. Text, using only
11972 Basic Latin (ASCII) characters. Indicates languages and/or scripts
11973 for the user audiences that the font was primarily designed for.</doc>
11974 </member>
11975 <member name="supported_languages"
11976 value="1936485991"
11977 c:identifier="HB_OT_META_TAG_SUPPORTED_LANGUAGES"
11978 glib:nick="supported-languages">
11979 <doc xml:space="preserve"
11980 filename="../src/hb-ot-meta.h"
11981 line="41">Supported languages. Text, using
11982 only Basic Latin (ASCII) characters. Indicates languages and/or scripts
11983 that the font is declared to be capable of supporting.</doc>
11984 </member>
11985 </enumeration>
11986 <function name="ot_metrics_get_position"
11987 c:identifier="hb_ot_metrics_get_position"
11988 version="2.6.0">
11989 <doc xml:space="preserve"
11990 filename="../src/hb-ot-metrics.cc"
11991 line="111">It fetches metrics value corresponding to a given tag from a font.</doc>
11992 <source-position filename="../src/hb-ot-metrics.h" line="107"/>
11993 <return-value transfer-ownership="none">
11994 <doc xml:space="preserve"
11995 filename="../src/hb-ot-metrics.cc"
11996 line="119">Whether found the requested metrics in the font.</doc>
11997 <type name="bool_t" c:type="hb_bool_t"/>
11998 </return-value>
11999 <parameters>
12000 <parameter name="font" transfer-ownership="none">
12001 <doc xml:space="preserve"
12002 filename="../src/hb-ot-metrics.cc"
12003 line="113">a #hb_font_t object.</doc>
12004 <type name="font_t" c:type="hb_font_t*"/>
12005 </parameter>
12006 <parameter name="metrics_tag" transfer-ownership="none">
12007 <doc xml:space="preserve"
12008 filename="../src/hb-ot-metrics.cc"
12009 line="114">tag of metrics value you like to fetch.</doc>
12010 <type name="ot_metrics_tag_t" c:type="hb_ot_metrics_tag_t"/>
12011 </parameter>
12012 <parameter name="position"
12013 direction="out"
12014 caller-allocates="0"
12015 transfer-ownership="full"
12016 optional="1"
12017 allow-none="1">
12018 <doc xml:space="preserve"
12019 filename="../src/hb-ot-metrics.cc"
12020 line="115">result of metrics value from the font.</doc>
12021 <type name="position_t" c:type="hb_position_t*"/>
12022 </parameter>
12023 </parameters>
12024 </function>
12025 <function name="ot_metrics_get_variation"
12026 c:identifier="hb_ot_metrics_get_variation"
12027 version="2.6.0">
12028 <source-position filename="../src/hb-ot-metrics.h" line="112"/>
12029 <return-value transfer-ownership="none">
12030 <type name="gfloat" c:type="float"/>
12031 </return-value>
12032 <parameters>
12033 <parameter name="font" transfer-ownership="none">
12034 <type name="font_t" c:type="hb_font_t*"/>
12035 </parameter>
12036 <parameter name="metrics_tag" transfer-ownership="none">
12037 <type name="ot_metrics_tag_t" c:type="hb_ot_metrics_tag_t"/>
12038 </parameter>
12039 </parameters>
12040 </function>
12041 <function name="ot_metrics_get_x_variation"
12042 c:identifier="hb_ot_metrics_get_x_variation"
12043 version="2.6.0">
12044 <source-position filename="../src/hb-ot-metrics.h" line="115"/>
12045 <return-value transfer-ownership="none">
12046 <type name="position_t" c:type="hb_position_t"/>
12047 </return-value>
12048 <parameters>
12049 <parameter name="font" transfer-ownership="none">
12050 <type name="font_t" c:type="hb_font_t*"/>
12051 </parameter>
12052 <parameter name="metrics_tag" transfer-ownership="none">
12053 <type name="ot_metrics_tag_t" c:type="hb_ot_metrics_tag_t"/>
12054 </parameter>
12055 </parameters>
12056 </function>
12057 <function name="ot_metrics_get_y_variation"
12058 c:identifier="hb_ot_metrics_get_y_variation"
12059 version="2.6.0">
12060 <source-position filename="../src/hb-ot-metrics.h" line="118"/>
12061 <return-value transfer-ownership="none">
12062 <type name="position_t" c:type="hb_position_t"/>
12063 </return-value>
12064 <parameters>
12065 <parameter name="font" transfer-ownership="none">
12066 <type name="font_t" c:type="hb_font_t*"/>
12067 </parameter>
12068 <parameter name="metrics_tag" transfer-ownership="none">
12069 <type name="ot_metrics_tag_t" c:type="hb_ot_metrics_tag_t"/>
12070 </parameter>
12071 </parameters>
12072 </function>
12073 <enumeration name="ot_metrics_tag_t"
12074 version="2.6.0"
12075 glib:type-name="hb_ot_metrics_tag_t"
12076 glib:get-type="hb_gobject_ot_metrics_tag_get_type"
12077 c:type="hb_ot_metrics_tag_t">
12078 <doc xml:space="preserve"
12079 filename="../src/hb-ot-metrics.h"
12080 line="38">From https://docs.microsoft.com/en-us/typography/opentype/spec/mvar#value-tags</doc>
12081 <member name="horizontal_ascender"
12082 value="1751216995"
12083 c:identifier="HB_OT_METRICS_TAG_HORIZONTAL_ASCENDER"
12084 glib:nick="horizontal-ascender">
12085 <doc xml:space="preserve"
12086 filename="../src/hb-ot-metrics.h"
12087 line="40">horizontal ascender.</doc>
12088 </member>
12089 <member name="horizontal_descender"
12090 value="1751413603"
12091 c:identifier="HB_OT_METRICS_TAG_HORIZONTAL_DESCENDER"
12092 glib:nick="horizontal-descender">
12093 <doc xml:space="preserve"
12094 filename="../src/hb-ot-metrics.h"
12095 line="41">horizontal descender.</doc>
12096 </member>
12097 <member name="horizontal_line_gap"
12098 value="1751934832"
12099 c:identifier="HB_OT_METRICS_TAG_HORIZONTAL_LINE_GAP"
12100 glib:nick="horizontal-line-gap">
12101 <doc xml:space="preserve"
12102 filename="../src/hb-ot-metrics.h"
12103 line="42">horizontal line gap.</doc>
12104 </member>
12105 <member name="horizontal_clipping_ascent"
12106 value="1751346273"
12107 c:identifier="HB_OT_METRICS_TAG_HORIZONTAL_CLIPPING_ASCENT"
12108 glib:nick="horizontal-clipping-ascent">
12109 <doc xml:space="preserve"
12110 filename="../src/hb-ot-metrics.h"
12111 line="43">horizontal clipping ascent.</doc>
12112 </member>
12113 <member name="horizontal_clipping_descent"
12114 value="1751346276"
12115 c:identifier="HB_OT_METRICS_TAG_HORIZONTAL_CLIPPING_DESCENT"
12116 glib:nick="horizontal-clipping-descent">
12117 <doc xml:space="preserve"
12118 filename="../src/hb-ot-metrics.h"
12119 line="44">horizontal clipping descent.</doc>
12120 </member>
12121 <member name="vertical_ascender"
12122 value="1986098019"
12123 c:identifier="HB_OT_METRICS_TAG_VERTICAL_ASCENDER"
12124 glib:nick="vertical-ascender">
12125 <doc xml:space="preserve"
12126 filename="../src/hb-ot-metrics.h"
12127 line="45">vertical ascender.</doc>
12128 </member>
12129 <member name="vertical_descender"
12130 value="1986294627"
12131 c:identifier="HB_OT_METRICS_TAG_VERTICAL_DESCENDER"
12132 glib:nick="vertical-descender">
12133 <doc xml:space="preserve"
12134 filename="../src/hb-ot-metrics.h"
12135 line="46">vertical descender.</doc>
12136 </member>
12137 <member name="vertical_line_gap"
12138 value="1986815856"
12139 c:identifier="HB_OT_METRICS_TAG_VERTICAL_LINE_GAP"
12140 glib:nick="vertical-line-gap">
12141 <doc xml:space="preserve"
12142 filename="../src/hb-ot-metrics.h"
12143 line="47">vertical line gap.</doc>
12144 </member>
12145 <member name="horizontal_caret_rise"
12146 value="1751347827"
12147 c:identifier="HB_OT_METRICS_TAG_HORIZONTAL_CARET_RISE"
12148 glib:nick="horizontal-caret-rise">
12149 <doc xml:space="preserve"
12150 filename="../src/hb-ot-metrics.h"
12151 line="48">horizontal caret rise.</doc>
12152 </member>
12153 <member name="horizontal_caret_run"
12154 value="1751347822"
12155 c:identifier="HB_OT_METRICS_TAG_HORIZONTAL_CARET_RUN"
12156 glib:nick="horizontal-caret-run">
12157 <doc xml:space="preserve"
12158 filename="../src/hb-ot-metrics.h"
12159 line="49">horizontal caret run.</doc>
12160 </member>
12161 <member name="horizontal_caret_offset"
12162 value="1751347046"
12163 c:identifier="HB_OT_METRICS_TAG_HORIZONTAL_CARET_OFFSET"
12164 glib:nick="horizontal-caret-offset">
12165 <doc xml:space="preserve"
12166 filename="../src/hb-ot-metrics.h"
12167 line="50">horizontal caret offset.</doc>
12168 </member>
12169 <member name="vertical_caret_rise"
12170 value="1986228851"
12171 c:identifier="HB_OT_METRICS_TAG_VERTICAL_CARET_RISE"
12172 glib:nick="vertical-caret-rise">
12173 <doc xml:space="preserve"
12174 filename="../src/hb-ot-metrics.h"
12175 line="51">vertical caret rise.</doc>
12176 </member>
12177 <member name="vertical_caret_run"
12178 value="1986228846"
12179 c:identifier="HB_OT_METRICS_TAG_VERTICAL_CARET_RUN"
12180 glib:nick="vertical-caret-run">
12181 <doc xml:space="preserve"
12182 filename="../src/hb-ot-metrics.h"
12183 line="52">vertical caret run.</doc>
12184 </member>
12185 <member name="vertical_caret_offset"
12186 value="1986228070"
12187 c:identifier="HB_OT_METRICS_TAG_VERTICAL_CARET_OFFSET"
12188 glib:nick="vertical-caret-offset">
12189 <doc xml:space="preserve"
12190 filename="../src/hb-ot-metrics.h"
12191 line="53">vertical caret offset.</doc>
12192 </member>
12193 <member name="x_height"
12194 value="2020108148"
12195 c:identifier="HB_OT_METRICS_TAG_X_HEIGHT"
12196 glib:nick="x-height">
12197 <doc xml:space="preserve"
12198 filename="../src/hb-ot-metrics.h"
12199 line="54">x height.</doc>
12200 </member>
12201 <member name="cap_height"
12202 value="1668311156"
12203 c:identifier="HB_OT_METRICS_TAG_CAP_HEIGHT"
12204 glib:nick="cap-height">
12205 <doc xml:space="preserve"
12206 filename="../src/hb-ot-metrics.h"
12207 line="55">cap height.</doc>
12208 </member>
12209 <member name="subscript_em_x_size"
12210 value="1935833203"
12211 c:identifier="HB_OT_METRICS_TAG_SUBSCRIPT_EM_X_SIZE"
12212 glib:nick="subscript-em-x-size">
12213 <doc xml:space="preserve"
12214 filename="../src/hb-ot-metrics.h"
12215 line="56">subscript em x size.</doc>
12216 </member>
12217 <member name="subscript_em_y_size"
12218 value="1935833459"
12219 c:identifier="HB_OT_METRICS_TAG_SUBSCRIPT_EM_Y_SIZE"
12220 glib:nick="subscript-em-y-size">
12221 <doc xml:space="preserve"
12222 filename="../src/hb-ot-metrics.h"
12223 line="57">subscript em y size.</doc>
12224 </member>
12225 <member name="subscript_em_x_offset"
12226 value="1935833199"
12227 c:identifier="HB_OT_METRICS_TAG_SUBSCRIPT_EM_X_OFFSET"
12228 glib:nick="subscript-em-x-offset">
12229 <doc xml:space="preserve"
12230 filename="../src/hb-ot-metrics.h"
12231 line="58">subscript em x offset.</doc>
12232 </member>
12233 <member name="subscript_em_y_offset"
12234 value="1935833455"
12235 c:identifier="HB_OT_METRICS_TAG_SUBSCRIPT_EM_Y_OFFSET"
12236 glib:nick="subscript-em-y-offset">
12237 <doc xml:space="preserve"
12238 filename="../src/hb-ot-metrics.h"
12239 line="59">subscript em y offset.</doc>
12240 </member>
12241 <member name="superscript_em_x_size"
12242 value="1936750707"
12243 c:identifier="HB_OT_METRICS_TAG_SUPERSCRIPT_EM_X_SIZE"
12244 glib:nick="superscript-em-x-size">
12245 <doc xml:space="preserve"
12246 filename="../src/hb-ot-metrics.h"
12247 line="60">superscript em x size.</doc>
12248 </member>
12249 <member name="superscript_em_y_size"
12250 value="1936750963"
12251 c:identifier="HB_OT_METRICS_TAG_SUPERSCRIPT_EM_Y_SIZE"
12252 glib:nick="superscript-em-y-size">
12253 <doc xml:space="preserve"
12254 filename="../src/hb-ot-metrics.h"
12255 line="61">superscript em y size.</doc>
12256 </member>
12257 <member name="superscript_em_x_offset"
12258 value="1936750703"
12259 c:identifier="HB_OT_METRICS_TAG_SUPERSCRIPT_EM_X_OFFSET"
12260 glib:nick="superscript-em-x-offset">
12261 <doc xml:space="preserve"
12262 filename="../src/hb-ot-metrics.h"
12263 line="62">superscript em x offset.</doc>
12264 </member>
12265 <member name="superscript_em_y_offset"
12266 value="1936750959"
12267 c:identifier="HB_OT_METRICS_TAG_SUPERSCRIPT_EM_Y_OFFSET"
12268 glib:nick="superscript-em-y-offset">
12269 <doc xml:space="preserve"
12270 filename="../src/hb-ot-metrics.h"
12271 line="63">superscript em y offset.</doc>
12272 </member>
12273 <member name="strikeout_size"
12274 value="1937011315"
12275 c:identifier="HB_OT_METRICS_TAG_STRIKEOUT_SIZE"
12276 glib:nick="strikeout-size">
12277 <doc xml:space="preserve"
12278 filename="../src/hb-ot-metrics.h"
12279 line="64">strikeout size.</doc>
12280 </member>
12281 <member name="strikeout_offset"
12282 value="1937011311"
12283 c:identifier="HB_OT_METRICS_TAG_STRIKEOUT_OFFSET"
12284 glib:nick="strikeout-offset">
12285 <doc xml:space="preserve"
12286 filename="../src/hb-ot-metrics.h"
12287 line="65">strikeout offset.</doc>
12288 </member>
12289 <member name="underline_size"
12290 value="1970168947"
12291 c:identifier="HB_OT_METRICS_TAG_UNDERLINE_SIZE"
12292 glib:nick="underline-size">
12293 <doc xml:space="preserve"
12294 filename="../src/hb-ot-metrics.h"
12295 line="66">underline size.</doc>
12296 </member>
12297 <member name="underline_offset"
12298 value="1970168943"
12299 c:identifier="HB_OT_METRICS_TAG_UNDERLINE_OFFSET"
12300 glib:nick="underline-offset">
12301 <doc xml:space="preserve"
12302 filename="../src/hb-ot-metrics.h"
12303 line="67">underline offset.</doc>
12304 </member>
12305 </enumeration>
12306 <record name="ot_name_entry_t" c:type="hb_ot_name_entry_t" version="2.1.0">
12307 <doc xml:space="preserve"
12308 filename="../src/hb-ot-name.h"
12309 line="82">Structure representing a name ID in a particular language.</doc>
12310 <source-position filename="../src/hb-ot-name.h" line="98"/>
12311 <field name="name_id" writable="1">
12312 <doc xml:space="preserve"
12313 filename="../src/hb-ot-name.h"
12314 line="84">name ID</doc>
12315 <type name="ot_name_id_t" c:type="hb_ot_name_id_t"/>
12316 </field>
12317 <field name="var" readable="0" private="1">
12318 <type name="var_int_t" c:type="hb_var_int_t"/>
12319 </field>
12320 <field name="language" writable="1">
12321 <doc xml:space="preserve"
12322 filename="../src/hb-ot-name.h"
12323 line="85">language</doc>
12324 <type name="language_t" c:type="hb_language_t"/>
12325 </field>
12326 </record>
12327 <function name="ot_name_get_utf16"
12328 c:identifier="hb_ot_name_get_utf16"
12329 version="2.1.0">
12330 <doc xml:space="preserve"
12331 filename="../src/hb-ot-name.cc"
12332 line="175">Fetches a font name from the OpenType 'name' table.
12333 If @language is #HB_LANGUAGE_INVALID, English ("en") is assumed.
12334 Returns string in UTF-16 encoding.</doc>
12335 <source-position filename="../src/hb-ot-name.h" line="113"/>
12336 <return-value transfer-ownership="none">
12337 <doc xml:space="preserve"
12338 filename="../src/hb-ot-name.cc"
12339 line="188">full length of the requested string, or 0 if not found.</doc>
12340 <type name="guint" c:type="unsigned int"/>
12341 </return-value>
12342 <parameters>
12343 <parameter name="face" transfer-ownership="none">
12344 <doc xml:space="preserve"
12345 filename="../src/hb-ot-name.cc"
12346 line="177">font face.</doc>
12347 <type name="face_t" c:type="hb_face_t*"/>
12348 </parameter>
12349 <parameter name="name_id" transfer-ownership="none">
12350 <doc xml:space="preserve"
12351 filename="../src/hb-ot-name.cc"
12352 line="178">OpenType name identifier to fetch.</doc>
12353 <type name="ot_name_id_t" c:type="hb_ot_name_id_t"/>
12354 </parameter>
12355 <parameter name="language" transfer-ownership="none">
12356 <doc xml:space="preserve"
12357 filename="../src/hb-ot-name.cc"
12358 line="179">language to fetch the name for.</doc>
12359 <type name="language_t" c:type="hb_language_t"/>
12360 </parameter>
12361 <parameter name="text_size"
12362 direction="out"
12363 caller-allocates="0"
12364 transfer-ownership="full"
12365 nullable="1">
12366 <doc xml:space="preserve"
12367 filename="../src/hb-ot-name.cc"
12368 line="180">input size of @text buffer, and output size of
12369 text written to buffer.</doc>
12370 <type name="guint" c:type="unsigned int*"/>
12371 </parameter>
12372 <parameter name="text"
12373 direction="out"
12374 caller-allocates="1"
12375 transfer-ownership="none">
12376 <doc xml:space="preserve"
12377 filename="../src/hb-ot-name.cc"
12378 line="182">buffer to write fetched name into.</doc>
12379 <array length="3" zero-terminated="0" c:type="uint16_t*">
12380 <type name="guint16" c:type="uint16_t"/>
12381 </array>
12382 </parameter>
12383 </parameters>
12384 </function>
12385 <function name="ot_name_get_utf32"
12386 c:identifier="hb_ot_name_get_utf32"
12387 version="2.1.0">
12388 <doc xml:space="preserve"
12389 filename="../src/hb-ot-name.cc"
12390 line="201">Fetches a font name from the OpenType 'name' table.
12391 If @language is #HB_LANGUAGE_INVALID, English ("en") is assumed.
12392 Returns string in UTF-32 encoding.</doc>
12393 <source-position filename="../src/hb-ot-name.h" line="120"/>
12394 <return-value transfer-ownership="none">
12395 <doc xml:space="preserve"
12396 filename="../src/hb-ot-name.cc"
12397 line="214">full length of the requested string, or 0 if not found.</doc>
12398 <type name="guint" c:type="unsigned int"/>
12399 </return-value>
12400 <parameters>
12401 <parameter name="face" transfer-ownership="none">
12402 <doc xml:space="preserve"
12403 filename="../src/hb-ot-name.cc"
12404 line="203">font face.</doc>
12405 <type name="face_t" c:type="hb_face_t*"/>
12406 </parameter>
12407 <parameter name="name_id" transfer-ownership="none">
12408 <doc xml:space="preserve"
12409 filename="../src/hb-ot-name.cc"
12410 line="204">OpenType name identifier to fetch.</doc>
12411 <type name="ot_name_id_t" c:type="hb_ot_name_id_t"/>
12412 </parameter>
12413 <parameter name="language" transfer-ownership="none">
12414 <doc xml:space="preserve"
12415 filename="../src/hb-ot-name.cc"
12416 line="205">language to fetch the name for.</doc>
12417 <type name="language_t" c:type="hb_language_t"/>
12418 </parameter>
12419 <parameter name="text_size"
12420 direction="out"
12421 caller-allocates="0"
12422 transfer-ownership="full"
12423 nullable="1">
12424 <doc xml:space="preserve"
12425 filename="../src/hb-ot-name.cc"
12426 line="206">input size of @text buffer, and output size of
12427 text written to buffer.</doc>
12428 <type name="guint" c:type="unsigned int*"/>
12429 </parameter>
12430 <parameter name="text"
12431 direction="out"
12432 caller-allocates="1"
12433 transfer-ownership="none">
12434 <doc xml:space="preserve"
12435 filename="../src/hb-ot-name.cc"
12436 line="208">buffer to write fetched name into.</doc>
12437 <array length="3" zero-terminated="0" c:type="uint32_t*">
12438 <type name="guint32" c:type="uint32_t"/>
12439 </array>
12440 </parameter>
12441 </parameters>
12442 </function>
12443 <function name="ot_name_get_utf8"
12444 c:identifier="hb_ot_name_get_utf8"
12445 version="2.1.0">
12446 <doc xml:space="preserve"
12447 filename="../src/hb-ot-name.cc"
12448 line="148">Fetches a font name from the OpenType 'name' table.
12449 If @language is #HB_LANGUAGE_INVALID, English ("en") is assumed.
12450 Returns string in UTF-8 encoding.</doc>
12451 <source-position filename="../src/hb-ot-name.h" line="106"/>
12452 <return-value transfer-ownership="none">
12453 <doc xml:space="preserve"
12454 filename="../src/hb-ot-name.cc"
12455 line="161">full length of the requested string, or 0 if not found.</doc>
12456 <type name="guint" c:type="unsigned int"/>
12457 </return-value>
12458 <parameters>
12459 <parameter name="face" transfer-ownership="none">
12460 <doc xml:space="preserve"
12461 filename="../src/hb-ot-name.cc"
12462 line="150">font face.</doc>
12463 <type name="face_t" c:type="hb_face_t*"/>
12464 </parameter>
12465 <parameter name="name_id" transfer-ownership="none">
12466 <doc xml:space="preserve"
12467 filename="../src/hb-ot-name.cc"
12468 line="151">OpenType name identifier to fetch.</doc>
12469 <type name="ot_name_id_t" c:type="hb_ot_name_id_t"/>
12470 </parameter>
12471 <parameter name="language" transfer-ownership="none">
12472 <doc xml:space="preserve"
12473 filename="../src/hb-ot-name.cc"
12474 line="152">language to fetch the name for.</doc>
12475 <type name="language_t" c:type="hb_language_t"/>
12476 </parameter>
12477 <parameter name="text_size"
12478 direction="out"
12479 caller-allocates="0"
12480 transfer-ownership="full"
12481 nullable="1">
12482 <doc xml:space="preserve"
12483 filename="../src/hb-ot-name.cc"
12484 line="153">input size of @text buffer, and output size of
12485 text written to buffer.</doc>
12486 <type name="guint" c:type="unsigned int*"/>
12487 </parameter>
12488 <parameter name="text"
12489 direction="out"
12490 caller-allocates="1"
12491 transfer-ownership="none">
12492 <doc xml:space="preserve"
12493 filename="../src/hb-ot-name.cc"
12494 line="155">buffer to write fetched name into.</doc>
12495 <array length="3" zero-terminated="0" c:type="char*">
12496 <type name="utf8" c:type="char"/>
12497 </array>
12498 </parameter>
12499 </parameters>
12500 </function>
12501 <function name="ot_name_list_names"
12502 c:identifier="hb_ot_name_list_names"
12503 version="2.1.0">
12504 <doc xml:space="preserve"
12505 filename="../src/hb-ot-name.cc"
12506 line="46">Enumerates all available name IDs and language combinations. Returned
12507 array is owned by the @face and should not be modified. It can be
12508 used as long as @face is alive.</doc>
12509 <source-position filename="../src/hb-ot-name.h" line="101"/>
12510 <return-value transfer-ownership="none">
12511 <doc xml:space="preserve"
12512 filename="../src/hb-ot-name.cc"
12513 line="55">Array of available name entries.</doc>
12514 <array length="1"
12515 zero-terminated="0"
12516 c:type="const hb_ot_name_entry_t*">
12517 <type name="ot_name_entry_t" c:type="hb_ot_name_entry_t"/>
12518 </array>
12519 </return-value>
12520 <parameters>
12521 <parameter name="face" transfer-ownership="none">
12522 <doc xml:space="preserve"
12523 filename="../src/hb-ot-name.cc"
12524 line="48">font face.</doc>
12525 <type name="face_t" c:type="hb_face_t*"/>
12526 </parameter>
12527 <parameter name="num_entries"
12528 direction="out"
12529 caller-allocates="0"
12530 transfer-ownership="full"
12531 optional="1"
12532 allow-none="1">
12533 <doc xml:space="preserve"
12534 filename="../src/hb-ot-name.cc"
12535 line="49">number of returned entries.</doc>
12536 <type name="guint" c:type="unsigned int*"/>
12537 </parameter>
12538 </parameters>
12539 </function>
12540 <function name="ot_shape_glyphs_closure"
12541 c:identifier="hb_ot_shape_glyphs_closure"
12542 version="0.9.2">
12543 <source-position filename="../src/hb-ot-shape.h" line="40"/>
12544 <return-value transfer-ownership="none">
12545 <type name="none" c:type="void"/>
12546 </return-value>
12547 <parameters>
12548 <parameter name="font" transfer-ownership="none">
12549 <type name="font_t" c:type="hb_font_t*"/>
12550 </parameter>
12551 <parameter name="buffer" transfer-ownership="none">
12552 <type name="buffer_t" c:type="hb_buffer_t*"/>
12553 </parameter>
12554 <parameter name="features" transfer-ownership="none">
12555 <type name="feature_t" c:type="const hb_feature_t*"/>
12556 </parameter>
12557 <parameter name="num_features" transfer-ownership="none">
12558 <type name="guint" c:type="unsigned int"/>
12559 </parameter>
12560 <parameter name="glyphs" transfer-ownership="none">
12561 <type name="set_t" c:type="hb_set_t*"/>
12562 </parameter>
12563 </parameters>
12564 </function>
12565 <function name="ot_tag_from_language"
12566 c:identifier="hb_ot_tag_from_language">
12567 <source-position filename="../src/hb-ot-deprecated.h" line="68"/>
12568 <return-value transfer-ownership="none">
12569 <type name="tag_t" c:type="hb_tag_t"/>
12570 </return-value>
12571 <parameters>
12572 <parameter name="language" transfer-ownership="none">
12573 <type name="language_t" c:type="hb_language_t"/>
12574 </parameter>
12575 </parameters>
12576 </function>
12577 <function name="ot_tag_to_language"
12578 c:identifier="hb_ot_tag_to_language"
12579 version="0.9.2">
12580 <source-position filename="../src/hb-ot-layout.h" line="80"/>
12581 <return-value transfer-ownership="none">
12582 <type name="language_t" c:type="hb_language_t"/>
12583 </return-value>
12584 <parameters>
12585 <parameter name="tag" transfer-ownership="none">
12586 <type name="tag_t" c:type="hb_tag_t"/>
12587 </parameter>
12588 </parameters>
12589 </function>
12590 <function name="ot_tag_to_script" c:identifier="hb_ot_tag_to_script">
12591 <source-position filename="../src/hb-ot-layout.h" line="77"/>
12592 <return-value transfer-ownership="none">
12593 <type name="script_t" c:type="hb_script_t"/>
12594 </return-value>
12595 <parameters>
12596 <parameter name="tag" transfer-ownership="none">
12597 <type name="tag_t" c:type="hb_tag_t"/>
12598 </parameter>
12599 </parameters>
12600 </function>
12601 <function name="ot_tags_from_script" c:identifier="hb_ot_tags_from_script">
12602 <source-position filename="../src/hb-ot-deprecated.h" line="63"/>
12603 <return-value transfer-ownership="none">
12604 <type name="none" c:type="void"/>
12605 </return-value>
12606 <parameters>
12607 <parameter name="script" transfer-ownership="none">
12608 <type name="script_t" c:type="hb_script_t"/>
12609 </parameter>
12610 <parameter name="script_tag_1" transfer-ownership="none">
12611 <type name="tag_t" c:type="hb_tag_t*"/>
12612 </parameter>
12613 <parameter name="script_tag_2" transfer-ownership="none">
12614 <type name="tag_t" c:type="hb_tag_t*"/>
12615 </parameter>
12616 </parameters>
12617 </function>
12618 <function name="ot_tags_from_script_and_language"
12619 c:identifier="hb_ot_tags_from_script_and_language"
12620 version="2.0.0">
12621 <doc xml:space="preserve"
12622 filename="../src/hb-ot-tag.cc"
12623 line="349">Converts an #hb_script_t and an #hb_language_t to script and language tags.</doc>
12624 <source-position filename="../src/hb-ot-layout.h" line="69"/>
12625 <return-value transfer-ownership="none">
12626 <type name="none" c:type="void"/>
12627 </return-value>
12628 <parameters>
12629 <parameter name="script" transfer-ownership="none">
12630 <doc xml:space="preserve"
12631 filename="../src/hb-ot-tag.cc"
12632 line="351">an #hb_script_t to convert.</doc>
12633 <type name="script_t" c:type="hb_script_t"/>
12634 </parameter>
12635 <parameter name="language" transfer-ownership="none">
12636 <doc xml:space="preserve"
12637 filename="../src/hb-ot-tag.cc"
12638 line="352">an #hb_language_t to convert.</doc>
12639 <type name="language_t" c:type="hb_language_t"/>
12640 </parameter>
12641 <parameter name="script_count"
12642 transfer-ownership="none"
12643 nullable="1"
12644 allow-none="1">
12645 <doc xml:space="preserve"
12646 filename="../src/hb-ot-tag.cc"
12647 line="353">maximum number of script tags to retrieve (IN)
12648 and actual number of script tags retrieved (OUT)</doc>
12649 <type name="guint" c:type="unsigned int*"/>
12650 </parameter>
12651 <parameter name="script_tags"
12652 direction="out"
12653 caller-allocates="0"
12654 transfer-ownership="full"
12655 optional="1"
12656 allow-none="1">
12657 <doc xml:space="preserve"
12658 filename="../src/hb-ot-tag.cc"
12659 line="355">array of size at least @script_count to store the
12660 script tag results</doc>
12661 <type name="tag_t" c:type="hb_tag_t*"/>
12662 </parameter>
12663 <parameter name="language_count"
12664 transfer-ownership="none"
12665 nullable="1"
12666 allow-none="1">
12667 <doc xml:space="preserve"
12668 filename="../src/hb-ot-tag.cc"
12669 line="357">maximum number of language tags to retrieve
12670 (IN) and actual number of language tags retrieved (OUT)</doc>
12671 <type name="guint" c:type="unsigned int*"/>
12672 </parameter>
12673 <parameter name="language_tags"
12674 direction="out"
12675 caller-allocates="0"
12676 transfer-ownership="full"
12677 optional="1"
12678 allow-none="1">
12679 <doc xml:space="preserve"
12680 filename="../src/hb-ot-tag.cc"
12681 line="359">array of size at least @language_count to store
12682 the language tag results</doc>
12683 <type name="tag_t" c:type="hb_tag_t*"/>
12684 </parameter>
12685 </parameters>
12686 </function>
12687 <function name="ot_tags_to_script_and_language"
12688 c:identifier="hb_ot_tags_to_script_and_language"
12689 version="2.0.0">
12690 <doc xml:space="preserve"
12691 filename="../src/hb-ot-tag.cc"
12692 line="476">Converts a script tag and a language tag to an #hb_script_t and an
12693 #hb_language_t.</doc>
12694 <source-position filename="../src/hb-ot-layout.h" line="83"/>
12695 <return-value transfer-ownership="none">
12696 <type name="none" c:type="void"/>
12697 </return-value>
12698 <parameters>
12699 <parameter name="script_tag" transfer-ownership="none">
12700 <doc xml:space="preserve"
12701 filename="../src/hb-ot-tag.cc"
12702 line="478">a script tag</doc>
12703 <type name="tag_t" c:type="hb_tag_t"/>
12704 </parameter>
12705 <parameter name="language_tag" transfer-ownership="none">
12706 <doc xml:space="preserve"
12707 filename="../src/hb-ot-tag.cc"
12708 line="479">a language tag</doc>
12709 <type name="tag_t" c:type="hb_tag_t"/>
12710 </parameter>
12711 <parameter name="script"
12712 transfer-ownership="none"
12713 nullable="1"
12714 allow-none="1">
12715 <doc xml:space="preserve"
12716 filename="../src/hb-ot-tag.cc"
12717 line="480">the #hb_script_t corresponding to @script_tag (OUT).</doc>
12718 <type name="script_t" c:type="hb_script_t*"/>
12719 </parameter>
12720 <parameter name="language"
12721 transfer-ownership="none"
12722 nullable="1"
12723 allow-none="1">
12724 <doc xml:space="preserve"
12725 filename="../src/hb-ot-tag.cc"
12726 line="481">the #hb_language_t corresponding to @script_tag and
12727 @language_tag (OUT).</doc>
12728 <type name="language_t" c:type="hb_language_t*"/>
12729 </parameter>
12730 </parameters>
12731 </function>
12732 <bitfield name="ot_var_axis_flags_t"
12733 version="2.2.0"
12734 glib:type-name="hb_ot_var_axis_flags_t"
12735 glib:get-type="hb_gobject_ot_var_axis_flags_get_type"
12736 c:type="hb_ot_var_axis_flags_t">
12737 <member name="hidden"
12738 value="1"
12739 c:identifier="HB_OT_VAR_AXIS_FLAG_HIDDEN"
12740 glib:nick="hidden">
12741 <doc xml:space="preserve"
12742 filename="../src/hb-ot-var.h"
12743 line="64">The axis should not be exposed directly in user interfaces.</doc>
12744 </member>
12745 </bitfield>
12746 <record name="ot_var_axis_info_t"
12747 c:type="hb_ot_var_axis_info_t"
12748 version="2.2.0">
12749 <source-position filename="../src/hb-ot-var.h" line="90"/>
12750 <field name="axis_index" writable="1">
12751 <type name="guint" c:type="unsigned int"/>
12752 </field>
12753 <field name="tag" writable="1">
12754 <type name="tag_t" c:type="hb_tag_t"/>
12755 </field>
12756 <field name="name_id" writable="1">
12757 <type name="ot_name_id_t" c:type="hb_ot_name_id_t"/>
12758 </field>
12759 <field name="flags" writable="1">
12760 <type name="ot_var_axis_flags_t" c:type="hb_ot_var_axis_flags_t"/>
12761 </field>
12762 <field name="min_value" writable="1">
12763 <type name="gfloat" c:type="float"/>
12764 </field>
12765 <field name="default_value" writable="1">
12766 <type name="gfloat" c:type="float"/>
12767 </field>
12768 <field name="max_value" writable="1">
12769 <type name="gfloat" c:type="float"/>
12770 </field>
12771 <field name="reserved" readable="0" private="1">
12772 <type name="guint" c:type="unsigned int"/>
12773 </field>
12774 </record>
12775 <record name="ot_var_axis_t"
12776 c:type="hb_ot_var_axis_t"
12777 version="1.4.2"
12778 deprecated="1"
12779 deprecated-version="2.2.0">
12780 <source-position filename="../src/hb-ot-deprecated.h" line="92"/>
12781 <field name="tag" writable="1">
12782 <type name="tag_t" c:type="hb_tag_t"/>
12783 </field>
12784 <field name="name_id" writable="1">
12785 <type name="ot_name_id_t" c:type="hb_ot_name_id_t"/>
12786 </field>
12787 <field name="min_value" writable="1">
12788 <type name="gfloat" c:type="float"/>
12789 </field>
12790 <field name="default_value" writable="1">
12791 <type name="gfloat" c:type="float"/>
12792 </field>
12793 <field name="max_value" writable="1">
12794 <type name="gfloat" c:type="float"/>
12795 </field>
12796 </record>
12797 <function name="ot_var_find_axis"
12798 c:identifier="hb_ot_var_find_axis"
12799 version="1.4.2"
12800 deprecated="1"
12801 deprecated-version="2.2.0">
12802 <source-position filename="../src/hb-ot-deprecated.h" line="101"/>
12803 <return-value transfer-ownership="none">
12804 <type name="bool_t" c:type="hb_bool_t"/>
12805 </return-value>
12806 <parameters>
12807 <parameter name="face" transfer-ownership="none">
12808 <type name="face_t" c:type="hb_face_t*"/>
12809 </parameter>
12810 <parameter name="axis_tag" transfer-ownership="none">
12811 <type name="tag_t" c:type="hb_tag_t"/>
12812 </parameter>
12813 <parameter name="axis_index" transfer-ownership="none">
12814 <type name="guint" c:type="unsigned int*"/>
12815 </parameter>
12816 <parameter name="axis_info" transfer-ownership="none">
12817 <type name="ot_var_axis_t" c:type="hb_ot_var_axis_t*"/>
12818 </parameter>
12819 </parameters>
12820 </function>
12821 <function name="ot_var_find_axis_info"
12822 c:identifier="hb_ot_var_find_axis_info"
12823 version="2.2.0">
12824 <source-position filename="../src/hb-ot-var.h" line="99"/>
12825 <return-value transfer-ownership="none">
12826 <type name="bool_t" c:type="hb_bool_t"/>
12827 </return-value>
12828 <parameters>
12829 <parameter name="face" transfer-ownership="none">
12830 <type name="face_t" c:type="hb_face_t*"/>
12831 </parameter>
12832 <parameter name="axis_tag" transfer-ownership="none">
12833 <type name="tag_t" c:type="hb_tag_t"/>
12834 </parameter>
12835 <parameter name="axis_info" transfer-ownership="none">
12836 <type name="ot_var_axis_info_t" c:type="hb_ot_var_axis_info_t*"/>
12837 </parameter>
12838 </parameters>
12839 </function>
12840 <function name="ot_var_get_axes"
12841 c:identifier="hb_ot_var_get_axes"
12842 version="1.4.2"
12843 deprecated="1"
12844 deprecated-version="2.2.0">
12845 <source-position filename="../src/hb-ot-deprecated.h" line="95"/>
12846 <return-value transfer-ownership="none">
12847 <type name="guint" c:type="unsigned int"/>
12848 </return-value>
12849 <parameters>
12850 <parameter name="face" transfer-ownership="none">
12851 <type name="face_t" c:type="hb_face_t*"/>
12852 </parameter>
12853 <parameter name="start_offset" transfer-ownership="none">
12854 <type name="guint" c:type="unsigned int"/>
12855 </parameter>
12856 <parameter name="axes_count" transfer-ownership="none">
12857 <type name="guint" c:type="unsigned int*"/>
12858 </parameter>
12859 <parameter name="axes_array" transfer-ownership="none">
12860 <type name="ot_var_axis_t" c:type="hb_ot_var_axis_t*"/>
12861 </parameter>
12862 </parameters>
12863 </function>
12864 <function name="ot_var_get_axis_count"
12865 c:identifier="hb_ot_var_get_axis_count"
12866 version="1.4.2">
12867 <source-position filename="../src/hb-ot-var.h" line="60"/>
12868 <return-value transfer-ownership="none">
12869 <type name="guint" c:type="unsigned int"/>
12870 </return-value>
12871 <parameters>
12872 <parameter name="face" transfer-ownership="none">
12873 <type name="face_t" c:type="hb_face_t*"/>
12874 </parameter>
12875 </parameters>
12876 </function>
12877 <function name="ot_var_get_axis_infos"
12878 c:identifier="hb_ot_var_get_axis_infos"
12879 version="2.2.0">
12880 <source-position filename="../src/hb-ot-var.h" line="93"/>
12881 <return-value transfer-ownership="none">
12882 <type name="guint" c:type="unsigned int"/>
12883 </return-value>
12884 <parameters>
12885 <parameter name="face" transfer-ownership="none">
12886 <type name="face_t" c:type="hb_face_t*"/>
12887 </parameter>
12888 <parameter name="start_offset" transfer-ownership="none">
12889 <type name="guint" c:type="unsigned int"/>
12890 </parameter>
12891 <parameter name="axes_count" transfer-ownership="none">
12892 <type name="guint" c:type="unsigned int*"/>
12893 </parameter>
12894 <parameter name="axes_array" transfer-ownership="none">
12895 <type name="ot_var_axis_info_t" c:type="hb_ot_var_axis_info_t*"/>
12896 </parameter>
12897 </parameters>
12898 </function>
12899 <function name="ot_var_get_named_instance_count"
12900 c:identifier="hb_ot_var_get_named_instance_count">
12901 <source-position filename="../src/hb-ot-var.h" line="109"/>
12902 <return-value transfer-ownership="none">
12903 <type name="guint" c:type="unsigned int"/>
12904 </return-value>
12905 <parameters>
12906 <parameter name="face" transfer-ownership="none">
12907 <type name="face_t" c:type="hb_face_t*"/>
12908 </parameter>
12909 </parameters>
12910 </function>
12911 <function name="ot_var_has_data"
12912 c:identifier="hb_ot_var_has_data"
12913 version="1.4.2">
12914 <doc xml:space="preserve"
12915 filename="../src/hb-ot-var.cc"
12916 line="53">This function allows to verify the presence of OpenType variation data on the face.</doc>
12917 <source-position filename="../src/hb-ot-var.h" line="51"/>
12918 <return-value transfer-ownership="none">
12919 <doc xml:space="preserve"
12920 filename="../src/hb-ot-var.cc"
12921 line="59">true if face has a `fvar' table and false otherwise</doc>
12922 <type name="bool_t" c:type="hb_bool_t"/>
12923 </return-value>
12924 <parameters>
12925 <parameter name="face" transfer-ownership="none">
12926 <doc xml:space="preserve"
12927 filename="../src/hb-ot-var.cc"
12928 line="55">#hb_face_t to test</doc>
12929 <type name="face_t" c:type="hb_face_t*"/>
12930 </parameter>
12931 </parameters>
12932 </function>
12933 <function name="ot_var_named_instance_get_design_coords"
12934 c:identifier="hb_ot_var_named_instance_get_design_coords">
12935 <source-position filename="../src/hb-ot-var.h" line="120"/>
12936 <return-value transfer-ownership="none">
12937 <type name="guint" c:type="unsigned int"/>
12938 </return-value>
12939 <parameters>
12940 <parameter name="face" transfer-ownership="none">
12941 <type name="face_t" c:type="hb_face_t*"/>
12942 </parameter>
12943 <parameter name="instance_index" transfer-ownership="none">
12944 <type name="guint" c:type="unsigned int"/>
12945 </parameter>
12946 <parameter name="coords_length" transfer-ownership="none">
12947 <type name="guint" c:type="unsigned int*"/>
12948 </parameter>
12949 <parameter name="coords" transfer-ownership="none">
12950 <type name="gfloat" c:type="float*"/>
12951 </parameter>
12952 </parameters>
12953 </function>
12954 <function name="ot_var_named_instance_get_postscript_name_id"
12955 c:identifier="hb_ot_var_named_instance_get_postscript_name_id">
12956 <source-position filename="../src/hb-ot-var.h" line="116"/>
12957 <return-value transfer-ownership="none">
12958 <type name="ot_name_id_t" c:type="hb_ot_name_id_t"/>
12959 </return-value>
12960 <parameters>
12961 <parameter name="face" transfer-ownership="none">
12962 <type name="face_t" c:type="hb_face_t*"/>
12963 </parameter>
12964 <parameter name="instance_index" transfer-ownership="none">
12965 <type name="guint" c:type="unsigned int"/>
12966 </parameter>
12967 </parameters>
12968 </function>
12969 <function name="ot_var_named_instance_get_subfamily_name_id"
12970 c:identifier="hb_ot_var_named_instance_get_subfamily_name_id">
12971 <source-position filename="../src/hb-ot-var.h" line="112"/>
12972 <return-value transfer-ownership="none">
12973 <type name="ot_name_id_t" c:type="hb_ot_name_id_t"/>
12974 </return-value>
12975 <parameters>
12976 <parameter name="face" transfer-ownership="none">
12977 <type name="face_t" c:type="hb_face_t*"/>
12978 </parameter>
12979 <parameter name="instance_index" transfer-ownership="none">
12980 <type name="guint" c:type="unsigned int"/>
12981 </parameter>
12982 </parameters>
12983 </function>
12984 <function name="ot_var_normalize_coords"
12985 c:identifier="hb_ot_var_normalize_coords"
12986 version="1.4.2">
12987 <source-position filename="../src/hb-ot-var.h" line="138"/>
12988 <return-value transfer-ownership="none">
12989 <type name="none" c:type="void"/>
12990 </return-value>
12991 <parameters>
12992 <parameter name="face" transfer-ownership="none">
12993 <type name="face_t" c:type="hb_face_t*"/>
12994 </parameter>
12995 <parameter name="coords_length" transfer-ownership="none">
12996 <type name="guint" c:type="unsigned int"/>
12997 </parameter>
12998 <parameter name="design_coords" transfer-ownership="none">
12999 <type name="gfloat" c:type="const float*"/>
13000 </parameter>
13001 <parameter name="normalized_coords" transfer-ownership="none">
13002 <type name="gint" c:type="int*"/>
13003 </parameter>
13004 </parameters>
13005 </function>
13006 <function name="ot_var_normalize_variations"
13007 c:identifier="hb_ot_var_normalize_variations"
13008 version="1.4.2">
13009 <source-position filename="../src/hb-ot-var.h" line="131"/>
13010 <return-value transfer-ownership="none">
13011 <type name="none" c:type="void"/>
13012 </return-value>
13013 <parameters>
13014 <parameter name="face" transfer-ownership="none">
13015 <type name="face_t" c:type="hb_face_t*"/>
13016 </parameter>
13017 <parameter name="variations" transfer-ownership="none">
13018 <type name="variation_t" c:type="const hb_variation_t*"/>
13019 </parameter>
13020 <parameter name="variations_length" transfer-ownership="none">
13021 <type name="guint" c:type="unsigned int"/>
13022 </parameter>
13023 <parameter name="coords" transfer-ownership="none">
13024 <type name="gint" c:type="int*"/>
13025 </parameter>
13026 <parameter name="coords_length" transfer-ownership="none">
13027 <type name="guint" c:type="unsigned int"/>
13028 </parameter>
13029 </parameters>
13030 </function>
13031 <callback name="reference_table_func_t" c:type="hb_reference_table_func_t">
13032 <source-position filename="../src/hb-face.h" line="55"/>
13033 <return-value transfer-ownership="full">
13034 <type name="blob_t" c:type="hb_blob_t*"/>
13035 </return-value>
13036 <parameters>
13037 <parameter name="face" transfer-ownership="none">
13038 <type name="face_t" c:type="hb_face_t*"/>
13039 </parameter>
13040 <parameter name="tag" transfer-ownership="none">
13041 <type name="tag_t" c:type="hb_tag_t"/>
13042 </parameter>
13043 <parameter name="user_data"
13044 transfer-ownership="none"
13045 nullable="1"
13046 allow-none="1"
13047 closure="2">
13048 <type name="gpointer" c:type="void*"/>
13049 </parameter>
13050 </parameters>
13051 </callback>
13052 <function name="script_from_iso15924_tag"
13053 c:identifier="hb_script_from_iso15924_tag"
13054 version="0.9.2">
13055 <doc xml:space="preserve"
13056 filename="../src/hb-common.cc"
13057 line="422">Converts an ISO 15924 script tag to a corresponding #hb_script_t.</doc>
13058 <source-position filename="../src/hb-common.h" line="399"/>
13059 <return-value transfer-ownership="none">
13060 <doc xml:space="preserve"
13061 filename="../src/hb-common.cc"
13062 line="428">An #hb_script_t corresponding to the ISO 15924 tag.</doc>
13063 <type name="script_t" c:type="hb_script_t"/>
13064 </return-value>
13065 <parameters>
13066 <parameter name="tag" transfer-ownership="none">
13067 <doc xml:space="preserve"
13068 filename="../src/hb-common.cc"
13069 line="424">an #hb_tag_t representing an ISO 15924 tag.</doc>
13070 <type name="tag_t" c:type="hb_tag_t"/>
13071 </parameter>
13072 </parameters>
13073 </function>
13074 <function name="script_from_string"
13075 c:identifier="hb_script_from_string"
13076 version="0.9.2">
13077 <doc xml:space="preserve"
13078 filename="../src/hb-common.cc"
13079 line="467">Converts a string @str representing an ISO 15924 script tag to a
13080 corresponding #hb_script_t. Shorthand for hb_tag_from_string() then
13081 hb_script_from_iso15924_tag().</doc>
13082 <source-position filename="../src/hb-common.h" line="402"/>
13083 <return-value transfer-ownership="none">
13084 <doc xml:space="preserve"
13085 filename="../src/hb-common.cc"
13086 line="477">An #hb_script_t corresponding to the ISO 15924 tag.</doc>
13087 <type name="script_t" c:type="hb_script_t"/>
13088 </return-value>
13089 <parameters>
13090 <parameter name="str" transfer-ownership="none">
13091 <doc xml:space="preserve"
13092 filename="../src/hb-common.cc"
13093 line="469">a string representing an
13094 ISO 15924 tag.</doc>
13095 <array length="1" zero-terminated="0" c:type="const char*">
13096 <type name="guint8"/>
13097 </array>
13098 </parameter>
13099 <parameter name="len" transfer-ownership="none">
13100 <doc xml:space="preserve"
13101 filename="../src/hb-common.cc"
13102 line="471">length of the @str, or -1 if it is %NULL-terminated.</doc>
13103 <type name="gint" c:type="int"/>
13104 </parameter>
13105 </parameters>
13106 </function>
13107 <function name="script_get_horizontal_direction"
13108 c:identifier="hb_script_get_horizontal_direction"
13109 version="0.9.2">
13110 <source-position filename="../src/hb-common.h" line="408"/>
13111 <return-value transfer-ownership="none">
13112 <type name="direction_t" c:type="hb_direction_t"/>
13113 </return-value>
13114 <parameters>
13115 <parameter name="script" transfer-ownership="none">
13116 <type name="script_t" c:type="hb_script_t"/>
13117 </parameter>
13118 </parameters>
13119 </function>
13120 <enumeration name="script_t"
13121 glib:type-name="hb_script_t"
13122 glib:get-type="hb_gobject_script_get_type"
13123 c:type="hb_script_t">
13124 <member name="common"
13125 value="1517910393"
13126 c:identifier="HB_SCRIPT_COMMON"
13127 glib:nick="common">
13128 </member>
13129 <member name="inherited"
13130 value="1516858984"
13131 c:identifier="HB_SCRIPT_INHERITED"
13132 glib:nick="inherited">
13133 </member>
13134 <member name="unknown"
13135 value="1517976186"
13136 c:identifier="HB_SCRIPT_UNKNOWN"
13137 glib:nick="unknown">
13138 </member>
13139 <member name="arabic"
13140 value="1098015074"
13141 c:identifier="HB_SCRIPT_ARABIC"
13142 glib:nick="arabic">
13143 </member>
13144 <member name="armenian"
13145 value="1098018158"
13146 c:identifier="HB_SCRIPT_ARMENIAN"
13147 glib:nick="armenian">
13148 </member>
13149 <member name="bengali"
13150 value="1113943655"
13151 c:identifier="HB_SCRIPT_BENGALI"
13152 glib:nick="bengali">
13153 </member>
13154 <member name="cyrillic"
13155 value="1132032620"
13156 c:identifier="HB_SCRIPT_CYRILLIC"
13157 glib:nick="cyrillic">
13158 </member>
13159 <member name="devanagari"
13160 value="1147500129"
13161 c:identifier="HB_SCRIPT_DEVANAGARI"
13162 glib:nick="devanagari">
13163 </member>
13164 <member name="georgian"
13165 value="1197830002"
13166 c:identifier="HB_SCRIPT_GEORGIAN"
13167 glib:nick="georgian">
13168 </member>
13169 <member name="greek"
13170 value="1198679403"
13171 c:identifier="HB_SCRIPT_GREEK"
13172 glib:nick="greek">
13173 </member>
13174 <member name="gujarati"
13175 value="1198877298"
13176 c:identifier="HB_SCRIPT_GUJARATI"
13177 glib:nick="gujarati">
13178 </member>
13179 <member name="gurmukhi"
13180 value="1198879349"
13181 c:identifier="HB_SCRIPT_GURMUKHI"
13182 glib:nick="gurmukhi">
13183 </member>
13184 <member name="hangul"
13185 value="1214344807"
13186 c:identifier="HB_SCRIPT_HANGUL"
13187 glib:nick="hangul">
13188 </member>
13189 <member name="han"
13190 value="1214344809"
13191 c:identifier="HB_SCRIPT_HAN"
13192 glib:nick="han">
13193 </member>
13194 <member name="hebrew"
13195 value="1214603890"
13196 c:identifier="HB_SCRIPT_HEBREW"
13197 glib:nick="hebrew">
13198 </member>
13199 <member name="hiragana"
13200 value="1214870113"
13201 c:identifier="HB_SCRIPT_HIRAGANA"
13202 glib:nick="hiragana">
13203 </member>
13204 <member name="kannada"
13205 value="1265525857"
13206 c:identifier="HB_SCRIPT_KANNADA"
13207 glib:nick="kannada">
13208 </member>
13209 <member name="katakana"
13210 value="1264676449"
13211 c:identifier="HB_SCRIPT_KATAKANA"
13212 glib:nick="katakana">
13213 </member>
13214 <member name="lao"
13215 value="1281453935"
13216 c:identifier="HB_SCRIPT_LAO"
13217 glib:nick="lao">
13218 </member>
13219 <member name="latin"
13220 value="1281455214"
13221 c:identifier="HB_SCRIPT_LATIN"
13222 glib:nick="latin">
13223 </member>
13224 <member name="malayalam"
13225 value="1298954605"
13226 c:identifier="HB_SCRIPT_MALAYALAM"
13227 glib:nick="malayalam">
13228 </member>
13229 <member name="oriya"
13230 value="1332902241"
13231 c:identifier="HB_SCRIPT_ORIYA"
13232 glib:nick="oriya">
13233 </member>
13234 <member name="tamil"
13235 value="1415671148"
13236 c:identifier="HB_SCRIPT_TAMIL"
13237 glib:nick="tamil">
13238 </member>
13239 <member name="telugu"
13240 value="1415933045"
13241 c:identifier="HB_SCRIPT_TELUGU"
13242 glib:nick="telugu">
13243 </member>
13244 <member name="thai"
13245 value="1416126825"
13246 c:identifier="HB_SCRIPT_THAI"
13247 glib:nick="thai">
13248 </member>
13249 <member name="tibetan"
13250 value="1416192628"
13251 c:identifier="HB_SCRIPT_TIBETAN"
13252 glib:nick="tibetan">
13253 </member>
13254 <member name="bopomofo"
13255 value="1114599535"
13256 c:identifier="HB_SCRIPT_BOPOMOFO"
13257 glib:nick="bopomofo">
13258 </member>
13259 <member name="braille"
13260 value="1114792297"
13261 c:identifier="HB_SCRIPT_BRAILLE"
13262 glib:nick="braille">
13263 </member>
13264 <member name="canadian_syllabics"
13265 value="1130458739"
13266 c:identifier="HB_SCRIPT_CANADIAN_SYLLABICS"
13267 glib:nick="canadian-syllabics">
13268 </member>
13269 <member name="cherokee"
13270 value="1130915186"
13271 c:identifier="HB_SCRIPT_CHEROKEE"
13272 glib:nick="cherokee">
13273 </member>
13274 <member name="ethiopic"
13275 value="1165256809"
13276 c:identifier="HB_SCRIPT_ETHIOPIC"
13277 glib:nick="ethiopic">
13278 </member>
13279 <member name="khmer"
13280 value="1265134962"
13281 c:identifier="HB_SCRIPT_KHMER"
13282 glib:nick="khmer">
13283 </member>
13284 <member name="mongolian"
13285 value="1299148391"
13286 c:identifier="HB_SCRIPT_MONGOLIAN"
13287 glib:nick="mongolian">
13288 </member>
13289 <member name="myanmar"
13290 value="1299803506"
13291 c:identifier="HB_SCRIPT_MYANMAR"
13292 glib:nick="myanmar">
13293 </member>
13294 <member name="ogham"
13295 value="1332175213"
13296 c:identifier="HB_SCRIPT_OGHAM"
13297 glib:nick="ogham">
13298 </member>
13299 <member name="runic"
13300 value="1383427698"
13301 c:identifier="HB_SCRIPT_RUNIC"
13302 glib:nick="runic">
13303 </member>
13304 <member name="sinhala"
13305 value="1399418472"
13306 c:identifier="HB_SCRIPT_SINHALA"
13307 glib:nick="sinhala">
13308 </member>
13309 <member name="syriac"
13310 value="1400468067"
13311 c:identifier="HB_SCRIPT_SYRIAC"
13312 glib:nick="syriac">
13313 </member>
13314 <member name="thaana"
13315 value="1416126817"
13316 c:identifier="HB_SCRIPT_THAANA"
13317 glib:nick="thaana">
13318 </member>
13319 <member name="yi"
13320 value="1500080489"
13321 c:identifier="HB_SCRIPT_YI"
13322 glib:nick="yi">
13323 </member>
13324 <member name="deseret"
13325 value="1148416628"
13326 c:identifier="HB_SCRIPT_DESERET"
13327 glib:nick="deseret">
13328 </member>
13329 <member name="gothic"
13330 value="1198486632"
13331 c:identifier="HB_SCRIPT_GOTHIC"
13332 glib:nick="gothic">
13333 </member>
13334 <member name="old_italic"
13335 value="1232363884"
13336 c:identifier="HB_SCRIPT_OLD_ITALIC"
13337 glib:nick="old-italic">
13338 </member>
13339 <member name="buhid"
13340 value="1114990692"
13341 c:identifier="HB_SCRIPT_BUHID"
13342 glib:nick="buhid">
13343 </member>
13344 <member name="hanunoo"
13345 value="1214344815"
13346 c:identifier="HB_SCRIPT_HANUNOO"
13347 glib:nick="hanunoo">
13348 </member>
13349 <member name="tagalog"
13350 value="1416064103"
13351 c:identifier="HB_SCRIPT_TAGALOG"
13352 glib:nick="tagalog">
13353 </member>
13354 <member name="tagbanwa"
13355 value="1415669602"
13356 c:identifier="HB_SCRIPT_TAGBANWA"
13357 glib:nick="tagbanwa">
13358 </member>
13359 <member name="cypriot"
13360 value="1131442804"
13361 c:identifier="HB_SCRIPT_CYPRIOT"
13362 glib:nick="cypriot">
13363 </member>
13364 <member name="limbu"
13365 value="1281977698"
13366 c:identifier="HB_SCRIPT_LIMBU"
13367 glib:nick="limbu">
13368 </member>
13369 <member name="linear_b"
13370 value="1281977954"
13371 c:identifier="HB_SCRIPT_LINEAR_B"
13372 glib:nick="linear-b">
13373 </member>
13374 <member name="osmanya"
13375 value="1332964705"
13376 c:identifier="HB_SCRIPT_OSMANYA"
13377 glib:nick="osmanya">
13378 </member>
13379 <member name="shavian"
13380 value="1399349623"
13381 c:identifier="HB_SCRIPT_SHAVIAN"
13382 glib:nick="shavian">
13383 </member>
13384 <member name="tai_le"
13385 value="1415670885"
13386 c:identifier="HB_SCRIPT_TAI_LE"
13387 glib:nick="tai-le">
13388 </member>
13389 <member name="ugaritic"
13390 value="1432838514"
13391 c:identifier="HB_SCRIPT_UGARITIC"
13392 glib:nick="ugaritic">
13393 </member>
13394 <member name="buginese"
13395 value="1114990441"
13396 c:identifier="HB_SCRIPT_BUGINESE"
13397 glib:nick="buginese">
13398 </member>
13399 <member name="coptic"
13400 value="1131376756"
13401 c:identifier="HB_SCRIPT_COPTIC"
13402 glib:nick="coptic">
13403 </member>
13404 <member name="glagolitic"
13405 value="1198285159"
13406 c:identifier="HB_SCRIPT_GLAGOLITIC"
13407 glib:nick="glagolitic">
13408 </member>
13409 <member name="kharoshthi"
13410 value="1265131890"
13411 c:identifier="HB_SCRIPT_KHAROSHTHI"
13412 glib:nick="kharoshthi">
13413 </member>
13414 <member name="new_tai_lue"
13415 value="1415670901"
13416 c:identifier="HB_SCRIPT_NEW_TAI_LUE"
13417 glib:nick="new-tai-lue">
13418 </member>
13419 <member name="old_persian"
13420 value="1483761007"
13421 c:identifier="HB_SCRIPT_OLD_PERSIAN"
13422 glib:nick="old-persian">
13423 </member>
13424 <member name="syloti_nagri"
13425 value="1400466543"
13426 c:identifier="HB_SCRIPT_SYLOTI_NAGRI"
13427 glib:nick="syloti-nagri">
13428 </member>
13429 <member name="tifinagh"
13430 value="1415999079"
13431 c:identifier="HB_SCRIPT_TIFINAGH"
13432 glib:nick="tifinagh">
13433 </member>
13434 <member name="balinese"
13435 value="1113681001"
13436 c:identifier="HB_SCRIPT_BALINESE"
13437 glib:nick="balinese">
13438 </member>
13439 <member name="cuneiform"
13440 value="1483961720"
13441 c:identifier="HB_SCRIPT_CUNEIFORM"
13442 glib:nick="cuneiform">
13443 </member>
13444 <member name="nko"
13445 value="1315663727"
13446 c:identifier="HB_SCRIPT_NKO"
13447 glib:nick="nko">
13448 </member>
13449 <member name="phags_pa"
13450 value="1349017959"
13451 c:identifier="HB_SCRIPT_PHAGS_PA"
13452 glib:nick="phags-pa">
13453 </member>
13454 <member name="phoenician"
13455 value="1349021304"
13456 c:identifier="HB_SCRIPT_PHOENICIAN"
13457 glib:nick="phoenician">
13458 </member>
13459 <member name="carian"
13460 value="1130459753"
13461 c:identifier="HB_SCRIPT_CARIAN"
13462 glib:nick="carian">
13463 </member>
13464 <member name="cham"
13465 value="1130914157"
13466 c:identifier="HB_SCRIPT_CHAM"
13467 glib:nick="cham">
13468 </member>
13469 <member name="kayah_li"
13470 value="1264675945"
13471 c:identifier="HB_SCRIPT_KAYAH_LI"
13472 glib:nick="kayah-li">
13473 </member>
13474 <member name="lepcha"
13475 value="1281716323"
13476 c:identifier="HB_SCRIPT_LEPCHA"
13477 glib:nick="lepcha">
13478 </member>
13479 <member name="lycian"
13480 value="1283023721"
13481 c:identifier="HB_SCRIPT_LYCIAN"
13482 glib:nick="lycian">
13483 </member>
13484 <member name="lydian"
13485 value="1283023977"
13486 c:identifier="HB_SCRIPT_LYDIAN"
13487 glib:nick="lydian">
13488 </member>
13489 <member name="ol_chiki"
13490 value="1332503403"
13491 c:identifier="HB_SCRIPT_OL_CHIKI"
13492 glib:nick="ol-chiki">
13493 </member>
13494 <member name="rejang"
13495 value="1382706791"
13496 c:identifier="HB_SCRIPT_REJANG"
13497 glib:nick="rejang">
13498 </member>
13499 <member name="saurashtra"
13500 value="1398895986"
13501 c:identifier="HB_SCRIPT_SAURASHTRA"
13502 glib:nick="saurashtra">
13503 </member>
13504 <member name="sundanese"
13505 value="1400204900"
13506 c:identifier="HB_SCRIPT_SUNDANESE"
13507 glib:nick="sundanese">
13508 </member>
13509 <member name="vai"
13510 value="1449224553"
13511 c:identifier="HB_SCRIPT_VAI"
13512 glib:nick="vai">
13513 </member>
13514 <member name="avestan"
13515 value="1098281844"
13516 c:identifier="HB_SCRIPT_AVESTAN"
13517 glib:nick="avestan">
13518 </member>
13519 <member name="bamum"
13520 value="1113681269"
13521 c:identifier="HB_SCRIPT_BAMUM"
13522 glib:nick="bamum">
13523 </member>
13524 <member name="egyptian_hieroglyphs"
13525 value="1164409200"
13526 c:identifier="HB_SCRIPT_EGYPTIAN_HIEROGLYPHS"
13527 glib:nick="egyptian-hieroglyphs">
13528 </member>
13529 <member name="imperial_aramaic"
13530 value="1098018153"
13531 c:identifier="HB_SCRIPT_IMPERIAL_ARAMAIC"
13532 glib:nick="imperial-aramaic">
13533 </member>
13534 <member name="inscriptional_pahlavi"
13535 value="1349020777"
13536 c:identifier="HB_SCRIPT_INSCRIPTIONAL_PAHLAVI"
13537 glib:nick="inscriptional-pahlavi">
13538 </member>
13539 <member name="inscriptional_parthian"
13540 value="1349678185"
13541 c:identifier="HB_SCRIPT_INSCRIPTIONAL_PARTHIAN"
13542 glib:nick="inscriptional-parthian">
13543 </member>
13544 <member name="javanese"
13545 value="1247901281"
13546 c:identifier="HB_SCRIPT_JAVANESE"
13547 glib:nick="javanese">
13548 </member>
13549 <member name="kaithi"
13550 value="1265920105"
13551 c:identifier="HB_SCRIPT_KAITHI"
13552 glib:nick="kaithi">
13553 </member>
13554 <member name="lisu"
13555 value="1281979253"
13556 c:identifier="HB_SCRIPT_LISU"
13557 glib:nick="lisu">
13558 </member>
13559 <member name="meetei_mayek"
13560 value="1299473769"
13561 c:identifier="HB_SCRIPT_MEETEI_MAYEK"
13562 glib:nick="meetei-mayek">
13563 </member>
13564 <member name="old_south_arabian"
13565 value="1398895202"
13566 c:identifier="HB_SCRIPT_OLD_SOUTH_ARABIAN"
13567 glib:nick="old-south-arabian">
13568 </member>
13569 <member name="old_turkic"
13570 value="1332898664"
13571 c:identifier="HB_SCRIPT_OLD_TURKIC"
13572 glib:nick="old-turkic">
13573 </member>
13574 <member name="samaritan"
13575 value="1398893938"
13576 c:identifier="HB_SCRIPT_SAMARITAN"
13577 glib:nick="samaritan">
13578 </member>
13579 <member name="tai_tham"
13580 value="1281453665"
13581 c:identifier="HB_SCRIPT_TAI_THAM"
13582 glib:nick="tai-tham">
13583 </member>
13584 <member name="tai_viet"
13585 value="1415673460"
13586 c:identifier="HB_SCRIPT_TAI_VIET"
13587 glib:nick="tai-viet">
13588 </member>
13589 <member name="batak"
13590 value="1113683051"
13591 c:identifier="HB_SCRIPT_BATAK"
13592 glib:nick="batak">
13593 </member>
13594 <member name="brahmi"
13595 value="1114792296"
13596 c:identifier="HB_SCRIPT_BRAHMI"
13597 glib:nick="brahmi">
13598 </member>
13599 <member name="mandaic"
13600 value="1298230884"
13601 c:identifier="HB_SCRIPT_MANDAIC"
13602 glib:nick="mandaic">
13603 </member>
13604 <member name="chakma"
13605 value="1130457965"
13606 c:identifier="HB_SCRIPT_CHAKMA"
13607 glib:nick="chakma">
13608 </member>
13609 <member name="meroitic_cursive"
13610 value="1298494051"
13611 c:identifier="HB_SCRIPT_MEROITIC_CURSIVE"
13612 glib:nick="meroitic-cursive">
13613 </member>
13614 <member name="meroitic_hieroglyphs"
13615 value="1298494063"
13616 c:identifier="HB_SCRIPT_MEROITIC_HIEROGLYPHS"
13617 glib:nick="meroitic-hieroglyphs">
13618 </member>
13619 <member name="miao"
13620 value="1349284452"
13621 c:identifier="HB_SCRIPT_MIAO"
13622 glib:nick="miao">
13623 </member>
13624 <member name="sharada"
13625 value="1399353956"
13626 c:identifier="HB_SCRIPT_SHARADA"
13627 glib:nick="sharada">
13628 </member>
13629 <member name="sora_sompeng"
13630 value="1399812705"
13631 c:identifier="HB_SCRIPT_SORA_SOMPENG"
13632 glib:nick="sora-sompeng">
13633 </member>
13634 <member name="takri"
13635 value="1415670642"
13636 c:identifier="HB_SCRIPT_TAKRI"
13637 glib:nick="takri">
13638 </member>
13639 <member name="bassa_vah"
13640 value="1113682803"
13641 c:identifier="HB_SCRIPT_BASSA_VAH"
13642 glib:nick="bassa-vah">
13643 </member>
13644 <member name="caucasian_albanian"
13645 value="1097295970"
13646 c:identifier="HB_SCRIPT_CAUCASIAN_ALBANIAN"
13647 glib:nick="caucasian-albanian">
13648 </member>
13649 <member name="duployan"
13650 value="1148547180"
13651 c:identifier="HB_SCRIPT_DUPLOYAN"
13652 glib:nick="duployan">
13653 </member>
13654 <member name="elbasan"
13655 value="1164730977"
13656 c:identifier="HB_SCRIPT_ELBASAN"
13657 glib:nick="elbasan">
13658 </member>
13659 <member name="grantha"
13660 value="1198678382"
13661 c:identifier="HB_SCRIPT_GRANTHA"
13662 glib:nick="grantha">
13663 </member>
13664 <member name="khojki"
13665 value="1265135466"
13666 c:identifier="HB_SCRIPT_KHOJKI"
13667 glib:nick="khojki">
13668 </member>
13669 <member name="khudawadi"
13670 value="1399418468"
13671 c:identifier="HB_SCRIPT_KHUDAWADI"
13672 glib:nick="khudawadi">
13673 </member>
13674 <member name="linear_a"
13675 value="1281977953"
13676 c:identifier="HB_SCRIPT_LINEAR_A"
13677 glib:nick="linear-a">
13678 </member>
13679 <member name="mahajani"
13680 value="1298229354"
13681 c:identifier="HB_SCRIPT_MAHAJANI"
13682 glib:nick="mahajani">
13683 </member>
13684 <member name="manichaean"
13685 value="1298230889"
13686 c:identifier="HB_SCRIPT_MANICHAEAN"
13687 glib:nick="manichaean">
13688 </member>
13689 <member name="mende_kikakui"
13690 value="1298493028"
13691 c:identifier="HB_SCRIPT_MENDE_KIKAKUI"
13692 glib:nick="mende-kikakui">
13693 </member>
13694 <member name="modi"
13695 value="1299145833"
13696 c:identifier="HB_SCRIPT_MODI"
13697 glib:nick="modi">
13698 </member>
13699 <member name="mro"
13700 value="1299345263"
13701 c:identifier="HB_SCRIPT_MRO"
13702 glib:nick="mro">
13703 </member>
13704 <member name="nabataean"
13705 value="1315070324"
13706 c:identifier="HB_SCRIPT_NABATAEAN"
13707 glib:nick="nabataean">
13708 </member>
13709 <member name="old_north_arabian"
13710 value="1315009122"
13711 c:identifier="HB_SCRIPT_OLD_NORTH_ARABIAN"
13712 glib:nick="old-north-arabian">
13713 </member>
13714 <member name="old_permic"
13715 value="1348825709"
13716 c:identifier="HB_SCRIPT_OLD_PERMIC"
13717 glib:nick="old-permic">
13718 </member>
13719 <member name="pahawh_hmong"
13720 value="1215131239"
13721 c:identifier="HB_SCRIPT_PAHAWH_HMONG"
13722 glib:nick="pahawh-hmong">
13723 </member>
13724 <member name="palmyrene"
13725 value="1348562029"
13726 c:identifier="HB_SCRIPT_PALMYRENE"
13727 glib:nick="palmyrene">
13728 </member>
13729 <member name="pau_cin_hau"
13730 value="1348564323"
13731 c:identifier="HB_SCRIPT_PAU_CIN_HAU"
13732 glib:nick="pau-cin-hau">
13733 </member>
13734 <member name="psalter_pahlavi"
13735 value="1349020784"
13736 c:identifier="HB_SCRIPT_PSALTER_PAHLAVI"
13737 glib:nick="psalter-pahlavi">
13738 </member>
13739 <member name="siddham"
13740 value="1399415908"
13741 c:identifier="HB_SCRIPT_SIDDHAM"
13742 glib:nick="siddham">
13743 </member>
13744 <member name="tirhuta"
13745 value="1416196712"
13746 c:identifier="HB_SCRIPT_TIRHUTA"
13747 glib:nick="tirhuta">
13748 </member>
13749 <member name="warang_citi"
13750 value="1466004065"
13751 c:identifier="HB_SCRIPT_WARANG_CITI"
13752 glib:nick="warang-citi">
13753 </member>
13754 <member name="ahom"
13755 value="1097363309"
13756 c:identifier="HB_SCRIPT_AHOM"
13757 glib:nick="ahom">
13758 </member>
13759 <member name="anatolian_hieroglyphs"
13760 value="1215067511"
13761 c:identifier="HB_SCRIPT_ANATOLIAN_HIEROGLYPHS"
13762 glib:nick="anatolian-hieroglyphs">
13763 </member>
13764 <member name="hatran"
13765 value="1214346354"
13766 c:identifier="HB_SCRIPT_HATRAN"
13767 glib:nick="hatran">
13768 </member>
13769 <member name="multani"
13770 value="1299541108"
13771 c:identifier="HB_SCRIPT_MULTANI"
13772 glib:nick="multani">
13773 </member>
13774 <member name="old_hungarian"
13775 value="1215655527"
13776 c:identifier="HB_SCRIPT_OLD_HUNGARIAN"
13777 glib:nick="old-hungarian">
13778 </member>
13779 <member name="signwriting"
13780 value="1399287415"
13781 c:identifier="HB_SCRIPT_SIGNWRITING"
13782 glib:nick="signwriting">
13783 </member>
13784 <member name="adlam"
13785 value="1097100397"
13786 c:identifier="HB_SCRIPT_ADLAM"
13787 glib:nick="adlam">
13788 </member>
13789 <member name="bhaiksuki"
13790 value="1114139507"
13791 c:identifier="HB_SCRIPT_BHAIKSUKI"
13792 glib:nick="bhaiksuki">
13793 </member>
13794 <member name="marchen"
13795 value="1298231907"
13796 c:identifier="HB_SCRIPT_MARCHEN"
13797 glib:nick="marchen">
13798 </member>
13799 <member name="osage"
13800 value="1332963173"
13801 c:identifier="HB_SCRIPT_OSAGE"
13802 glib:nick="osage">
13803 </member>
13804 <member name="tangut"
13805 value="1415671399"
13806 c:identifier="HB_SCRIPT_TANGUT"
13807 glib:nick="tangut">
13808 </member>
13809 <member name="newa"
13810 value="1315272545"
13811 c:identifier="HB_SCRIPT_NEWA"
13812 glib:nick="newa">
13813 </member>
13814 <member name="masaram_gondi"
13815 value="1198485101"
13816 c:identifier="HB_SCRIPT_MASARAM_GONDI"
13817 glib:nick="masaram-gondi">
13818 </member>
13819 <member name="nushu"
13820 value="1316186229"
13821 c:identifier="HB_SCRIPT_NUSHU"
13822 glib:nick="nushu">
13823 </member>
13824 <member name="soyombo"
13825 value="1399814511"
13826 c:identifier="HB_SCRIPT_SOYOMBO"
13827 glib:nick="soyombo">
13828 </member>
13829 <member name="zanabazar_square"
13830 value="1516334690"
13831 c:identifier="HB_SCRIPT_ZANABAZAR_SQUARE"
13832 glib:nick="zanabazar-square">
13833 </member>
13834 <member name="dogra"
13835 value="1148151666"
13836 c:identifier="HB_SCRIPT_DOGRA"
13837 glib:nick="dogra">
13838 </member>
13839 <member name="gunjala_gondi"
13840 value="1198485095"
13841 c:identifier="HB_SCRIPT_GUNJALA_GONDI"
13842 glib:nick="gunjala-gondi">
13843 </member>
13844 <member name="hanifi_rohingya"
13845 value="1383032935"
13846 c:identifier="HB_SCRIPT_HANIFI_ROHINGYA"
13847 glib:nick="hanifi-rohingya">
13848 </member>
13849 <member name="makasar"
13850 value="1298230113"
13851 c:identifier="HB_SCRIPT_MAKASAR"
13852 glib:nick="makasar">
13853 </member>
13854 <member name="medefaidrin"
13855 value="1298490470"
13856 c:identifier="HB_SCRIPT_MEDEFAIDRIN"
13857 glib:nick="medefaidrin">
13858 </member>
13859 <member name="old_sogdian"
13860 value="1399809903"
13861 c:identifier="HB_SCRIPT_OLD_SOGDIAN"
13862 glib:nick="old-sogdian">
13863 </member>
13864 <member name="sogdian"
13865 value="1399809892"
13866 c:identifier="HB_SCRIPT_SOGDIAN"
13867 glib:nick="sogdian">
13868 </member>
13869 <member name="elymaic"
13870 value="1164736877"
13871 c:identifier="HB_SCRIPT_ELYMAIC"
13872 glib:nick="elymaic">
13873 </member>
13874 <member name="nandinagari"
13875 value="1315008100"
13876 c:identifier="HB_SCRIPT_NANDINAGARI"
13877 glib:nick="nandinagari">
13878 </member>
13879 <member name="nyiakeng_puachue_hmong"
13880 value="1215131248"
13881 c:identifier="HB_SCRIPT_NYIAKENG_PUACHUE_HMONG"
13882 glib:nick="nyiakeng-puachue-hmong">
13883 </member>
13884 <member name="wancho"
13885 value="1466132591"
13886 c:identifier="HB_SCRIPT_WANCHO"
13887 glib:nick="wancho">
13888 </member>
13889 <member name="chorasmian"
13890 value="1130918515"
13891 c:identifier="HB_SCRIPT_CHORASMIAN"
13892 glib:nick="chorasmian">
13893 </member>
13894 <member name="dives_akuru"
13895 value="1147756907"
13896 c:identifier="HB_SCRIPT_DIVES_AKURU"
13897 glib:nick="dives-akuru">
13898 </member>
13899 <member name="khitan_small_script"
13900 value="1265202291"
13901 c:identifier="HB_SCRIPT_KHITAN_SMALL_SCRIPT"
13902 glib:nick="khitan-small-script">
13903 </member>
13904 <member name="yezidi"
13905 value="1499822697"
13906 c:identifier="HB_SCRIPT_YEZIDI"
13907 glib:nick="yezidi">
13908 </member>
13909 <member name="invalid"
13910 value="0"
13911 c:identifier="HB_SCRIPT_INVALID"
13912 glib:nick="invalid">
13913 </member>
13914 </enumeration>
13915 <function name="script_to_iso15924_tag"
13916 c:identifier="hb_script_to_iso15924_tag"
13917 version="0.9.2">
13918 <doc xml:space="preserve"
13919 filename="../src/hb-common.cc"
13920 line="488">See hb_script_from_iso15924_tag().</doc>
13921 <source-position filename="../src/hb-common.h" line="405"/>
13922 <return-value transfer-ownership="none">
13923 <doc xml:space="preserve"
13924 filename="../src/hb-common.cc"
13925 line="494">An #hb_tag_t representing an ISO 15924 script tag.</doc>
13926 <type name="tag_t" c:type="hb_tag_t"/>
13927 </return-value>
13928 <parameters>
13929 <parameter name="script" transfer-ownership="none">
13930 <doc xml:space="preserve"
13931 filename="../src/hb-common.cc"
13932 line="490">an #hb_script_t to convert.</doc>
13933 <type name="script_t" c:type="hb_script_t"/>
13934 </parameter>
13935 </parameters>
13936 </function>
13937 <function name="segment_properties_equal"
13938 c:identifier="hb_segment_properties_equal"
13939 version="0.9.7">
13940 <doc xml:space="preserve"
13941 filename="../src/hb-buffer.cc"
13942 line="45">Checks the equality of two #hb_segment_properties_t's.</doc>
13943 <source-position filename="../src/hb-buffer.h" line="161"/>
13944 <return-value transfer-ownership="none">
13945 <doc xml:space="preserve"
13946 filename="../src/hb-buffer.cc"
13947 line="52">%true if all properties of @a equal those of @b, false otherwise.</doc>
13948 <type name="bool_t" c:type="hb_bool_t"/>
13949 </return-value>
13950 <parameters>
13951 <parameter name="a" transfer-ownership="none">
13952 <doc xml:space="preserve"
13953 filename="../src/hb-buffer.cc"
13954 line="47">first #hb_segment_properties_t to compare.</doc>
13955 <type name="segment_properties_t"
13956 c:type="const hb_segment_properties_t*"/>
13957 </parameter>
13958 <parameter name="b" transfer-ownership="none">
13959 <doc xml:space="preserve"
13960 filename="../src/hb-buffer.cc"
13961 line="48">second #hb_segment_properties_t to compare.</doc>
13962 <type name="segment_properties_t"
13963 c:type="const hb_segment_properties_t*"/>
13964 </parameter>
13965 </parameters>
13966 </function>
13967 <function name="segment_properties_hash"
13968 c:identifier="hb_segment_properties_hash"
13969 version="0.9.7">
13970 <doc xml:space="preserve"
13971 filename="../src/hb-buffer.cc"
13972 line="69">Creates a hash representing @p.</doc>
13973 <source-position filename="../src/hb-buffer.h" line="165"/>
13974 <return-value transfer-ownership="none">
13975 <doc xml:space="preserve"
13976 filename="../src/hb-buffer.cc"
13977 line="75">A hash of @p.</doc>
13978 <type name="guint" c:type="unsigned int"/>
13979 </return-value>
13980 <parameters>
13981 <parameter name="p" transfer-ownership="none">
13982 <doc xml:space="preserve"
13983 filename="../src/hb-buffer.cc"
13984 line="71">#hb_segment_properties_t to hash.</doc>
13985 <type name="segment_properties_t"
13986 c:type="const hb_segment_properties_t*"/>
13987 </parameter>
13988 </parameters>
13989 </function>
13990 <record name="segment_properties_t"
13991 c:type="hb_segment_properties_t"
13992 glib:type-name="hb_segment_properties_t"
13993 glib:get-type="hb_gobject_segment_properties_get_type"
13994 c:symbol-prefix="gobject_segment_properties">
13995 <doc xml:space="preserve"
13996 filename="../src/hb-buffer.h"
13997 line="135">The structure that holds various text properties of an #hb_buffer_t. Can be
13998 set and retrieved using hb_buffer_set_segment_properties() and
13999 hb_buffer_get_segment_properties(), respectively.</doc>
14000 <source-position filename="../src/hb-buffer.h" line="152"/>
14001 <field name="direction" writable="1">
14002 <doc xml:space="preserve"
14003 filename="../src/hb-buffer.h"
14004 line="137">the #hb_direction_t of the buffer, see hb_buffer_set_direction().</doc>
14005 <type name="direction_t" c:type="hb_direction_t"/>
14006 </field>
14007 <field name="script" writable="1">
14008 <doc xml:space="preserve"
14009 filename="../src/hb-buffer.h"
14010 line="138">the #hb_script_t of the buffer, see hb_buffer_set_script().</doc>
14011 <type name="script_t" c:type="hb_script_t"/>
14012 </field>
14013 <field name="language" writable="1">
14014 <doc xml:space="preserve"
14015 filename="../src/hb-buffer.h"
14016 line="139">the #hb_language_t of the buffer, see hb_buffer_set_language().</doc>
14017 <type name="language_t" c:type="hb_language_t"/>
14018 </field>
14019 <field name="reserved1" readable="0" private="1">
14020 <type name="gpointer" c:type="void*"/>
14021 </field>
14022 <field name="reserved2" readable="0" private="1">
14023 <type name="gpointer" c:type="void*"/>
14024 </field>
14025 </record>
14026 <function name="set_add" c:identifier="hb_set_add" version="0.9.2">
14027 <source-position filename="../src/hb-set.h" line="86"/>
14028 <return-value transfer-ownership="none">
14029 <type name="none" c:type="void"/>
14030 </return-value>
14031 <parameters>
14032 <parameter name="set" transfer-ownership="none">
14033 <doc xml:space="preserve"
14034 filename="../src/hb-set.cc"
14035 line="210">a set.</doc>
14036 <type name="set_t" c:type="hb_set_t*"/>
14037 </parameter>
14038 <parameter name="codepoint" transfer-ownership="none">
14039 <type name="codepoint_t" c:type="hb_codepoint_t"/>
14040 </parameter>
14041 </parameters>
14042 </function>
14043 <function name="set_add_range"
14044 c:identifier="hb_set_add_range"
14045 version="0.9.7">
14046 <source-position filename="../src/hb-set.h" line="90"/>
14047 <return-value transfer-ownership="none">
14048 <type name="none" c:type="void"/>
14049 </return-value>
14050 <parameters>
14051 <parameter name="set" transfer-ownership="none">
14052 <doc xml:space="preserve"
14053 filename="../src/hb-set.cc"
14054 line="226">a set.</doc>
14055 <type name="set_t" c:type="hb_set_t*"/>
14056 </parameter>
14057 <parameter name="first" transfer-ownership="none">
14058 <type name="codepoint_t" c:type="hb_codepoint_t"/>
14059 </parameter>
14060 <parameter name="last" transfer-ownership="none">
14061 <type name="codepoint_t" c:type="hb_codepoint_t"/>
14062 </parameter>
14063 </parameters>
14064 </function>
14065 <function name="set_allocation_successful"
14066 c:identifier="hb_set_allocation_successful"
14067 version="0.9.2">
14068 <source-position filename="../src/hb-set.h" line="73"/>
14069 <return-value transfer-ownership="none">
14070 <type name="bool_t" c:type="hb_bool_t"/>
14071 </return-value>
14072 <parameters>
14073 <parameter name="set" transfer-ownership="none">
14074 <doc xml:space="preserve"
14075 filename="../src/hb-set.cc"
14076 line="146">a set.</doc>
14077 <type name="set_t" c:type="const hb_set_t*"/>
14078 </parameter>
14079 </parameters>
14080 </function>
14081 <function name="set_clear" c:identifier="hb_set_clear" version="0.9.2">
14082 <source-position filename="../src/hb-set.h" line="76"/>
14083 <return-value transfer-ownership="none">
14084 <type name="none" c:type="void"/>
14085 </return-value>
14086 <parameters>
14087 <parameter name="set" transfer-ownership="none">
14088 <doc xml:space="preserve"
14089 filename="../src/hb-set.cc"
14090 line="162">a set.</doc>
14091 <type name="set_t" c:type="hb_set_t*"/>
14092 </parameter>
14093 </parameters>
14094 </function>
14095 <function name="set_create" c:identifier="hb_set_create" version="0.9.2">
14096 <source-position filename="../src/hb-set.h" line="48"/>
14097 <return-value transfer-ownership="full">
14098 <type name="set_t" c:type="hb_set_t*"/>
14099 </return-value>
14100 </function>
14101 <function name="set_del" c:identifier="hb_set_del" version="0.9.2">
14102 <source-position filename="../src/hb-set.h" line="95"/>
14103 <return-value transfer-ownership="none">
14104 <type name="none" c:type="void"/>
14105 </return-value>
14106 <parameters>
14107 <parameter name="set" transfer-ownership="none">
14108 <doc xml:space="preserve"
14109 filename="../src/hb-set.cc"
14110 line="244">a set.</doc>
14111 <type name="set_t" c:type="hb_set_t*"/>
14112 </parameter>
14113 <parameter name="codepoint" transfer-ownership="none">
14114 <type name="codepoint_t" c:type="hb_codepoint_t"/>
14115 </parameter>
14116 </parameters>
14117 </function>
14118 <function name="set_del_range"
14119 c:identifier="hb_set_del_range"
14120 version="0.9.7">
14121 <source-position filename="../src/hb-set.h" line="99"/>
14122 <return-value transfer-ownership="none">
14123 <type name="none" c:type="void"/>
14124 </return-value>
14125 <parameters>
14126 <parameter name="set" transfer-ownership="none">
14127 <doc xml:space="preserve"
14128 filename="../src/hb-set.cc"
14129 line="260">a set.</doc>
14130 <type name="set_t" c:type="hb_set_t*"/>
14131 </parameter>
14132 <parameter name="first" transfer-ownership="none">
14133 <type name="codepoint_t" c:type="hb_codepoint_t"/>
14134 </parameter>
14135 <parameter name="last" transfer-ownership="none">
14136 <type name="codepoint_t" c:type="hb_codepoint_t"/>
14137 </parameter>
14138 </parameters>
14139 </function>
14140 <function name="set_destroy"
14141 c:identifier="hb_set_destroy"
14142 version="0.9.2"
14143 introspectable="0">
14144 <source-position filename="../src/hb-set.h" line="57"/>
14145 <return-value transfer-ownership="none">
14146 <type name="none" c:type="void"/>
14147 </return-value>
14148 <parameters>
14149 <parameter name="set" transfer-ownership="none">
14150 <doc xml:space="preserve"
14151 filename="../src/hb-set.cc"
14152 line="91">a set.</doc>
14153 <type name="set_t" c:type="hb_set_t*"/>
14154 </parameter>
14155 </parameters>
14156 </function>
14157 <function name="set_get_empty"
14158 c:identifier="hb_set_get_empty"
14159 version="0.9.2">
14160 <source-position filename="../src/hb-set.h" line="51"/>
14161 <return-value transfer-ownership="full">
14162 <type name="set_t" c:type="hb_set_t*"/>
14163 </return-value>
14164 </function>
14165 <function name="set_get_max" c:identifier="hb_set_get_max" version="0.9.7">
14166 <doc xml:space="preserve"
14167 filename="../src/hb-set.cc"
14168 line="441">Finds the maximum number in the set.</doc>
14169 <source-position filename="../src/hb-set.h" line="140"/>
14170 <return-value transfer-ownership="none">
14171 <doc xml:space="preserve"
14172 filename="../src/hb-set.cc"
14173 line="447">minimum of the set, or %HB_SET_VALUE_INVALID if set is empty.</doc>
14174 <type name="codepoint_t" c:type="hb_codepoint_t"/>
14175 </return-value>
14176 <parameters>
14177 <parameter name="set" transfer-ownership="none">
14178 <doc xml:space="preserve"
14179 filename="../src/hb-set.cc"
14180 line="443">a set.</doc>
14181 <type name="set_t" c:type="const hb_set_t*"/>
14182 </parameter>
14183 </parameters>
14184 </function>
14185 <function name="set_get_min" c:identifier="hb_set_get_min" version="0.9.7">
14186 <doc xml:space="preserve"
14187 filename="../src/hb-set.cc"
14188 line="425">Finds the minimum number in the set.</doc>
14189 <source-position filename="../src/hb-set.h" line="136"/>
14190 <return-value transfer-ownership="none">
14191 <doc xml:space="preserve"
14192 filename="../src/hb-set.cc"
14193 line="431">minimum of the set, or %HB_SET_VALUE_INVALID if set is empty.</doc>
14194 <type name="codepoint_t" c:type="hb_codepoint_t"/>
14195 </return-value>
14196 <parameters>
14197 <parameter name="set" transfer-ownership="none">
14198 <doc xml:space="preserve"
14199 filename="../src/hb-set.cc"
14200 line="427">a set.</doc>
14201 <type name="set_t" c:type="const hb_set_t*"/>
14202 </parameter>
14203 </parameters>
14204 </function>
14205 <function name="set_get_population"
14206 c:identifier="hb_set_get_population"
14207 version="0.9.7">
14208 <doc xml:space="preserve"
14209 filename="../src/hb-set.cc"
14210 line="409">Returns the number of numbers in the set.</doc>
14211 <source-position filename="../src/hb-set.h" line="132"/>
14212 <return-value transfer-ownership="none">
14213 <doc xml:space="preserve"
14214 filename="../src/hb-set.cc"
14215 line="415">set population.</doc>
14216 <type name="guint" c:type="unsigned int"/>
14217 </return-value>
14218 <parameters>
14219 <parameter name="set" transfer-ownership="none">
14220 <doc xml:space="preserve"
14221 filename="../src/hb-set.cc"
14222 line="411">a set.</doc>
14223 <type name="set_t" c:type="const hb_set_t*"/>
14224 </parameter>
14225 </parameters>
14226 </function>
14227 <function name="set_get_user_data"
14228 c:identifier="hb_set_get_user_data"
14229 version="0.9.2"
14230 introspectable="0">
14231 <source-position filename="../src/hb-set.h" line="67"/>
14232 <return-value transfer-ownership="none" nullable="1">
14233 <type name="gpointer" c:type="void*"/>
14234 </return-value>
14235 <parameters>
14236 <parameter name="set" transfer-ownership="none">
14237 <doc xml:space="preserve"
14238 filename="../src/hb-set.cc"
14239 line="129">a set.</doc>
14240 <type name="set_t" c:type="hb_set_t*"/>
14241 </parameter>
14242 <parameter name="key" transfer-ownership="none">
14243 <type name="user_data_key_t" c:type="hb_user_data_key_t*"/>
14244 </parameter>
14245 </parameters>
14246 </function>
14247 <function name="set_has" c:identifier="hb_set_has" version="0.9.2">
14248 <source-position filename="../src/hb-set.h" line="82"/>
14249 <return-value transfer-ownership="none">
14250 <type name="bool_t" c:type="hb_bool_t"/>
14251 </return-value>
14252 <parameters>
14253 <parameter name="set" transfer-ownership="none">
14254 <doc xml:space="preserve"
14255 filename="../src/hb-set.cc"
14256 line="192">a set.</doc>
14257 <type name="set_t" c:type="const hb_set_t*"/>
14258 </parameter>
14259 <parameter name="codepoint" transfer-ownership="none">
14260 <type name="codepoint_t" c:type="hb_codepoint_t"/>
14261 </parameter>
14262 </parameters>
14263 </function>
14264 <function name="set_intersect"
14265 c:identifier="hb_set_intersect"
14266 version="0.9.2">
14267 <source-position filename="../src/hb-set.h" line="120"/>
14268 <return-value transfer-ownership="none">
14269 <type name="none" c:type="void"/>
14270 </return-value>
14271 <parameters>
14272 <parameter name="set" transfer-ownership="none">
14273 <doc xml:space="preserve"
14274 filename="../src/hb-set.cc"
14275 line="346">a set.</doc>
14276 <type name="set_t" c:type="hb_set_t*"/>
14277 </parameter>
14278 <parameter name="other" transfer-ownership="none">
14279 <type name="set_t" c:type="const hb_set_t*"/>
14280 </parameter>
14281 </parameters>
14282 </function>
14283 <function name="set_invert"
14284 c:identifier="hb_set_invert"
14285 version="0.9.10"
14286 deprecated="1"
14287 deprecated-version="1.6.1">
14288 <source-position filename="../src/hb-deprecated.h" line="72"/>
14289 <return-value transfer-ownership="none">
14290 <type name="none" c:type="void"/>
14291 </return-value>
14292 <parameters>
14293 <parameter name="set" transfer-ownership="none">
14294 <doc xml:space="preserve"
14295 filename="../src/hb-set.cc"
14296 line="395">a set.</doc>
14297 <type name="set_t" c:type="hb_set_t*"/>
14298 </parameter>
14299 </parameters>
14300 </function>
14301 <function name="set_is_empty"
14302 c:identifier="hb_set_is_empty"
14303 version="0.9.7">
14304 <source-position filename="../src/hb-set.h" line="79"/>
14305 <return-value transfer-ownership="none">
14306 <type name="bool_t" c:type="hb_bool_t"/>
14307 </return-value>
14308 <parameters>
14309 <parameter name="set" transfer-ownership="none">
14310 <doc xml:space="preserve"
14311 filename="../src/hb-set.cc"
14312 line="176">a set.</doc>
14313 <type name="set_t" c:type="const hb_set_t*"/>
14314 </parameter>
14315 </parameters>
14316 </function>
14317 <function name="set_is_equal"
14318 c:identifier="hb_set_is_equal"
14319 version="0.9.7">
14320 <source-position filename="../src/hb-set.h" line="104"/>
14321 <return-value transfer-ownership="none">
14322 <doc xml:space="preserve"
14323 filename="../src/hb-set.cc"
14324 line="283">%TRUE if the two sets are equal, %FALSE otherwise.</doc>
14325 <type name="bool_t" c:type="hb_bool_t"/>
14326 </return-value>
14327 <parameters>
14328 <parameter name="set" transfer-ownership="none">
14329 <doc xml:space="preserve"
14330 filename="../src/hb-set.cc"
14331 line="278">a set.</doc>
14332 <type name="set_t" c:type="const hb_set_t*"/>
14333 </parameter>
14334 <parameter name="other" transfer-ownership="none">
14335 <doc xml:space="preserve"
14336 filename="../src/hb-set.cc"
14337 line="279">other set.</doc>
14338 <type name="set_t" c:type="const hb_set_t*"/>
14339 </parameter>
14340 </parameters>
14341 </function>
14342 <function name="set_is_subset"
14343 c:identifier="hb_set_is_subset"
14344 version="1.8.1">
14345 <source-position filename="../src/hb-set.h" line="108"/>
14346 <return-value transfer-ownership="none">
14347 <doc xml:space="preserve"
14348 filename="../src/hb-set.cc"
14349 line="301">%TRUE if the @set is a subset of (or equal to) @larger_set, %FALSE otherwise.</doc>
14350 <type name="bool_t" c:type="hb_bool_t"/>
14351 </return-value>
14352 <parameters>
14353 <parameter name="set" transfer-ownership="none">
14354 <doc xml:space="preserve"
14355 filename="../src/hb-set.cc"
14356 line="296">a set.</doc>
14357 <type name="set_t" c:type="const hb_set_t*"/>
14358 </parameter>
14359 <parameter name="larger_set" transfer-ownership="none">
14360 <doc xml:space="preserve"
14361 filename="../src/hb-set.cc"
14362 line="297">other set.</doc>
14363 <type name="set_t" c:type="const hb_set_t*"/>
14364 </parameter>
14365 </parameters>
14366 </function>
14367 <function name="set_next" c:identifier="hb_set_next" version="0.9.2">
14368 <doc xml:space="preserve"
14369 filename="../src/hb-set.cc"
14370 line="457">Gets the next number in @set that is greater than current value of @codepoint.
14371
14372 Set @codepoint to %HB_SET_VALUE_INVALID to get started.</doc>
14373 <source-position filename="../src/hb-set.h" line="144"/>
14374 <return-value transfer-ownership="none">
14375 <doc xml:space="preserve"
14376 filename="../src/hb-set.cc"
14377 line="466">whether there was a next value.</doc>
14378 <type name="bool_t" c:type="hb_bool_t"/>
14379 </return-value>
14380 <parameters>
14381 <parameter name="set" transfer-ownership="none">
14382 <doc xml:space="preserve"
14383 filename="../src/hb-set.cc"
14384 line="459">a set.</doc>
14385 <type name="set_t" c:type="const hb_set_t*"/>
14386 </parameter>
14387 <parameter name="codepoint"
14388 direction="inout"
14389 caller-allocates="0"
14390 transfer-ownership="full">
14391 <type name="codepoint_t" c:type="hb_codepoint_t*"/>
14392 </parameter>
14393 </parameters>
14394 </function>
14395 <function name="set_next_range"
14396 c:identifier="hb_set_next_range"
14397 version="0.9.7">
14398 <doc xml:space="preserve"
14399 filename="../src/hb-set.cc"
14400 line="497">Gets the next consecutive range of numbers in @set that
14401 are greater than current value of @last.
14402
14403 Set @last to %HB_SET_VALUE_INVALID to get started.</doc>
14404 <source-position filename="../src/hb-set.h" line="154"/>
14405 <return-value transfer-ownership="none">
14406 <doc xml:space="preserve"
14407 filename="../src/hb-set.cc"
14408 line="508">whether there was a next range.</doc>
14409 <type name="bool_t" c:type="hb_bool_t"/>
14410 </return-value>
14411 <parameters>
14412 <parameter name="set" transfer-ownership="none">
14413 <doc xml:space="preserve"
14414 filename="../src/hb-set.cc"
14415 line="499">a set.</doc>
14416 <type name="set_t" c:type="const hb_set_t*"/>
14417 </parameter>
14418 <parameter name="first"
14419 direction="out"
14420 caller-allocates="0"
14421 transfer-ownership="full">
14422 <doc xml:space="preserve"
14423 filename="../src/hb-set.cc"
14424 line="500">output first codepoint in the range.</doc>
14425 <type name="codepoint_t" c:type="hb_codepoint_t*"/>
14426 </parameter>
14427 <parameter name="last"
14428 direction="inout"
14429 caller-allocates="0"
14430 transfer-ownership="full">
14431 <doc xml:space="preserve"
14432 filename="../src/hb-set.cc"
14433 line="501">input current last and output last codepoint in the range.</doc>
14434 <type name="codepoint_t" c:type="hb_codepoint_t*"/>
14435 </parameter>
14436 </parameters>
14437 </function>
14438 <function name="set_previous"
14439 c:identifier="hb_set_previous"
14440 version="1.8.0">
14441 <doc xml:space="preserve"
14442 filename="../src/hb-set.cc"
14443 line="477">Gets the previous number in @set that is lower than current value of @codepoint.
14444
14445 Set @codepoint to %HB_SET_VALUE_INVALID to get started.</doc>
14446 <source-position filename="../src/hb-set.h" line="149"/>
14447 <return-value transfer-ownership="none">
14448 <doc xml:space="preserve"
14449 filename="../src/hb-set.cc"
14450 line="486">whether there was a previous value.</doc>
14451 <type name="bool_t" c:type="hb_bool_t"/>
14452 </return-value>
14453 <parameters>
14454 <parameter name="set" transfer-ownership="none">
14455 <doc xml:space="preserve"
14456 filename="../src/hb-set.cc"
14457 line="479">a set.</doc>
14458 <type name="set_t" c:type="const hb_set_t*"/>
14459 </parameter>
14460 <parameter name="codepoint"
14461 direction="inout"
14462 caller-allocates="0"
14463 transfer-ownership="full">
14464 <type name="codepoint_t" c:type="hb_codepoint_t*"/>
14465 </parameter>
14466 </parameters>
14467 </function>
14468 <function name="set_previous_range"
14469 c:identifier="hb_set_previous_range"
14470 version="1.8.0">
14471 <doc xml:space="preserve"
14472 filename="../src/hb-set.cc"
14473 line="520">Gets the previous consecutive range of numbers in @set that
14474 are less than current value of @first.
14475
14476 Set @first to %HB_SET_VALUE_INVALID to get started.</doc>
14477 <source-position filename="../src/hb-set.h" line="160"/>
14478 <return-value transfer-ownership="none">
14479 <doc xml:space="preserve"
14480 filename="../src/hb-set.cc"
14481 line="531">whether there was a previous range.</doc>
14482 <type name="bool_t" c:type="hb_bool_t"/>
14483 </return-value>
14484 <parameters>
14485 <parameter name="set" transfer-ownership="none">
14486 <doc xml:space="preserve"
14487 filename="../src/hb-set.cc"
14488 line="522">a set.</doc>
14489 <type name="set_t" c:type="const hb_set_t*"/>
14490 </parameter>
14491 <parameter name="first"
14492 direction="inout"
14493 caller-allocates="0"
14494 transfer-ownership="full">
14495 <doc xml:space="preserve"
14496 filename="../src/hb-set.cc"
14497 line="523">input current first and output first codepoint in the range.</doc>
14498 <type name="codepoint_t" c:type="hb_codepoint_t*"/>
14499 </parameter>
14500 <parameter name="last"
14501 direction="out"
14502 caller-allocates="0"
14503 transfer-ownership="full">
14504 <doc xml:space="preserve"
14505 filename="../src/hb-set.cc"
14506 line="524">output last codepoint in the range.</doc>
14507 <type name="codepoint_t" c:type="hb_codepoint_t*"/>
14508 </parameter>
14509 </parameters>
14510 </function>
14511 <function name="set_reference"
14512 c:identifier="hb_set_reference"
14513 version="0.9.2"
14514 introspectable="0">
14515 <source-position filename="../src/hb-set.h" line="54"/>
14516 <return-value transfer-ownership="full">
14517 <type name="set_t" c:type="hb_set_t*"/>
14518 </return-value>
14519 <parameters>
14520 <parameter name="set" transfer-ownership="none">
14521 <doc xml:space="preserve"
14522 filename="../src/hb-set.cc"
14523 line="77">a set.</doc>
14524 <type name="set_t" c:type="hb_set_t*"/>
14525 </parameter>
14526 </parameters>
14527 </function>
14528 <function name="set_set" c:identifier="hb_set_set" version="0.9.2">
14529 <source-position filename="../src/hb-set.h" line="112"/>
14530 <return-value transfer-ownership="none">
14531 <type name="none" c:type="void"/>
14532 </return-value>
14533 <parameters>
14534 <parameter name="set" transfer-ownership="none">
14535 <doc xml:space="preserve"
14536 filename="../src/hb-set.cc"
14537 line="314">a set.</doc>
14538 <type name="set_t" c:type="hb_set_t*"/>
14539 </parameter>
14540 <parameter name="other" transfer-ownership="none">
14541 <type name="set_t" c:type="const hb_set_t*"/>
14542 </parameter>
14543 </parameters>
14544 </function>
14545 <function name="set_set_user_data"
14546 c:identifier="hb_set_set_user_data"
14547 version="0.9.2"
14548 introspectable="0">
14549 <source-position filename="../src/hb-set.h" line="60"/>
14550 <return-value transfer-ownership="none">
14551 <type name="bool_t" c:type="hb_bool_t"/>
14552 </return-value>
14553 <parameters>
14554 <parameter name="set" transfer-ownership="none">
14555 <doc xml:space="preserve"
14556 filename="../src/hb-set.cc"
14557 line="107">a set.</doc>
14558 <type name="set_t" c:type="hb_set_t*"/>
14559 </parameter>
14560 <parameter name="key" transfer-ownership="none">
14561 <type name="user_data_key_t" c:type="hb_user_data_key_t*"/>
14562 </parameter>
14563 <parameter name="data"
14564 transfer-ownership="none"
14565 nullable="1"
14566 allow-none="1">
14567 <type name="gpointer" c:type="void*"/>
14568 </parameter>
14569 <parameter name="destroy" transfer-ownership="none">
14570 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
14571 </parameter>
14572 <parameter name="replace" transfer-ownership="none">
14573 <type name="bool_t" c:type="hb_bool_t"/>
14574 </parameter>
14575 </parameters>
14576 </function>
14577 <function name="set_subtract"
14578 c:identifier="hb_set_subtract"
14579 version="0.9.2">
14580 <source-position filename="../src/hb-set.h" line="124"/>
14581 <return-value transfer-ownership="none">
14582 <type name="none" c:type="void"/>
14583 </return-value>
14584 <parameters>
14585 <parameter name="set" transfer-ownership="none">
14586 <doc xml:space="preserve"
14587 filename="../src/hb-set.cc"
14588 line="362">a set.</doc>
14589 <type name="set_t" c:type="hb_set_t*"/>
14590 </parameter>
14591 <parameter name="other" transfer-ownership="none">
14592 <type name="set_t" c:type="const hb_set_t*"/>
14593 </parameter>
14594 </parameters>
14595 </function>
14596 <function name="set_symmetric_difference"
14597 c:identifier="hb_set_symmetric_difference"
14598 version="0.9.2">
14599 <source-position filename="../src/hb-set.h" line="128"/>
14600 <return-value transfer-ownership="none">
14601 <type name="none" c:type="void"/>
14602 </return-value>
14603 <parameters>
14604 <parameter name="set" transfer-ownership="none">
14605 <doc xml:space="preserve"
14606 filename="../src/hb-set.cc"
14607 line="378">a set.</doc>
14608 <type name="set_t" c:type="hb_set_t*"/>
14609 </parameter>
14610 <parameter name="other" transfer-ownership="none">
14611 <type name="set_t" c:type="const hb_set_t*"/>
14612 </parameter>
14613 </parameters>
14614 </function>
14615 <record name="set_t"
14616 c:type="hb_set_t"
14617 glib:type-name="hb_set_t"
14618 glib:get-type="hb_gobject_set_get_type"
14619 c:symbol-prefix="gobject_set">
14620 <source-position filename="../src/hb-set.h" line="44"/>
14621 </record>
14622 <function name="set_union" c:identifier="hb_set_union" version="0.9.2">
14623 <source-position filename="../src/hb-set.h" line="116"/>
14624 <return-value transfer-ownership="none">
14625 <type name="none" c:type="void"/>
14626 </return-value>
14627 <parameters>
14628 <parameter name="set" transfer-ownership="none">
14629 <doc xml:space="preserve"
14630 filename="../src/hb-set.cc"
14631 line="330">a set.</doc>
14632 <type name="set_t" c:type="hb_set_t*"/>
14633 </parameter>
14634 <parameter name="other" transfer-ownership="none">
14635 <type name="set_t" c:type="const hb_set_t*"/>
14636 </parameter>
14637 </parameters>
14638 </function>
14639 <function name="shape" c:identifier="hb_shape" version="0.9.2">
14640 <doc xml:space="preserve"
14641 filename="../src/hb-shape.cc"
14642 line="149">Shapes @buffer using @font turning its Unicode characters content to
14643 positioned glyphs. If @features is not %NULL, it will be used to control the
14644 features applied during shaping. If two @features have the same tag but
14645 overlapping ranges the value of the feature with the higher index takes
14646 precedence.</doc>
14647 <source-position filename="../src/hb-shape.h" line="44"/>
14648 <return-value transfer-ownership="none">
14649 <type name="none" c:type="void"/>
14650 </return-value>
14651 <parameters>
14652 <parameter name="font" transfer-ownership="none">
14653 <doc xml:space="preserve"
14654 filename="../src/hb-shape.cc"
14655 line="151">an #hb_font_t to use for shaping</doc>
14656 <type name="font_t" c:type="hb_font_t*"/>
14657 </parameter>
14658 <parameter name="buffer" transfer-ownership="none">
14659 <doc xml:space="preserve"
14660 filename="../src/hb-shape.cc"
14661 line="152">an #hb_buffer_t to shape</doc>
14662 <type name="buffer_t" c:type="hb_buffer_t*"/>
14663 </parameter>
14664 <parameter name="features"
14665 transfer-ownership="none"
14666 nullable="1"
14667 allow-none="1">
14668 <doc xml:space="preserve"
14669 filename="../src/hb-shape.cc"
14670 line="153">an array of user
14671 specified #hb_feature_t or %NULL</doc>
14672 <array length="3" zero-terminated="0" c:type="const hb_feature_t*">
14673 <type name="feature_t" c:type="hb_feature_t"/>
14674 </array>
14675 </parameter>
14676 <parameter name="num_features" transfer-ownership="none">
14677 <doc xml:space="preserve"
14678 filename="../src/hb-shape.cc"
14679 line="155">the length of @features array</doc>
14680 <type name="guint" c:type="unsigned int"/>
14681 </parameter>
14682 </parameters>
14683 </function>
14684 <function name="shape_full" c:identifier="hb_shape_full" version="0.9.2">
14685 <doc xml:space="preserve"
14686 filename="../src/hb-shape.cc"
14687 line="110">See hb_shape() for details. If @shaper_list is not %NULL, the specified
14688 shapers will be used in the given order, otherwise the default shapers list
14689 will be used.</doc>
14690 <source-position filename="../src/hb-shape.h" line="50"/>
14691 <return-value transfer-ownership="none">
14692 <doc xml:space="preserve"
14693 filename="../src/hb-shape.cc"
14694 line="124">false if all shapers failed, true otherwise</doc>
14695 <type name="bool_t" c:type="hb_bool_t"/>
14696 </return-value>
14697 <parameters>
14698 <parameter name="font" transfer-ownership="none">
14699 <doc xml:space="preserve"
14700 filename="../src/hb-shape.cc"
14701 line="112">an #hb_font_t to use for shaping</doc>
14702 <type name="font_t" c:type="hb_font_t*"/>
14703 </parameter>
14704 <parameter name="buffer" transfer-ownership="none">
14705 <doc xml:space="preserve"
14706 filename="../src/hb-shape.cc"
14707 line="113">an #hb_buffer_t to shape</doc>
14708 <type name="buffer_t" c:type="hb_buffer_t*"/>
14709 </parameter>
14710 <parameter name="features"
14711 transfer-ownership="none"
14712 nullable="1"
14713 allow-none="1">
14714 <doc xml:space="preserve"
14715 filename="../src/hb-shape.cc"
14716 line="114">an array of user
14717 specified #hb_feature_t or %NULL</doc>
14718 <array length="3" zero-terminated="0" c:type="const hb_feature_t*">
14719 <type name="feature_t" c:type="hb_feature_t"/>
14720 </array>
14721 </parameter>
14722 <parameter name="num_features" transfer-ownership="none">
14723 <doc xml:space="preserve"
14724 filename="../src/hb-shape.cc"
14725 line="116">the length of @features array</doc>
14726 <type name="guint" c:type="unsigned int"/>
14727 </parameter>
14728 <parameter name="shaper_list"
14729 transfer-ownership="none"
14730 nullable="1"
14731 allow-none="1">
14732 <doc xml:space="preserve"
14733 filename="../src/hb-shape.cc"
14734 line="117">a %NULL-terminated
14735 array of shapers to use or %NULL</doc>
14736 <array c:type="const char* const*">
14737 <type name="utf8" c:type="char*"/>
14738 </array>
14739 </parameter>
14740 </parameters>
14741 </function>
14742 <function name="shape_list_shapers"
14743 c:identifier="hb_shape_list_shapers"
14744 version="0.9.2">
14745 <doc xml:space="preserve"
14746 filename="../src/hb-shape.cc"
14747 line="93">Retrieves the list of shapers supported by HarfBuzz.</doc>
14748 <source-position filename="../src/hb-shape.h" line="57"/>
14749 <return-value transfer-ownership="none">
14750 <doc xml:space="preserve"
14751 filename="../src/hb-shape.cc"
14752 line="98">an array of
14753 constant strings</doc>
14754 <array c:type="const char**">
14755 <type name="utf8"/>
14756 </array>
14757 </return-value>
14758 </function>
14759 <function name="shape_plan_create"
14760 c:identifier="hb_shape_plan_create"
14761 version="0.9.7">
14762 <source-position filename="../src/hb-shape-plan.h" line="42"/>
14763 <return-value transfer-ownership="full">
14764 <type name="shape_plan_t" c:type="hb_shape_plan_t*"/>
14765 </return-value>
14766 <parameters>
14767 <parameter name="face" transfer-ownership="none">
14768 <type name="face_t" c:type="hb_face_t*"/>
14769 </parameter>
14770 <parameter name="props" transfer-ownership="none">
14771 <type name="segment_properties_t"
14772 c:type="const hb_segment_properties_t*"/>
14773 </parameter>
14774 <parameter name="user_features" transfer-ownership="none">
14775 <array length="3" zero-terminated="0" c:type="const hb_feature_t*">
14776 <type name="feature_t" c:type="hb_feature_t"/>
14777 </array>
14778 </parameter>
14779 <parameter name="num_user_features" transfer-ownership="none">
14780 <type name="guint" c:type="unsigned int"/>
14781 </parameter>
14782 <parameter name="shaper_list" transfer-ownership="none">
14783 <array c:type="const char* const*">
14784 <type name="utf8" c:type="char*"/>
14785 </array>
14786 </parameter>
14787 </parameters>
14788 </function>
14789 <function name="shape_plan_create2" c:identifier="hb_shape_plan_create2">
14790 <source-position filename="../src/hb-shape-plan.h" line="56"/>
14791 <return-value transfer-ownership="full">
14792 <type name="shape_plan_t" c:type="hb_shape_plan_t*"/>
14793 </return-value>
14794 <parameters>
14795 <parameter name="face" transfer-ownership="none">
14796 <type name="face_t" c:type="hb_face_t*"/>
14797 </parameter>
14798 <parameter name="props" transfer-ownership="none">
14799 <type name="segment_properties_t"
14800 c:type="const hb_segment_properties_t*"/>
14801 </parameter>
14802 <parameter name="user_features" transfer-ownership="none">
14803 <type name="feature_t" c:type="const hb_feature_t*"/>
14804 </parameter>
14805 <parameter name="num_user_features" transfer-ownership="none">
14806 <type name="guint" c:type="unsigned int"/>
14807 </parameter>
14808 <parameter name="coords" transfer-ownership="none">
14809 <type name="gint" c:type="const int*"/>
14810 </parameter>
14811 <parameter name="num_coords" transfer-ownership="none">
14812 <type name="guint" c:type="unsigned int"/>
14813 </parameter>
14814 <parameter name="shaper_list" transfer-ownership="none">
14815 <type name="utf8" c:type="const char* const*"/>
14816 </parameter>
14817 </parameters>
14818 </function>
14819 <function name="shape_plan_create_cached"
14820 c:identifier="hb_shape_plan_create_cached"
14821 version="0.9.7">
14822 <source-position filename="../src/hb-shape-plan.h" line="49"/>
14823 <return-value transfer-ownership="full">
14824 <type name="shape_plan_t" c:type="hb_shape_plan_t*"/>
14825 </return-value>
14826 <parameters>
14827 <parameter name="face" transfer-ownership="none">
14828 <type name="face_t" c:type="hb_face_t*"/>
14829 </parameter>
14830 <parameter name="props" transfer-ownership="none">
14831 <type name="segment_properties_t"
14832 c:type="const hb_segment_properties_t*"/>
14833 </parameter>
14834 <parameter name="user_features" transfer-ownership="none">
14835 <array length="3" zero-terminated="0" c:type="const hb_feature_t*">
14836 <type name="feature_t" c:type="hb_feature_t"/>
14837 </array>
14838 </parameter>
14839 <parameter name="num_user_features" transfer-ownership="none">
14840 <type name="guint" c:type="unsigned int"/>
14841 </parameter>
14842 <parameter name="shaper_list" transfer-ownership="none">
14843 <array c:type="const char* const*">
14844 <type name="utf8" c:type="char*"/>
14845 </array>
14846 </parameter>
14847 </parameters>
14848 </function>
14849 <function name="shape_plan_create_cached2"
14850 c:identifier="hb_shape_plan_create_cached2">
14851 <source-position filename="../src/hb-shape-plan.h" line="65"/>
14852 <return-value transfer-ownership="full">
14853 <type name="shape_plan_t" c:type="hb_shape_plan_t*"/>
14854 </return-value>
14855 <parameters>
14856 <parameter name="face" transfer-ownership="none">
14857 <type name="face_t" c:type="hb_face_t*"/>
14858 </parameter>
14859 <parameter name="props" transfer-ownership="none">
14860 <type name="segment_properties_t"
14861 c:type="const hb_segment_properties_t*"/>
14862 </parameter>
14863 <parameter name="user_features" transfer-ownership="none">
14864 <type name="feature_t" c:type="const hb_feature_t*"/>
14865 </parameter>
14866 <parameter name="num_user_features" transfer-ownership="none">
14867 <type name="guint" c:type="unsigned int"/>
14868 </parameter>
14869 <parameter name="coords" transfer-ownership="none">
14870 <type name="gint" c:type="const int*"/>
14871 </parameter>
14872 <parameter name="num_coords" transfer-ownership="none">
14873 <type name="guint" c:type="unsigned int"/>
14874 </parameter>
14875 <parameter name="shaper_list" transfer-ownership="none">
14876 <type name="utf8" c:type="const char* const*"/>
14877 </parameter>
14878 </parameters>
14879 </function>
14880 <function name="shape_plan_destroy"
14881 c:identifier="hb_shape_plan_destroy"
14882 version="0.9.7"
14883 introspectable="0">
14884 <source-position filename="../src/hb-shape-plan.h" line="81"/>
14885 <return-value transfer-ownership="none">
14886 <type name="none" c:type="void"/>
14887 </return-value>
14888 <parameters>
14889 <parameter name="shape_plan" transfer-ownership="none">
14890 <doc xml:space="preserve"
14891 filename="../src/hb-shape-plan.cc"
14892 line="281">a shape plan.</doc>
14893 <type name="shape_plan_t" c:type="hb_shape_plan_t*"/>
14894 </parameter>
14895 </parameters>
14896 </function>
14897 <function name="shape_plan_execute"
14898 c:identifier="hb_shape_plan_execute"
14899 version="0.9.7">
14900 <source-position filename="../src/hb-shape-plan.h" line="96"/>
14901 <return-value transfer-ownership="none">
14902 <type name="bool_t" c:type="hb_bool_t"/>
14903 </return-value>
14904 <parameters>
14905 <parameter name="shape_plan" transfer-ownership="none">
14906 <doc xml:space="preserve"
14907 filename="../src/hb-shape-plan.cc"
14908 line="360">a shape plan.</doc>
14909 <type name="shape_plan_t" c:type="hb_shape_plan_t*"/>
14910 </parameter>
14911 <parameter name="font" transfer-ownership="none">
14912 <doc xml:space="preserve"
14913 filename="../src/hb-shape-plan.cc"
14914 line="361">a font.</doc>
14915 <type name="font_t" c:type="hb_font_t*"/>
14916 </parameter>
14917 <parameter name="buffer" transfer-ownership="none">
14918 <doc xml:space="preserve"
14919 filename="../src/hb-shape-plan.cc"
14920 line="362">a buffer.</doc>
14921 <type name="buffer_t" c:type="hb_buffer_t*"/>
14922 </parameter>
14923 <parameter name="features" transfer-ownership="none">
14924 <array length="4" zero-terminated="0" c:type="const hb_feature_t*">
14925 <type name="feature_t" c:type="hb_feature_t"/>
14926 </array>
14927 </parameter>
14928 <parameter name="num_features" transfer-ownership="none">
14929 <type name="guint" c:type="unsigned int"/>
14930 </parameter>
14931 </parameters>
14932 </function>
14933 <function name="shape_plan_get_empty"
14934 c:identifier="hb_shape_plan_get_empty"
14935 version="0.9.7">
14936 <source-position filename="../src/hb-shape-plan.h" line="75"/>
14937 <return-value transfer-ownership="full">
14938 <type name="shape_plan_t" c:type="hb_shape_plan_t*"/>
14939 </return-value>
14940 </function>
14941 <function name="shape_plan_get_shaper"
14942 c:identifier="hb_shape_plan_get_shaper"
14943 version="0.9.7">
14944 <source-position filename="../src/hb-shape-plan.h" line="103"/>
14945 <return-value transfer-ownership="none">
14946 <type name="utf8" c:type="const char*"/>
14947 </return-value>
14948 <parameters>
14949 <parameter name="shape_plan" transfer-ownership="none">
14950 <doc xml:space="preserve"
14951 filename="../src/hb-shape-plan.cc"
14952 line="343">a shape plan.</doc>
14953 <type name="shape_plan_t" c:type="hb_shape_plan_t*"/>
14954 </parameter>
14955 </parameters>
14956 </function>
14957 <function name="shape_plan_get_user_data"
14958 c:identifier="hb_shape_plan_get_user_data"
14959 version="0.9.7"
14960 introspectable="0">
14961 <source-position filename="../src/hb-shape-plan.h" line="91"/>
14962 <return-value transfer-ownership="none" nullable="1">
14963 <type name="gpointer" c:type="void*"/>
14964 </return-value>
14965 <parameters>
14966 <parameter name="shape_plan" transfer-ownership="none">
14967 <doc xml:space="preserve"
14968 filename="../src/hb-shape-plan.cc"
14969 line="325">a shape plan.</doc>
14970 <type name="shape_plan_t" c:type="hb_shape_plan_t*"/>
14971 </parameter>
14972 <parameter name="key" transfer-ownership="none">
14973 <type name="user_data_key_t" c:type="hb_user_data_key_t*"/>
14974 </parameter>
14975 </parameters>
14976 </function>
14977 <function name="shape_plan_reference"
14978 c:identifier="hb_shape_plan_reference"
14979 version="0.9.7"
14980 introspectable="0">
14981 <source-position filename="../src/hb-shape-plan.h" line="78"/>
14982 <return-value transfer-ownership="full">
14983 <type name="shape_plan_t" c:type="hb_shape_plan_t*"/>
14984 </return-value>
14985 <parameters>
14986 <parameter name="shape_plan" transfer-ownership="none">
14987 <doc xml:space="preserve"
14988 filename="../src/hb-shape-plan.cc"
14989 line="265">a shape plan.</doc>
14990 <type name="shape_plan_t" c:type="hb_shape_plan_t*"/>
14991 </parameter>
14992 </parameters>
14993 </function>
14994 <function name="shape_plan_set_user_data"
14995 c:identifier="hb_shape_plan_set_user_data"
14996 version="0.9.7"
14997 introspectable="0">
14998 <source-position filename="../src/hb-shape-plan.h" line="84"/>
14999 <return-value transfer-ownership="none">
15000 <type name="bool_t" c:type="hb_bool_t"/>
15001 </return-value>
15002 <parameters>
15003 <parameter name="shape_plan" transfer-ownership="none">
15004 <doc xml:space="preserve"
15005 filename="../src/hb-shape-plan.cc"
15006 line="301">a shape plan.</doc>
15007 <type name="shape_plan_t" c:type="hb_shape_plan_t*"/>
15008 </parameter>
15009 <parameter name="key" transfer-ownership="none">
15010 <type name="user_data_key_t" c:type="hb_user_data_key_t*"/>
15011 </parameter>
15012 <parameter name="data"
15013 transfer-ownership="none"
15014 nullable="1"
15015 allow-none="1">
15016 <type name="gpointer" c:type="void*"/>
15017 </parameter>
15018 <parameter name="destroy" transfer-ownership="none">
15019 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
15020 </parameter>
15021 <parameter name="replace" transfer-ownership="none">
15022 <type name="bool_t" c:type="hb_bool_t"/>
15023 </parameter>
15024 </parameters>
15025 </function>
15026 <record name="shape_plan_t"
15027 c:type="hb_shape_plan_t"
15028 glib:type-name="hb_shape_plan_t"
15029 glib:get-type="hb_gobject_shape_plan_get_type"
15030 c:symbol-prefix="gobject_shape_plan">
15031 <source-position filename="../src/hb-shape-plan.h" line="39"/>
15032 </record>
15033 <function name="tag_from_string"
15034 c:identifier="hb_tag_from_string"
15035 version="0.9.2">
15036 <source-position filename="../src/hb-common.h" line="121"/>
15037 <return-value transfer-ownership="none">
15038 <type name="tag_t" c:type="hb_tag_t"/>
15039 </return-value>
15040 <parameters>
15041 <parameter name="str" transfer-ownership="none">
15042 <array length="1" zero-terminated="0" c:type="const char*">
15043 <type name="guint8"/>
15044 </array>
15045 </parameter>
15046 <parameter name="len" transfer-ownership="none">
15047 <type name="gint" c:type="int"/>
15048 </parameter>
15049 </parameters>
15050 </function>
15051 <function name="tag_to_string"
15052 c:identifier="hb_tag_to_string"
15053 version="0.9.5">
15054 <source-position filename="../src/hb-common.h" line="125"/>
15055 <return-value transfer-ownership="none">
15056 <type name="none" c:type="void"/>
15057 </return-value>
15058 <parameters>
15059 <parameter name="tag" transfer-ownership="none">
15060 <type name="tag_t" c:type="hb_tag_t"/>
15061 </parameter>
15062 <parameter name="buf"
15063 direction="out"
15064 caller-allocates="1"
15065 transfer-ownership="none">
15066 <array zero-terminated="0" c:type="char*" fixed-size="4">
15067 <type name="guint8"/>
15068 </array>
15069 </parameter>
15070 </parameters>
15071 </function>
15072 <function name="unicode_combining_class"
15073 c:identifier="hb_unicode_combining_class"
15074 version="0.9.2">
15075 <source-position filename="../src/hb-unicode.h" line="360"/>
15076 <return-value transfer-ownership="none">
15077 <type name="unicode_combining_class_t"
15078 c:type="hb_unicode_combining_class_t"/>
15079 </return-value>
15080 <parameters>
15081 <parameter name="ufuncs" transfer-ownership="none">
15082 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
15083 </parameter>
15084 <parameter name="unicode" transfer-ownership="none">
15085 <type name="codepoint_t" c:type="hb_codepoint_t"/>
15086 </parameter>
15087 </parameters>
15088 </function>
15089 <callback name="unicode_combining_class_func_t"
15090 c:type="hb_unicode_combining_class_func_t">
15091 <source-position filename="../src/hb-unicode.h" line="230"/>
15092 <return-value transfer-ownership="none">
15093 <type name="unicode_combining_class_t"
15094 c:type="hb_unicode_combining_class_t"/>
15095 </return-value>
15096 <parameters>
15097 <parameter name="ufuncs" transfer-ownership="none">
15098 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
15099 </parameter>
15100 <parameter name="unicode" transfer-ownership="none">
15101 <type name="codepoint_t" c:type="hb_codepoint_t"/>
15102 </parameter>
15103 <parameter name="user_data"
15104 transfer-ownership="none"
15105 nullable="1"
15106 allow-none="1"
15107 closure="2">
15108 <type name="gpointer" c:type="void*"/>
15109 </parameter>
15110 </parameters>
15111 </callback>
15112 <enumeration name="unicode_combining_class_t"
15113 glib:type-name="hb_unicode_combining_class_t"
15114 glib:get-type="hb_gobject_unicode_combining_class_get_type"
15115 c:type="hb_unicode_combining_class_t">
15116 <member name="not_reordered"
15117 value="0"
15118 c:identifier="HB_UNICODE_COMBINING_CLASS_NOT_REORDERED"
15119 glib:nick="not-reordered">
15120 </member>
15121 <member name="overlay"
15122 value="1"
15123 c:identifier="HB_UNICODE_COMBINING_CLASS_OVERLAY"
15124 glib:nick="overlay">
15125 </member>
15126 <member name="nukta"
15127 value="7"
15128 c:identifier="HB_UNICODE_COMBINING_CLASS_NUKTA"
15129 glib:nick="nukta">
15130 </member>
15131 <member name="kana_voicing"
15132 value="8"
15133 c:identifier="HB_UNICODE_COMBINING_CLASS_KANA_VOICING"
15134 glib:nick="kana-voicing">
15135 </member>
15136 <member name="virama"
15137 value="9"
15138 c:identifier="HB_UNICODE_COMBINING_CLASS_VIRAMA"
15139 glib:nick="virama">
15140 </member>
15141 <member name="ccc10"
15142 value="10"
15143 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC10"
15144 glib:nick="ccc10">
15145 </member>
15146 <member name="ccc11"
15147 value="11"
15148 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC11"
15149 glib:nick="ccc11">
15150 </member>
15151 <member name="ccc12"
15152 value="12"
15153 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC12"
15154 glib:nick="ccc12">
15155 </member>
15156 <member name="ccc13"
15157 value="13"
15158 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC13"
15159 glib:nick="ccc13">
15160 </member>
15161 <member name="ccc14"
15162 value="14"
15163 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC14"
15164 glib:nick="ccc14">
15165 </member>
15166 <member name="ccc15"
15167 value="15"
15168 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC15"
15169 glib:nick="ccc15">
15170 </member>
15171 <member name="ccc16"
15172 value="16"
15173 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC16"
15174 glib:nick="ccc16">
15175 </member>
15176 <member name="ccc17"
15177 value="17"
15178 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC17"
15179 glib:nick="ccc17">
15180 </member>
15181 <member name="ccc18"
15182 value="18"
15183 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC18"
15184 glib:nick="ccc18">
15185 </member>
15186 <member name="ccc19"
15187 value="19"
15188 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC19"
15189 glib:nick="ccc19">
15190 </member>
15191 <member name="ccc20"
15192 value="20"
15193 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC20"
15194 glib:nick="ccc20">
15195 </member>
15196 <member name="ccc21"
15197 value="21"
15198 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC21"
15199 glib:nick="ccc21">
15200 </member>
15201 <member name="ccc22"
15202 value="22"
15203 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC22"
15204 glib:nick="ccc22">
15205 </member>
15206 <member name="ccc23"
15207 value="23"
15208 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC23"
15209 glib:nick="ccc23">
15210 </member>
15211 <member name="ccc24"
15212 value="24"
15213 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC24"
15214 glib:nick="ccc24">
15215 </member>
15216 <member name="ccc25"
15217 value="25"
15218 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC25"
15219 glib:nick="ccc25">
15220 </member>
15221 <member name="ccc26"
15222 value="26"
15223 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC26"
15224 glib:nick="ccc26">
15225 </member>
15226 <member name="ccc27"
15227 value="27"
15228 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC27"
15229 glib:nick="ccc27">
15230 </member>
15231 <member name="ccc28"
15232 value="28"
15233 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC28"
15234 glib:nick="ccc28">
15235 </member>
15236 <member name="ccc29"
15237 value="29"
15238 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC29"
15239 glib:nick="ccc29">
15240 </member>
15241 <member name="ccc30"
15242 value="30"
15243 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC30"
15244 glib:nick="ccc30">
15245 </member>
15246 <member name="ccc31"
15247 value="31"
15248 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC31"
15249 glib:nick="ccc31">
15250 </member>
15251 <member name="ccc32"
15252 value="32"
15253 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC32"
15254 glib:nick="ccc32">
15255 </member>
15256 <member name="ccc33"
15257 value="33"
15258 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC33"
15259 glib:nick="ccc33">
15260 </member>
15261 <member name="ccc34"
15262 value="34"
15263 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC34"
15264 glib:nick="ccc34">
15265 </member>
15266 <member name="ccc35"
15267 value="35"
15268 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC35"
15269 glib:nick="ccc35">
15270 </member>
15271 <member name="ccc36"
15272 value="36"
15273 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC36"
15274 glib:nick="ccc36">
15275 </member>
15276 <member name="ccc84"
15277 value="84"
15278 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC84"
15279 glib:nick="ccc84">
15280 </member>
15281 <member name="ccc91"
15282 value="91"
15283 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC91"
15284 glib:nick="ccc91">
15285 </member>
15286 <member name="ccc103"
15287 value="103"
15288 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC103"
15289 glib:nick="ccc103">
15290 </member>
15291 <member name="ccc107"
15292 value="107"
15293 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC107"
15294 glib:nick="ccc107">
15295 </member>
15296 <member name="ccc118"
15297 value="118"
15298 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC118"
15299 glib:nick="ccc118">
15300 </member>
15301 <member name="ccc122"
15302 value="122"
15303 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC122"
15304 glib:nick="ccc122">
15305 </member>
15306 <member name="ccc129"
15307 value="129"
15308 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC129"
15309 glib:nick="ccc129">
15310 </member>
15311 <member name="ccc130"
15312 value="130"
15313 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC130"
15314 glib:nick="ccc130">
15315 </member>
15316 <member name="ccc133"
15317 value="132"
15318 c:identifier="HB_UNICODE_COMBINING_CLASS_CCC133"
15319 glib:nick="ccc133">
15320 </member>
15321 <member name="attached_below_left"
15322 value="200"
15323 c:identifier="HB_UNICODE_COMBINING_CLASS_ATTACHED_BELOW_LEFT"
15324 glib:nick="attached-below-left">
15325 </member>
15326 <member name="attached_below"
15327 value="202"
15328 c:identifier="HB_UNICODE_COMBINING_CLASS_ATTACHED_BELOW"
15329 glib:nick="attached-below">
15330 </member>
15331 <member name="attached_above"
15332 value="214"
15333 c:identifier="HB_UNICODE_COMBINING_CLASS_ATTACHED_ABOVE"
15334 glib:nick="attached-above">
15335 </member>
15336 <member name="attached_above_right"
15337 value="216"
15338 c:identifier="HB_UNICODE_COMBINING_CLASS_ATTACHED_ABOVE_RIGHT"
15339 glib:nick="attached-above-right">
15340 </member>
15341 <member name="below_left"
15342 value="218"
15343 c:identifier="HB_UNICODE_COMBINING_CLASS_BELOW_LEFT"
15344 glib:nick="below-left">
15345 </member>
15346 <member name="below"
15347 value="220"
15348 c:identifier="HB_UNICODE_COMBINING_CLASS_BELOW"
15349 glib:nick="below">
15350 </member>
15351 <member name="below_right"
15352 value="222"
15353 c:identifier="HB_UNICODE_COMBINING_CLASS_BELOW_RIGHT"
15354 glib:nick="below-right">
15355 </member>
15356 <member name="left"
15357 value="224"
15358 c:identifier="HB_UNICODE_COMBINING_CLASS_LEFT"
15359 glib:nick="left">
15360 </member>
15361 <member name="right"
15362 value="226"
15363 c:identifier="HB_UNICODE_COMBINING_CLASS_RIGHT"
15364 glib:nick="right">
15365 </member>
15366 <member name="above_left"
15367 value="228"
15368 c:identifier="HB_UNICODE_COMBINING_CLASS_ABOVE_LEFT"
15369 glib:nick="above-left">
15370 </member>
15371 <member name="above"
15372 value="230"
15373 c:identifier="HB_UNICODE_COMBINING_CLASS_ABOVE"
15374 glib:nick="above">
15375 </member>
15376 <member name="above_right"
15377 value="232"
15378 c:identifier="HB_UNICODE_COMBINING_CLASS_ABOVE_RIGHT"
15379 glib:nick="above-right">
15380 </member>
15381 <member name="double_below"
15382 value="233"
15383 c:identifier="HB_UNICODE_COMBINING_CLASS_DOUBLE_BELOW"
15384 glib:nick="double-below">
15385 </member>
15386 <member name="double_above"
15387 value="234"
15388 c:identifier="HB_UNICODE_COMBINING_CLASS_DOUBLE_ABOVE"
15389 glib:nick="double-above">
15390 </member>
15391 <member name="iota_subscript"
15392 value="240"
15393 c:identifier="HB_UNICODE_COMBINING_CLASS_IOTA_SUBSCRIPT"
15394 glib:nick="iota-subscript">
15395 </member>
15396 <member name="invalid"
15397 value="255"
15398 c:identifier="HB_UNICODE_COMBINING_CLASS_INVALID"
15399 glib:nick="invalid">
15400 </member>
15401 </enumeration>
15402 <function name="unicode_compose"
15403 c:identifier="hb_unicode_compose"
15404 version="0.9.2">
15405 <source-position filename="../src/hb-unicode.h" line="391"/>
15406 <return-value transfer-ownership="none">
15407 <type name="bool_t" c:type="hb_bool_t"/>
15408 </return-value>
15409 <parameters>
15410 <parameter name="ufuncs" transfer-ownership="none">
15411 <doc xml:space="preserve"
15412 filename="../src/hb-unicode.cc"
15413 line="392">Unicode functions.</doc>
15414 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
15415 </parameter>
15416 <parameter name="a" transfer-ownership="none">
15417 <type name="codepoint_t" c:type="hb_codepoint_t"/>
15418 </parameter>
15419 <parameter name="b" transfer-ownership="none">
15420 <type name="codepoint_t" c:type="hb_codepoint_t"/>
15421 </parameter>
15422 <parameter name="ab"
15423 direction="out"
15424 caller-allocates="0"
15425 transfer-ownership="full">
15426 <type name="codepoint_t" c:type="hb_codepoint_t*"/>
15427 </parameter>
15428 </parameters>
15429 </function>
15430 <callback name="unicode_compose_func_t" c:type="hb_unicode_compose_func_t">
15431 <source-position filename="../src/hb-unicode.h" line="243"/>
15432 <return-value transfer-ownership="none">
15433 <type name="bool_t" c:type="hb_bool_t"/>
15434 </return-value>
15435 <parameters>
15436 <parameter name="ufuncs" transfer-ownership="none">
15437 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
15438 </parameter>
15439 <parameter name="a" transfer-ownership="none">
15440 <type name="codepoint_t" c:type="hb_codepoint_t"/>
15441 </parameter>
15442 <parameter name="b" transfer-ownership="none">
15443 <type name="codepoint_t" c:type="hb_codepoint_t"/>
15444 </parameter>
15445 <parameter name="ab" transfer-ownership="none">
15446 <type name="codepoint_t" c:type="hb_codepoint_t*"/>
15447 </parameter>
15448 <parameter name="user_data"
15449 transfer-ownership="none"
15450 nullable="1"
15451 allow-none="1"
15452 closure="4">
15453 <type name="gpointer" c:type="void*"/>
15454 </parameter>
15455 </parameters>
15456 </callback>
15457 <function name="unicode_decompose"
15458 c:identifier="hb_unicode_decompose"
15459 version="0.9.2">
15460 <source-position filename="../src/hb-unicode.h" line="397"/>
15461 <return-value transfer-ownership="none">
15462 <type name="bool_t" c:type="hb_bool_t"/>
15463 </return-value>
15464 <parameters>
15465 <parameter name="ufuncs" transfer-ownership="none">
15466 <doc xml:space="preserve"
15467 filename="../src/hb-unicode.cc"
15468 line="414">Unicode functions.</doc>
15469 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
15470 </parameter>
15471 <parameter name="ab" transfer-ownership="none">
15472 <type name="codepoint_t" c:type="hb_codepoint_t"/>
15473 </parameter>
15474 <parameter name="a"
15475 direction="out"
15476 caller-allocates="0"
15477 transfer-ownership="full">
15478 <type name="codepoint_t" c:type="hb_codepoint_t*"/>
15479 </parameter>
15480 <parameter name="b"
15481 direction="out"
15482 caller-allocates="0"
15483 transfer-ownership="full">
15484 <type name="codepoint_t" c:type="hb_codepoint_t*"/>
15485 </parameter>
15486 </parameters>
15487 </function>
15488 <function name="unicode_decompose_compatibility"
15489 c:identifier="hb_unicode_decompose_compatibility"
15490 version="0.9.2"
15491 deprecated="1"
15492 deprecated-version="2.0.0">
15493 <source-position filename="../src/hb-deprecated.h" line="163"/>
15494 <return-value transfer-ownership="none">
15495 <type name="guint" c:type="unsigned int"/>
15496 </return-value>
15497 <parameters>
15498 <parameter name="ufuncs" transfer-ownership="none">
15499 <doc xml:space="preserve"
15500 filename="../src/hb-unicode.cc"
15501 line="437">Unicode functions.</doc>
15502 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
15503 </parameter>
15504 <parameter name="u" transfer-ownership="none">
15505 <type name="codepoint_t" c:type="hb_codepoint_t"/>
15506 </parameter>
15507 <parameter name="decomposed"
15508 direction="out"
15509 caller-allocates="0"
15510 transfer-ownership="full">
15511 <type name="codepoint_t" c:type="hb_codepoint_t*"/>
15512 </parameter>
15513 </parameters>
15514 </function>
15515 <callback name="unicode_decompose_compatibility_func_t"
15516 c:type="hb_unicode_decompose_compatibility_func_t"
15517 deprecated="1"
15518 deprecated-version="2.0.0">
15519 <doc xml:space="preserve"
15520 filename="../src/hb-deprecated.h"
15521 line="111">Fully decompose @u to its Unicode compatibility decomposition. The codepoints of the decomposition will be written to @decomposed.
15522 The complete length of the decomposition will be returned.
15523
15524 If @u has no compatibility decomposition, zero should be returned.
15525
15526 The Unicode standard guarantees that a buffer of length %HB_UNICODE_MAX_DECOMPOSITION_LEN codepoints will always be sufficient for any
15527 compatibility decomposition plus an terminating value of 0. Consequently, @decompose must be allocated by the caller to be at least this length. Implementations
15528 of this function type must ensure that they do not write past the provided array.</doc>
15529 <source-position filename="../src/hb-deprecated.h" line="131"/>
15530 <return-value transfer-ownership="none">
15531 <doc xml:space="preserve"
15532 filename="../src/hb-deprecated.h"
15533 line="127">number of codepoints in the full compatibility decomposition of @u, or 0 if no decomposition available.</doc>
15534 <type name="guint" c:type="unsigned int"/>
15535 </return-value>
15536 <parameters>
15537 <parameter name="ufuncs" transfer-ownership="none">
15538 <doc xml:space="preserve"
15539 filename="../src/hb-deprecated.h"
15540 line="113">a Unicode function structure</doc>
15541 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
15542 </parameter>
15543 <parameter name="u" transfer-ownership="none">
15544 <doc xml:space="preserve"
15545 filename="../src/hb-deprecated.h"
15546 line="114">codepoint to decompose</doc>
15547 <type name="codepoint_t" c:type="hb_codepoint_t"/>
15548 </parameter>
15549 <parameter name="decomposed" transfer-ownership="none">
15550 <doc xml:space="preserve"
15551 filename="../src/hb-deprecated.h"
15552 line="115">address of codepoint array (of length %HB_UNICODE_MAX_DECOMPOSITION_LEN) to write decomposition into</doc>
15553 <type name="codepoint_t" c:type="hb_codepoint_t*"/>
15554 </parameter>
15555 <parameter name="user_data"
15556 transfer-ownership="none"
15557 nullable="1"
15558 allow-none="1"
15559 closure="3">
15560 <doc xml:space="preserve"
15561 filename="../src/hb-deprecated.h"
15562 line="116">user data pointer as passed to hb_unicode_funcs_set_decompose_compatibility_func()</doc>
15563 <type name="gpointer" c:type="void*"/>
15564 </parameter>
15565 </parameters>
15566 </callback>
15567 <callback name="unicode_decompose_func_t"
15568 c:type="hb_unicode_decompose_func_t">
15569 <source-position filename="../src/hb-unicode.h" line="248"/>
15570 <return-value transfer-ownership="none">
15571 <type name="bool_t" c:type="hb_bool_t"/>
15572 </return-value>
15573 <parameters>
15574 <parameter name="ufuncs" transfer-ownership="none">
15575 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
15576 </parameter>
15577 <parameter name="ab" transfer-ownership="none">
15578 <type name="codepoint_t" c:type="hb_codepoint_t"/>
15579 </parameter>
15580 <parameter name="a" transfer-ownership="none">
15581 <type name="codepoint_t" c:type="hb_codepoint_t*"/>
15582 </parameter>
15583 <parameter name="b" transfer-ownership="none">
15584 <type name="codepoint_t" c:type="hb_codepoint_t*"/>
15585 </parameter>
15586 <parameter name="user_data"
15587 transfer-ownership="none"
15588 nullable="1"
15589 allow-none="1"
15590 closure="4">
15591 <type name="gpointer" c:type="void*"/>
15592 </parameter>
15593 </parameters>
15594 </callback>
15595 <function name="unicode_eastasian_width"
15596 c:identifier="hb_unicode_eastasian_width"
15597 version="0.9.2"
15598 deprecated="1"
15599 deprecated-version="2.0.0">
15600 <source-position filename="../src/hb-deprecated.h" line="107"/>
15601 <return-value transfer-ownership="none">
15602 <type name="guint" c:type="unsigned int"/>
15603 </return-value>
15604 <parameters>
15605 <parameter name="ufuncs" transfer-ownership="none">
15606 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
15607 </parameter>
15608 <parameter name="unicode" transfer-ownership="none">
15609 <type name="codepoint_t" c:type="hb_codepoint_t"/>
15610 </parameter>
15611 </parameters>
15612 </function>
15613 <callback name="unicode_eastasian_width_func_t"
15614 c:type="hb_unicode_eastasian_width_func_t"
15615 deprecated="1"
15616 deprecated-version="2.0.0">
15617 <source-position filename="../src/hb-deprecated.h" line="79"/>
15618 <return-value transfer-ownership="none">
15619 <type name="guint" c:type="unsigned int"/>
15620 </return-value>
15621 <parameters>
15622 <parameter name="ufuncs" transfer-ownership="none">
15623 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
15624 </parameter>
15625 <parameter name="unicode" transfer-ownership="none">
15626 <type name="codepoint_t" c:type="hb_codepoint_t"/>
15627 </parameter>
15628 <parameter name="user_data"
15629 transfer-ownership="none"
15630 nullable="1"
15631 allow-none="1"
15632 closure="2">
15633 <type name="gpointer" c:type="void*"/>
15634 </parameter>
15635 </parameters>
15636 </callback>
15637 <function name="unicode_funcs_create"
15638 c:identifier="hb_unicode_funcs_create"
15639 version="0.9.2">
15640 <source-position filename="../src/hb-unicode.h" line="190"/>
15641 <return-value transfer-ownership="full">
15642 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
15643 </return-value>
15644 <parameters>
15645 <parameter name="parent"
15646 transfer-ownership="none"
15647 nullable="1"
15648 allow-none="1">
15649 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
15650 </parameter>
15651 </parameters>
15652 </function>
15653 <function name="unicode_funcs_destroy"
15654 c:identifier="hb_unicode_funcs_destroy"
15655 version="0.9.2"
15656 introspectable="0">
15657 <source-position filename="../src/hb-unicode.h" line="199"/>
15658 <return-value transfer-ownership="none">
15659 <type name="none" c:type="void"/>
15660 </return-value>
15661 <parameters>
15662 <parameter name="ufuncs" transfer-ownership="none">
15663 <doc xml:space="preserve"
15664 filename="../src/hb-unicode.cc"
15665 line="236">Unicode functions.</doc>
15666 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
15667 </parameter>
15668 </parameters>
15669 </function>
15670 <function name="unicode_funcs_get_default"
15671 c:identifier="hb_unicode_funcs_get_default">
15672 <source-position filename="../src/hb-unicode.h" line="186"/>
15673 <return-value transfer-ownership="full">
15674 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
15675 </return-value>
15676 </function>
15677 <function name="unicode_funcs_get_empty"
15678 c:identifier="hb_unicode_funcs_get_empty"
15679 version="0.9.2">
15680 <source-position filename="../src/hb-unicode.h" line="193"/>
15681 <return-value transfer-ownership="full">
15682 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
15683 </return-value>
15684 </function>
15685 <function name="unicode_funcs_get_parent"
15686 c:identifier="hb_unicode_funcs_get_parent"
15687 version="0.9.2">
15688 <source-position filename="../src/hb-unicode.h" line="221"/>
15689 <return-value transfer-ownership="full">
15690 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
15691 </return-value>
15692 <parameters>
15693 <parameter name="ufuncs" transfer-ownership="none">
15694 <doc xml:space="preserve"
15695 filename="../src/hb-unicode.cc"
15696 line="335">Unicode functions.</doc>
15697 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
15698 </parameter>
15699 </parameters>
15700 </function>
15701 <function name="unicode_funcs_get_user_data"
15702 c:identifier="hb_unicode_funcs_get_user_data"
15703 version="0.9.2"
15704 introspectable="0">
15705 <source-position filename="../src/hb-unicode.h" line="210"/>
15706 <return-value transfer-ownership="none" nullable="1">
15707 <type name="gpointer" c:type="void*"/>
15708 </return-value>
15709 <parameters>
15710 <parameter name="ufuncs" transfer-ownership="none">
15711 <doc xml:space="preserve"
15712 filename="../src/hb-unicode.cc"
15713 line="283">Unicode functions.</doc>
15714 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
15715 </parameter>
15716 <parameter name="key" transfer-ownership="none">
15717 <type name="user_data_key_t" c:type="hb_user_data_key_t*"/>
15718 </parameter>
15719 </parameters>
15720 </function>
15721 <function name="unicode_funcs_is_immutable"
15722 c:identifier="hb_unicode_funcs_is_immutable"
15723 version="0.9.2">
15724 <source-position filename="../src/hb-unicode.h" line="218"/>
15725 <return-value transfer-ownership="none">
15726 <type name="bool_t" c:type="hb_bool_t"/>
15727 </return-value>
15728 <parameters>
15729 <parameter name="ufuncs" transfer-ownership="none">
15730 <doc xml:space="preserve"
15731 filename="../src/hb-unicode.cc"
15732 line="319">Unicode functions.</doc>
15733 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
15734 </parameter>
15735 </parameters>
15736 </function>
15737 <function name="unicode_funcs_make_immutable"
15738 c:identifier="hb_unicode_funcs_make_immutable"
15739 version="0.9.2">
15740 <source-position filename="../src/hb-unicode.h" line="215"/>
15741 <return-value transfer-ownership="none">
15742 <type name="none" c:type="void"/>
15743 </return-value>
15744 <parameters>
15745 <parameter name="ufuncs" transfer-ownership="none">
15746 <doc xml:space="preserve"
15747 filename="../src/hb-unicode.cc"
15748 line="302">Unicode functions.</doc>
15749 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
15750 </parameter>
15751 </parameters>
15752 </function>
15753 <function name="unicode_funcs_reference"
15754 c:identifier="hb_unicode_funcs_reference"
15755 version="0.9.2"
15756 introspectable="0">
15757 <source-position filename="../src/hb-unicode.h" line="196"/>
15758 <return-value transfer-ownership="full">
15759 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
15760 </return-value>
15761 <parameters>
15762 <parameter name="ufuncs" transfer-ownership="none">
15763 <doc xml:space="preserve"
15764 filename="../src/hb-unicode.cc"
15765 line="220">Unicode functions.</doc>
15766 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
15767 </parameter>
15768 </parameters>
15769 </function>
15770 <function name="unicode_funcs_set_combining_class_func"
15771 c:identifier="hb_unicode_funcs_set_combining_class_func"
15772 version="0.9.2">
15773 <source-position filename="../src/hb-unicode.h" line="268"/>
15774 <return-value transfer-ownership="none">
15775 <type name="none" c:type="void"/>
15776 </return-value>
15777 <parameters>
15778 <parameter name="ufuncs" transfer-ownership="none">
15779 <doc xml:space="preserve"
15780 filename="../src/hb-unicode.h"
15781 line="258">a Unicode function structure</doc>
15782 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
15783 </parameter>
15784 <parameter name="func"
15785 transfer-ownership="none"
15786 scope="notified"
15787 closure="2"
15788 destroy="3">
15789 <type name="unicode_combining_class_func_t"
15790 c:type="hb_unicode_combining_class_func_t"/>
15791 </parameter>
15792 <parameter name="user_data"
15793 transfer-ownership="none"
15794 nullable="1"
15795 allow-none="1">
15796 <type name="gpointer" c:type="void*"/>
15797 </parameter>
15798 <parameter name="destroy" transfer-ownership="none" scope="notified">
15799 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
15800 </parameter>
15801 </parameters>
15802 </function>
15803 <function name="unicode_funcs_set_compose_func"
15804 c:identifier="hb_unicode_funcs_set_compose_func"
15805 version="0.9.2">
15806 <source-position filename="../src/hb-unicode.h" line="332"/>
15807 <return-value transfer-ownership="none">
15808 <type name="none" c:type="void"/>
15809 </return-value>
15810 <parameters>
15811 <parameter name="ufuncs" transfer-ownership="none">
15812 <doc xml:space="preserve"
15813 filename="../src/hb-unicode.h"
15814 line="322">a Unicode function structure</doc>
15815 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
15816 </parameter>
15817 <parameter name="func"
15818 transfer-ownership="none"
15819 scope="notified"
15820 closure="2"
15821 destroy="3">
15822 <type name="unicode_compose_func_t"
15823 c:type="hb_unicode_compose_func_t"/>
15824 </parameter>
15825 <parameter name="user_data"
15826 transfer-ownership="none"
15827 nullable="1"
15828 allow-none="1">
15829 <type name="gpointer" c:type="void*"/>
15830 </parameter>
15831 <parameter name="destroy" transfer-ownership="none" scope="notified">
15832 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
15833 </parameter>
15834 </parameters>
15835 </function>
15836 <function name="unicode_funcs_set_decompose_compatibility_func"
15837 c:identifier="hb_unicode_funcs_set_decompose_compatibility_func"
15838 version="0.9.2"
15839 deprecated="1"
15840 deprecated-version="2.0.0">
15841 <source-position filename="../src/hb-deprecated.h" line="158"/>
15842 <return-value transfer-ownership="none">
15843 <type name="none" c:type="void"/>
15844 </return-value>
15845 <parameters>
15846 <parameter name="ufuncs" transfer-ownership="none">
15847 <doc xml:space="preserve"
15848 filename="../src/hb-deprecated.h"
15849 line="147">a Unicode function structure</doc>
15850 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
15851 </parameter>
15852 <parameter name="func"
15853 transfer-ownership="none"
15854 scope="notified"
15855 closure="2"
15856 destroy="3">
15857 <type name="unicode_decompose_compatibility_func_t"
15858 c:type="hb_unicode_decompose_compatibility_func_t"/>
15859 </parameter>
15860 <parameter name="user_data"
15861 transfer-ownership="none"
15862 nullable="1"
15863 allow-none="1">
15864 <type name="gpointer" c:type="void*"/>
15865 </parameter>
15866 <parameter name="destroy" transfer-ownership="none" scope="notified">
15867 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
15868 </parameter>
15869 </parameters>
15870 </function>
15871 <function name="unicode_funcs_set_decompose_func"
15872 c:identifier="hb_unicode_funcs_set_decompose_func"
15873 version="0.9.2">
15874 <source-position filename="../src/hb-unicode.h" line="348"/>
15875 <return-value transfer-ownership="none">
15876 <type name="none" c:type="void"/>
15877 </return-value>
15878 <parameters>
15879 <parameter name="ufuncs" transfer-ownership="none">
15880 <doc xml:space="preserve"
15881 filename="../src/hb-unicode.h"
15882 line="338">a Unicode function structure</doc>
15883 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
15884 </parameter>
15885 <parameter name="func"
15886 transfer-ownership="none"
15887 scope="notified"
15888 closure="2"
15889 destroy="3">
15890 <type name="unicode_decompose_func_t"
15891 c:type="hb_unicode_decompose_func_t"/>
15892 </parameter>
15893 <parameter name="user_data"
15894 transfer-ownership="none"
15895 nullable="1"
15896 allow-none="1">
15897 <type name="gpointer" c:type="void*"/>
15898 </parameter>
15899 <parameter name="destroy" transfer-ownership="none" scope="notified">
15900 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
15901 </parameter>
15902 </parameters>
15903 </function>
15904 <function name="unicode_funcs_set_eastasian_width_func"
15905 c:identifier="hb_unicode_funcs_set_eastasian_width_func"
15906 version="0.9.2"
15907 deprecated="1"
15908 deprecated-version="2.0.0">
15909 <source-position filename="../src/hb-deprecated.h" line="96"/>
15910 <return-value transfer-ownership="none">
15911 <type name="none" c:type="void"/>
15912 </return-value>
15913 <parameters>
15914 <parameter name="ufuncs" transfer-ownership="none">
15915 <doc xml:space="preserve"
15916 filename="../src/hb-deprecated.h"
15917 line="85">a Unicode function structure</doc>
15918 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
15919 </parameter>
15920 <parameter name="func"
15921 transfer-ownership="none"
15922 scope="notified"
15923 closure="2"
15924 destroy="3">
15925 <type name="unicode_eastasian_width_func_t"
15926 c:type="hb_unicode_eastasian_width_func_t"/>
15927 </parameter>
15928 <parameter name="user_data"
15929 transfer-ownership="none"
15930 nullable="1"
15931 allow-none="1">
15932 <type name="gpointer" c:type="void*"/>
15933 </parameter>
15934 <parameter name="destroy" transfer-ownership="none" scope="notified">
15935 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
15936 </parameter>
15937 </parameters>
15938 </function>
15939 <function name="unicode_funcs_set_general_category_func"
15940 c:identifier="hb_unicode_funcs_set_general_category_func"
15941 version="0.9.2">
15942 <source-position filename="../src/hb-unicode.h" line="284"/>
15943 <return-value transfer-ownership="none">
15944 <type name="none" c:type="void"/>
15945 </return-value>
15946 <parameters>
15947 <parameter name="ufuncs" transfer-ownership="none">
15948 <doc xml:space="preserve"
15949 filename="../src/hb-unicode.h"
15950 line="274">a Unicode function structure</doc>
15951 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
15952 </parameter>
15953 <parameter name="func"
15954 transfer-ownership="none"
15955 scope="notified"
15956 closure="2"
15957 destroy="3">
15958 <type name="unicode_general_category_func_t"
15959 c:type="hb_unicode_general_category_func_t"/>
15960 </parameter>
15961 <parameter name="user_data"
15962 transfer-ownership="none"
15963 nullable="1"
15964 allow-none="1">
15965 <type name="gpointer" c:type="void*"/>
15966 </parameter>
15967 <parameter name="destroy" transfer-ownership="none" scope="notified">
15968 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
15969 </parameter>
15970 </parameters>
15971 </function>
15972 <function name="unicode_funcs_set_mirroring_func"
15973 c:identifier="hb_unicode_funcs_set_mirroring_func"
15974 version="0.9.2">
15975 <source-position filename="../src/hb-unicode.h" line="300"/>
15976 <return-value transfer-ownership="none">
15977 <type name="none" c:type="void"/>
15978 </return-value>
15979 <parameters>
15980 <parameter name="ufuncs" transfer-ownership="none">
15981 <doc xml:space="preserve"
15982 filename="../src/hb-unicode.h"
15983 line="290">a Unicode function structure</doc>
15984 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
15985 </parameter>
15986 <parameter name="func"
15987 transfer-ownership="none"
15988 scope="notified"
15989 closure="2"
15990 destroy="3">
15991 <type name="unicode_mirroring_func_t"
15992 c:type="hb_unicode_mirroring_func_t"/>
15993 </parameter>
15994 <parameter name="user_data"
15995 transfer-ownership="none"
15996 nullable="1"
15997 allow-none="1">
15998 <type name="gpointer" c:type="void*"/>
15999 </parameter>
16000 <parameter name="destroy" transfer-ownership="none" scope="notified">
16001 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
16002 </parameter>
16003 </parameters>
16004 </function>
16005 <function name="unicode_funcs_set_script_func"
16006 c:identifier="hb_unicode_funcs_set_script_func"
16007 version="0.9.2">
16008 <source-position filename="../src/hb-unicode.h" line="316"/>
16009 <return-value transfer-ownership="none">
16010 <type name="none" c:type="void"/>
16011 </return-value>
16012 <parameters>
16013 <parameter name="ufuncs" transfer-ownership="none">
16014 <doc xml:space="preserve"
16015 filename="../src/hb-unicode.h"
16016 line="306">a Unicode function structure</doc>
16017 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
16018 </parameter>
16019 <parameter name="func"
16020 transfer-ownership="none"
16021 scope="notified"
16022 closure="2"
16023 destroy="3">
16024 <type name="unicode_script_func_t"
16025 c:type="hb_unicode_script_func_t"/>
16026 </parameter>
16027 <parameter name="user_data"
16028 transfer-ownership="none"
16029 nullable="1"
16030 allow-none="1">
16031 <type name="gpointer" c:type="void*"/>
16032 </parameter>
16033 <parameter name="destroy" transfer-ownership="none" scope="notified">
16034 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
16035 </parameter>
16036 </parameters>
16037 </function>
16038 <function name="unicode_funcs_set_user_data"
16039 c:identifier="hb_unicode_funcs_set_user_data"
16040 version="0.9.2"
16041 introspectable="0">
16042 <source-position filename="../src/hb-unicode.h" line="202"/>
16043 <return-value transfer-ownership="none">
16044 <type name="bool_t" c:type="hb_bool_t"/>
16045 </return-value>
16046 <parameters>
16047 <parameter name="ufuncs" transfer-ownership="none">
16048 <doc xml:space="preserve"
16049 filename="../src/hb-unicode.cc"
16050 line="259">Unicode functions.</doc>
16051 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
16052 </parameter>
16053 <parameter name="key" transfer-ownership="none">
16054 <type name="user_data_key_t" c:type="hb_user_data_key_t*"/>
16055 </parameter>
16056 <parameter name="data"
16057 transfer-ownership="none"
16058 nullable="1"
16059 allow-none="1">
16060 <type name="gpointer" c:type="void*"/>
16061 </parameter>
16062 <parameter name="destroy" transfer-ownership="none">
16063 <type name="destroy_func_t" c:type="hb_destroy_func_t"/>
16064 </parameter>
16065 <parameter name="replace" transfer-ownership="none">
16066 <type name="bool_t" c:type="hb_bool_t"/>
16067 </parameter>
16068 </parameters>
16069 </function>
16070 <record name="unicode_funcs_t"
16071 c:type="hb_unicode_funcs_t"
16072 glib:type-name="hb_unicode_funcs_t"
16073 glib:get-type="hb_gobject_unicode_funcs_get_type"
16074 c:symbol-prefix="gobject_unicode_funcs">
16075 <source-position filename="../src/hb-unicode.h" line="179"/>
16076 </record>
16077 <function name="unicode_general_category"
16078 c:identifier="hb_unicode_general_category"
16079 version="0.9.2">
16080 <source-position filename="../src/hb-unicode.h" line="369"/>
16081 <return-value transfer-ownership="none">
16082 <type name="unicode_general_category_t"
16083 c:type="hb_unicode_general_category_t"/>
16084 </return-value>
16085 <parameters>
16086 <parameter name="ufuncs" transfer-ownership="none">
16087 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
16088 </parameter>
16089 <parameter name="unicode" transfer-ownership="none">
16090 <type name="codepoint_t" c:type="hb_codepoint_t"/>
16091 </parameter>
16092 </parameters>
16093 </function>
16094 <callback name="unicode_general_category_func_t"
16095 c:type="hb_unicode_general_category_func_t">
16096 <source-position filename="../src/hb-unicode.h" line="233"/>
16097 <return-value transfer-ownership="none">
16098 <type name="unicode_general_category_t"
16099 c:type="hb_unicode_general_category_t"/>
16100 </return-value>
16101 <parameters>
16102 <parameter name="ufuncs" transfer-ownership="none">
16103 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
16104 </parameter>
16105 <parameter name="unicode" transfer-ownership="none">
16106 <type name="codepoint_t" c:type="hb_codepoint_t"/>
16107 </parameter>
16108 <parameter name="user_data"
16109 transfer-ownership="none"
16110 nullable="1"
16111 allow-none="1"
16112 closure="2">
16113 <type name="gpointer" c:type="void*"/>
16114 </parameter>
16115 </parameters>
16116 </callback>
16117 <enumeration name="unicode_general_category_t"
16118 glib:type-name="hb_unicode_general_category_t"
16119 glib:get-type="hb_gobject_unicode_general_category_get_type"
16120 c:type="hb_unicode_general_category_t">
16121 <member name="control"
16122 value="0"
16123 c:identifier="HB_UNICODE_GENERAL_CATEGORY_CONTROL"
16124 glib:nick="control">
16125 </member>
16126 <member name="format"
16127 value="1"
16128 c:identifier="HB_UNICODE_GENERAL_CATEGORY_FORMAT"
16129 glib:nick="format">
16130 </member>
16131 <member name="unassigned"
16132 value="2"
16133 c:identifier="HB_UNICODE_GENERAL_CATEGORY_UNASSIGNED"
16134 glib:nick="unassigned">
16135 </member>
16136 <member name="private_use"
16137 value="3"
16138 c:identifier="HB_UNICODE_GENERAL_CATEGORY_PRIVATE_USE"
16139 glib:nick="private-use">
16140 </member>
16141 <member name="surrogate"
16142 value="4"
16143 c:identifier="HB_UNICODE_GENERAL_CATEGORY_SURROGATE"
16144 glib:nick="surrogate">
16145 </member>
16146 <member name="lowercase_letter"
16147 value="5"
16148 c:identifier="HB_UNICODE_GENERAL_CATEGORY_LOWERCASE_LETTER"
16149 glib:nick="lowercase-letter">
16150 </member>
16151 <member name="modifier_letter"
16152 value="6"
16153 c:identifier="HB_UNICODE_GENERAL_CATEGORY_MODIFIER_LETTER"
16154 glib:nick="modifier-letter">
16155 </member>
16156 <member name="other_letter"
16157 value="7"
16158 c:identifier="HB_UNICODE_GENERAL_CATEGORY_OTHER_LETTER"
16159 glib:nick="other-letter">
16160 </member>
16161 <member name="titlecase_letter"
16162 value="8"
16163 c:identifier="HB_UNICODE_GENERAL_CATEGORY_TITLECASE_LETTER"
16164 glib:nick="titlecase-letter">
16165 </member>
16166 <member name="uppercase_letter"
16167 value="9"
16168 c:identifier="HB_UNICODE_GENERAL_CATEGORY_UPPERCASE_LETTER"
16169 glib:nick="uppercase-letter">
16170 </member>
16171 <member name="spacing_mark"
16172 value="10"
16173 c:identifier="HB_UNICODE_GENERAL_CATEGORY_SPACING_MARK"
16174 glib:nick="spacing-mark">
16175 </member>
16176 <member name="enclosing_mark"
16177 value="11"
16178 c:identifier="HB_UNICODE_GENERAL_CATEGORY_ENCLOSING_MARK"
16179 glib:nick="enclosing-mark">
16180 </member>
16181 <member name="non_spacing_mark"
16182 value="12"
16183 c:identifier="HB_UNICODE_GENERAL_CATEGORY_NON_SPACING_MARK"
16184 glib:nick="non-spacing-mark">
16185 </member>
16186 <member name="decimal_number"
16187 value="13"
16188 c:identifier="HB_UNICODE_GENERAL_CATEGORY_DECIMAL_NUMBER"
16189 glib:nick="decimal-number">
16190 </member>
16191 <member name="letter_number"
16192 value="14"
16193 c:identifier="HB_UNICODE_GENERAL_CATEGORY_LETTER_NUMBER"
16194 glib:nick="letter-number">
16195 </member>
16196 <member name="other_number"
16197 value="15"
16198 c:identifier="HB_UNICODE_GENERAL_CATEGORY_OTHER_NUMBER"
16199 glib:nick="other-number">
16200 </member>
16201 <member name="connect_punctuation"
16202 value="16"
16203 c:identifier="HB_UNICODE_GENERAL_CATEGORY_CONNECT_PUNCTUATION"
16204 glib:nick="connect-punctuation">
16205 </member>
16206 <member name="dash_punctuation"
16207 value="17"
16208 c:identifier="HB_UNICODE_GENERAL_CATEGORY_DASH_PUNCTUATION"
16209 glib:nick="dash-punctuation">
16210 </member>
16211 <member name="close_punctuation"
16212 value="18"
16213 c:identifier="HB_UNICODE_GENERAL_CATEGORY_CLOSE_PUNCTUATION"
16214 glib:nick="close-punctuation">
16215 </member>
16216 <member name="final_punctuation"
16217 value="19"
16218 c:identifier="HB_UNICODE_GENERAL_CATEGORY_FINAL_PUNCTUATION"
16219 glib:nick="final-punctuation">
16220 </member>
16221 <member name="initial_punctuation"
16222 value="20"
16223 c:identifier="HB_UNICODE_GENERAL_CATEGORY_INITIAL_PUNCTUATION"
16224 glib:nick="initial-punctuation">
16225 </member>
16226 <member name="other_punctuation"
16227 value="21"
16228 c:identifier="HB_UNICODE_GENERAL_CATEGORY_OTHER_PUNCTUATION"
16229 glib:nick="other-punctuation">
16230 </member>
16231 <member name="open_punctuation"
16232 value="22"
16233 c:identifier="HB_UNICODE_GENERAL_CATEGORY_OPEN_PUNCTUATION"
16234 glib:nick="open-punctuation">
16235 </member>
16236 <member name="currency_symbol"
16237 value="23"
16238 c:identifier="HB_UNICODE_GENERAL_CATEGORY_CURRENCY_SYMBOL"
16239 glib:nick="currency-symbol">
16240 </member>
16241 <member name="modifier_symbol"
16242 value="24"
16243 c:identifier="HB_UNICODE_GENERAL_CATEGORY_MODIFIER_SYMBOL"
16244 glib:nick="modifier-symbol">
16245 </member>
16246 <member name="math_symbol"
16247 value="25"
16248 c:identifier="HB_UNICODE_GENERAL_CATEGORY_MATH_SYMBOL"
16249 glib:nick="math-symbol">
16250 </member>
16251 <member name="other_symbol"
16252 value="26"
16253 c:identifier="HB_UNICODE_GENERAL_CATEGORY_OTHER_SYMBOL"
16254 glib:nick="other-symbol">
16255 </member>
16256 <member name="line_separator"
16257 value="27"
16258 c:identifier="HB_UNICODE_GENERAL_CATEGORY_LINE_SEPARATOR"
16259 glib:nick="line-separator">
16260 </member>
16261 <member name="paragraph_separator"
16262 value="28"
16263 c:identifier="HB_UNICODE_GENERAL_CATEGORY_PARAGRAPH_SEPARATOR"
16264 glib:nick="paragraph-separator">
16265 </member>
16266 <member name="space_separator"
16267 value="29"
16268 c:identifier="HB_UNICODE_GENERAL_CATEGORY_SPACE_SEPARATOR"
16269 glib:nick="space-separator">
16270 </member>
16271 </enumeration>
16272 <function name="unicode_mirroring"
16273 c:identifier="hb_unicode_mirroring"
16274 version="0.9.2">
16275 <source-position filename="../src/hb-unicode.h" line="378"/>
16276 <return-value transfer-ownership="none">
16277 <type name="codepoint_t" c:type="hb_codepoint_t"/>
16278 </return-value>
16279 <parameters>
16280 <parameter name="ufuncs" transfer-ownership="none">
16281 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
16282 </parameter>
16283 <parameter name="unicode" transfer-ownership="none">
16284 <type name="codepoint_t" c:type="hb_codepoint_t"/>
16285 </parameter>
16286 </parameters>
16287 </function>
16288 <callback name="unicode_mirroring_func_t"
16289 c:type="hb_unicode_mirroring_func_t">
16290 <source-position filename="../src/hb-unicode.h" line="236"/>
16291 <return-value transfer-ownership="none">
16292 <type name="codepoint_t" c:type="hb_codepoint_t"/>
16293 </return-value>
16294 <parameters>
16295 <parameter name="ufuncs" transfer-ownership="none">
16296 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
16297 </parameter>
16298 <parameter name="unicode" transfer-ownership="none">
16299 <type name="codepoint_t" c:type="hb_codepoint_t"/>
16300 </parameter>
16301 <parameter name="user_data"
16302 transfer-ownership="none"
16303 nullable="1"
16304 allow-none="1"
16305 closure="2">
16306 <type name="gpointer" c:type="void*"/>
16307 </parameter>
16308 </parameters>
16309 </callback>
16310 <function name="unicode_script"
16311 c:identifier="hb_unicode_script"
16312 version="0.9.2">
16313 <source-position filename="../src/hb-unicode.h" line="387"/>
16314 <return-value transfer-ownership="none">
16315 <type name="script_t" c:type="hb_script_t"/>
16316 </return-value>
16317 <parameters>
16318 <parameter name="ufuncs" transfer-ownership="none">
16319 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
16320 </parameter>
16321 <parameter name="unicode" transfer-ownership="none">
16322 <type name="codepoint_t" c:type="hb_codepoint_t"/>
16323 </parameter>
16324 </parameters>
16325 </function>
16326 <callback name="unicode_script_func_t" c:type="hb_unicode_script_func_t">
16327 <source-position filename="../src/hb-unicode.h" line="239"/>
16328 <return-value transfer-ownership="none">
16329 <type name="script_t" c:type="hb_script_t"/>
16330 </return-value>
16331 <parameters>
16332 <parameter name="ufuncs" transfer-ownership="none">
16333 <type name="unicode_funcs_t" c:type="hb_unicode_funcs_t*"/>
16334 </parameter>
16335 <parameter name="unicode" transfer-ownership="none">
16336 <type name="codepoint_t" c:type="hb_codepoint_t"/>
16337 </parameter>
16338 <parameter name="user_data"
16339 transfer-ownership="none"
16340 nullable="1"
16341 allow-none="1"
16342 closure="2">
16343 <type name="gpointer" c:type="void*"/>
16344 </parameter>
16345 </parameters>
16346 </callback>
16347 <record name="user_data_key_t"
16348 c:type="hb_user_data_key_t"
16349 glib:type-name="hb_user_data_key_t"
16350 glib:get-type="hb_gobject_user_data_key_get_type"
16351 c:symbol-prefix="gobject_user_data_key">
16352 <source-position filename="../src/hb-common.h" line="416"/>
16353 <field name="unused" readable="0" private="1">
16354 <type name="gchar" c:type="char"/>
16355 </field>
16356 </record>
16357 <union name="var_int_t" c:type="hb_var_int_t">
16358 <source-position filename="../src/hb-common.h" line="105"/>
16359 <field name="u32" writable="1">
16360 <type name="guint32" c:type="uint32_t"/>
16361 </field>
16362 <field name="i32" writable="1">
16363 <type name="gint32" c:type="int32_t"/>
16364 </field>
16365 <field name="u16" writable="1">
16366 <array zero-terminated="0" fixed-size="2">
16367 <type name="guint16" c:type="uint16_t"/>
16368 </array>
16369 </field>
16370 <field name="i16" writable="1">
16371 <array zero-terminated="0" fixed-size="2">
16372 <type name="gint16" c:type="int16_t"/>
16373 </array>
16374 </field>
16375 <field name="u8" writable="1">
16376 <array zero-terminated="0" fixed-size="4">
16377 <type name="guint8" c:type="uint8_t"/>
16378 </array>
16379 </field>
16380 <field name="i8" writable="1">
16381 <array zero-terminated="0" fixed-size="4">
16382 <type name="gint8" c:type="int8_t"/>
16383 </array>
16384 </field>
16385 </union>
16386 <function name="variation_from_string"
16387 c:identifier="hb_variation_from_string"
16388 version="1.4.2">
16389 <source-position filename="../src/hb-common.h" line="477"/>
16390 <return-value transfer-ownership="none">
16391 <type name="bool_t" c:type="hb_bool_t"/>
16392 </return-value>
16393 <parameters>
16394 <parameter name="str" transfer-ownership="none">
16395 <type name="utf8" c:type="const char*"/>
16396 </parameter>
16397 <parameter name="len" transfer-ownership="none">
16398 <type name="gint" c:type="int"/>
16399 </parameter>
16400 <parameter name="variation" transfer-ownership="none">
16401 <type name="variation_t" c:type="hb_variation_t*"/>
16402 </parameter>
16403 </parameters>
16404 </function>
16405 <record name="variation_t" c:type="hb_variation_t" version="1.4.2">
16406 <source-position filename="../src/hb-common.h" line="474"/>
16407 <field name="tag" writable="1">
16408 <type name="tag_t" c:type="hb_tag_t"/>
16409 </field>
16410 <field name="value" writable="1">
16411 <type name="gfloat" c:type="float"/>
16412 </field>
16413 <method name="_string"
16414 c:identifier="hb_variation_to_string"
16415 moved-to="variation_to_string"
16416 version="1.4.2">
16417 <source-position filename="../src/hb-common.h" line="481"/>
16418 <return-value transfer-ownership="none">
16419 <type name="none" c:type="void"/>
16420 </return-value>
16421 <parameters>
16422 <instance-parameter name="variation" transfer-ownership="none">
16423 <type name="variation_t" c:type="hb_variation_t*"/>
16424 </instance-parameter>
16425 <parameter name="buf" transfer-ownership="none">
16426 <type name="utf8" c:type="char*"/>
16427 </parameter>
16428 <parameter name="size" transfer-ownership="none">
16429 <type name="guint" c:type="unsigned int"/>
16430 </parameter>
16431 </parameters>
16432 </method>
16433 </record>
16434 <function name="variation_to_string"
16435 c:identifier="hb_variation_to_string"
16436 version="1.4.2">
16437 <source-position filename="../src/hb-common.h" line="481"/>
16438 <return-value transfer-ownership="none">
16439 <type name="none" c:type="void"/>
16440 </return-value>
16441 <parameters>
16442 <parameter name="variation" transfer-ownership="none">
16443 <type name="variation_t" c:type="hb_variation_t*"/>
16444 </parameter>
16445 <parameter name="buf" transfer-ownership="none">
16446 <type name="utf8" c:type="char*"/>
16447 </parameter>
16448 <parameter name="size" transfer-ownership="none">
16449 <type name="guint" c:type="unsigned int"/>
16450 </parameter>
16451 </parameters>
16452 </function>
16453 <function name="version" c:identifier="hb_version" version="0.9.2">
16454 <doc xml:space="preserve"
16455 filename="../src/hb-common.cc"
16456 line="614">Returns library version as three integer components.</doc>
16457 <source-position filename="../src/hb-version.h" line="51"/>
16458 <return-value transfer-ownership="none">
16459 <type name="none" c:type="void"/>
16460 </return-value>
16461 <parameters>
16462 <parameter name="major"
16463 direction="out"
16464 caller-allocates="0"
16465 transfer-ownership="full">
16466 <doc xml:space="preserve"
16467 filename="../src/hb-common.cc"
16468 line="616">Library major version component.</doc>
16469 <type name="guint" c:type="unsigned int*"/>
16470 </parameter>
16471 <parameter name="minor"
16472 direction="out"
16473 caller-allocates="0"
16474 transfer-ownership="full">
16475 <doc xml:space="preserve"
16476 filename="../src/hb-common.cc"
16477 line="617">Library minor version component.</doc>
16478 <type name="guint" c:type="unsigned int*"/>
16479 </parameter>
16480 <parameter name="micro"
16481 direction="out"
16482 caller-allocates="0"
16483 transfer-ownership="full">
16484 <doc xml:space="preserve"
16485 filename="../src/hb-common.cc"
16486 line="618">Library micro version component.</doc>
16487 <type name="guint" c:type="unsigned int*"/>
16488 </parameter>
16489 </parameters>
16490 </function>
16491 <function name="version_atleast"
16492 c:identifier="hb_version_atleast"
16493 version="0.9.30">
16494 <source-position filename="../src/hb-version.h" line="59"/>
16495 <return-value transfer-ownership="none">
16496 <type name="bool_t" c:type="hb_bool_t"/>
16497 </return-value>
16498 <parameters>
16499 <parameter name="major" transfer-ownership="none">
16500 <type name="guint" c:type="unsigned int"/>
16501 </parameter>
16502 <parameter name="minor" transfer-ownership="none">
16503 <type name="guint" c:type="unsigned int"/>
16504 </parameter>
16505 <parameter name="micro" transfer-ownership="none">
16506 <type name="guint" c:type="unsigned int"/>
16507 </parameter>
16508 </parameters>
16509 </function>
16510 <function name="version_string"
16511 c:identifier="hb_version_string"
16512 version="0.9.2">
16513 <doc xml:space="preserve"
16514 filename="../src/hb-common.cc"
16515 line="634">Returns library version as a string with three components.</doc>
16516 <source-position filename="../src/hb-version.h" line="56"/>
16517 <return-value transfer-ownership="none">
16518 <doc xml:space="preserve"
16519 filename="../src/hb-common.cc"
16520 line="639">library version string.</doc>
16521 <type name="utf8" c:type="const char*"/>
16522 </return-value>
16523 </function>
16524 </namespace>
16525 </repository>