<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>hb-deprecated: HarfBuzz Manual</title>
<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot">
<link rel="home" href="index.html" title="HarfBuzz Manual">
<link rel="up" href="core-api.html" title="Core API">
<link rel="prev" href="harfbuzz-hb-paint.html" title="hb-paint">
<link rel="next" href="harfbuzz-hb-face.html" title="hb-face">
<meta name="generator" content="GTK-Doc V1.33.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
<td width="100%" align="left" class="shortcuts">
<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span>
<a href="#harfbuzz-hb-deprecated.description" class="shortcut">Description</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
<td><a accesskey="u" href="core-api.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="harfbuzz-hb-paint.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="harfbuzz-hb-face.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="refentry">
<a name="harfbuzz-hb-deprecated"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="harfbuzz-hb-deprecated.top_of_page"></a>hb-deprecated</span></h2>
<p>hb-deprecated — Deprecated API</p>
</td>
<td class="gallery_image" valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
<a name="harfbuzz-hb-deprecated.functions"></a><h2>Functions</h2>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="functions_proto_type">
<col class="functions_proto_name">
</colgroup>
<tbody>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="harfbuzz-hb-deprecated.html#hb-font-funcs-set-glyph-func" title="hb_font_funcs_set_glyph_func ()">hb_font_funcs_set_glyph_func</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
</td>
<td class="function_name">
<span class="c_punctuation">(</span><a class="link" href="harfbuzz-hb-deprecated.html#hb-font-get-glyph-func-t" title="hb_font_get_glyph_func_t ()">*hb_font_get_glyph_func_t</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
</td>
<td class="function_name">
<a class="link" href="harfbuzz-hb-deprecated.html#hb-ot-layout-table-choose-script" title="hb_ot_layout_table_choose_script ()">hb_ot_layout_table_choose_script</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
</td>
<td class="function_name">
<a class="link" href="harfbuzz-hb-deprecated.html#hb-ot-layout-table-find-script" title="hb_ot_layout_table_find_script ()">hb_ot_layout_table_find_script</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="returnvalue">hb_tag_t</span></a>
</td>
<td class="function_name">
<a class="link" href="harfbuzz-hb-deprecated.html#hb-ot-tag-from-language" title="hb_ot_tag_from_language ()">hb_ot_tag_from_language</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="harfbuzz-hb-deprecated.html#hb-ot-tags-from-script" title="hb_ot_tags_from_script ()">hb_ot_tags_from_script</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
</td>
<td class="function_name">
<a class="link" href="harfbuzz-hb-deprecated.html#hb-ot-var-find-axis" title="hb_ot_var_find_axis ()">hb_ot_var_find_axis</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">unsigned <span class="returnvalue">int</span>
</td>
<td class="function_name">
<a class="link" href="harfbuzz-hb-deprecated.html#hb-ot-var-get-axes" title="hb_ot_var_get_axes ()">hb_ot_var_get_axes</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">unsigned <span class="returnvalue">int</span>
</td>
<td class="function_name">
<span class="c_punctuation">(</span><a class="link" href="harfbuzz-hb-deprecated.html#hb-unicode-eastasian-width-func-t" title="hb_unicode_eastasian_width_func_t ()">*hb_unicode_eastasian_width_func_t</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">unsigned <span class="returnvalue">int</span>
</td>
<td class="function_name">
<a class="link" href="harfbuzz-hb-deprecated.html#hb-unicode-eastasian-width" title="hb_unicode_eastasian_width ()">hb_unicode_eastasian_width</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="harfbuzz-hb-deprecated.html#hb-unicode-funcs-set-eastasian-width-func" title="hb_unicode_funcs_set_eastasian_width_func ()">hb_unicode_funcs_set_eastasian_width_func</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">unsigned <span class="returnvalue">int</span>
</td>
<td class="function_name">
<span class="c_punctuation">(</span><a class="link" href="harfbuzz-hb-deprecated.html#hb-unicode-decompose-compatibility-func-t" title="hb_unicode_decompose_compatibility_func_t ()">*hb_unicode_decompose_compatibility_func_t</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">unsigned <span class="returnvalue">int</span>
</td>
<td class="function_name">
<a class="link" href="harfbuzz-hb-deprecated.html#hb-unicode-decompose-compatibility" title="hb_unicode_decompose_compatibility ()">hb_unicode_decompose_compatibility</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="harfbuzz-hb-deprecated.html#hb-unicode-funcs-set-decompose-compatibility-func" title="hb_unicode_funcs_set_decompose_compatibility_func ()">hb_unicode_funcs_set_decompose_compatibility_func</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="harfbuzz-hb-deprecated.html#hb-font-funcs-set-glyph-v-kerning-func" title="hb_font_funcs_set_glyph_v_kerning_func ()">hb_font_funcs_set_glyph_v_kerning_func</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="harfbuzz-hb-deprecated.html#hb-font-get-glyph-shape" title="hb_font_get_glyph_shape ()">hb_font_get_glyph_shape</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<span class="c_punctuation">(</span><a class="link" href="harfbuzz-hb-deprecated.html#hb-font-get-glyph-shape-func-t" title="hb_font_get_glyph_shape_func_t ()">*hb_font_get_glyph_shape_func_t</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="harfbuzz-hb-deprecated.html#hb-font-funcs-set-glyph-shape-func" title="hb_font_funcs_set_glyph_shape_func ()">hb_font_funcs_set_glyph_shape_func</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="harfbuzz-hb-common.html#hb-position-t" title="hb_position_t"><span class="returnvalue">hb_position_t</span></a>
</td>
<td class="function_name">
<a class="link" href="harfbuzz-hb-deprecated.html#hb-font-get-glyph-v-kerning" title="hb_font_get_glyph_v_kerning ()">hb_font_get_glyph_v_kerning</a> <span class="c_punctuation">()</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-deprecated.other"></a><h2>Types and Values</h2>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="other_proto_type">
<col class="other_proto_name">
</colgroup>
<tbody>
<tr>
<td class="define_keyword">#define</td>
<td class="function_name"><a class="link" href="harfbuzz-hb-deprecated.html#HB-BUFFER-FLAGS-DEFAULT:CAPS" title="HB_BUFFER_FLAGS_DEFAULT">HB_BUFFER_FLAGS_DEFAULT</a></td>
</tr>
<tr>
<td class="define_keyword">#define</td>
<td class="function_name"><a class="link" href="harfbuzz-hb-deprecated.html#HB-BUFFER-SERIALIZE-FLAGS-DEFAULT:CAPS" title="HB_BUFFER_SERIALIZE_FLAGS_DEFAULT">HB_BUFFER_SERIALIZE_FLAGS_DEFAULT</a></td>
</tr>
<tr>
<td class="define_keyword">#define</td>
<td class="function_name"><a class="link" href="harfbuzz-hb-deprecated.html#HB-SCRIPT-CANADIAN-ABORIGINAL:CAPS" title="HB_SCRIPT_CANADIAN_ABORIGINAL">HB_SCRIPT_CANADIAN_ABORIGINAL</a></td>
</tr>
<tr>
<td class="define_keyword">#define</td>
<td class="function_name"><a class="link" href="harfbuzz-hb-deprecated.html#HB-MATH-GLYPH-PART-FLAG-EXTENDER:CAPS" title="HB_MATH_GLYPH_PART_FLAG_EXTENDER">HB_MATH_GLYPH_PART_FLAG_EXTENDER</a></td>
</tr>
<tr>
<td class="define_keyword">#define</td>
<td class="function_name"><a class="link" href="harfbuzz-hb-deprecated.html#HB-OT-MATH-SCRIPT:CAPS" title="HB_OT_MATH_SCRIPT">HB_OT_MATH_SCRIPT</a></td>
</tr>
<tr>
<td class="define_keyword">#define</td>
<td class="function_name"><a class="link" href="harfbuzz-hb-deprecated.html#HB-OT-VAR-NO-AXIS-INDEX:CAPS" title="HB_OT_VAR_NO_AXIS_INDEX">HB_OT_VAR_NO_AXIS_INDEX</a></td>
</tr>
<tr>
<td class="datatype_keyword"> </td>
<td class="function_name"><a class="link" href="harfbuzz-hb-deprecated.html#hb-ot-var-axis-t" title="hb_ot_var_axis_t">hb_ot_var_axis_t</a></td>
</tr>
<tr>
<td class="define_keyword">#define</td>
<td class="function_name"><a class="link" href="harfbuzz-hb-deprecated.html#HB-UNICODE-MAX-DECOMPOSITION-LEN:CAPS" title="HB_UNICODE_MAX_DECOMPOSITION_LEN">HB_UNICODE_MAX_DECOMPOSITION_LEN</a></td>
</tr>
<tr>
<td class="define_keyword">#define</td>
<td class="function_name"><a class="link" href="harfbuzz-hb-deprecated.html#HB-UNICODE-COMBINING-CLASS-CCC133:CAPS" title="HB_UNICODE_COMBINING_CLASS_CCC133">HB_UNICODE_COMBINING_CLASS_CCC133</a></td>
</tr>
<tr>
<td class="typedef_keyword">typedef</td>
<td class="function_name"><a class="link" href="harfbuzz-hb-deprecated.html#hb-font-get-glyph-v-kerning-func-t" title="hb_font_get_glyph_v_kerning_func_t">hb_font_get_glyph_v_kerning_func_t</a></td>
</tr>
<tr>
<td class="define_keyword">#define</td>
<td class="function_name"><a class="link" href="harfbuzz-hb-deprecated.html#HB-AAT-LAYOUT-FEATURE-TYPE-CURISVE-CONNECTION:CAPS" title="HB_AAT_LAYOUT_FEATURE_TYPE_CURISVE_CONNECTION">HB_AAT_LAYOUT_FEATURE_TYPE_CURISVE_CONNECTION</a></td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-deprecated.includes"></a><h2>Includes</h2>
<pre class="synopsis">#include <hb.h>
</pre>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-deprecated.description"></a><h2>Description</h2>
<p>These API have been deprecated in favor of newer API, or because they
were deemed unnecessary.</p>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-deprecated.functions_details"></a><h2>Functions</h2>
<div class="refsect2">
<a name="hb-font-funcs-set-glyph-func"></a><h3>hb_font_funcs_set_glyph_func ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
hb_font_funcs_set_glyph_func (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-t" title="hb_font_funcs_t"><span class="type">hb_font_funcs_t</span></a> *ffuncs</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-deprecated.html#hb-font-get-glyph-func-t" title="hb_font_get_glyph_func_t ()"><span class="type">hb_font_get_glyph_func_t</span></a> func</code></em>,
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>);</pre>
<div class="warning"><p><code class="literal">hb_font_funcs_set_glyph_func</code> has been deprecated since version 1.2.3 and should not be used in newly-written code.</p></div>
<p>Deprecated. Use <a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-set-nominal-glyph-func" title="hb_font_funcs_set_nominal_glyph_func ()"><code class="function">hb_font_funcs_set_nominal_glyph_func()</code></a> and
<a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-set-variation-glyph-func" title="hb_font_funcs_set_variation_glyph_func ()"><code class="function">hb_font_funcs_set_variation_glyph_func()</code></a> instead.</p>
<div class="refsect3">
<a name="hb-font-funcs-set-glyph-func.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>ffuncs</p></td>
<td class="parameter_description"><p>The font-functions structure</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>func</p></td>
<td class="parameter_description"><p>callback function. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym> user_data][<acronym title="This parameter is a 'destroy_data', for callbacks."><span class="acronym">destroy</span></acronym> destroy][<acronym title="The callback is valid until the GDestroyNotify argument is called."><span class="acronym">scope notified</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>data to pass to <em class="parameter"><code>func</code></em>
</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>destroy</p></td>
<td class="parameter_description"><p>function to call when <em class="parameter"><code>user_data</code></em>
is not needed anymore. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-font-get-glyph-func-t"></a><h3>hb_font_get_glyph_func_t ()</h3>
<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
<span class="c_punctuation">(</span>*hb_font_get_glyph_func_t<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t" title="hb_font_t"><span class="type">hb_font_t</span></a> *font</code></em>,
<em class="parameter"><code><span class="type">void</span> *font_data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> unicode</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> variation_selector</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> *glyph</code></em>,
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>);</pre>
<div class="warning"><p><code class="literal">hb_font_get_glyph_func_t</code> has been deprecated since version 1.2.3 and should not be used in newly-written code.</p></div>
<p>A virtual method for the <a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-t" title="hb_font_funcs_t"><span class="type">hb_font_funcs_t</span></a> of an <a class="link" href="harfbuzz-hb-font.html#hb-font-t" title="hb_font_t"><span class="type">hb_font_t</span></a> object.</p>
<p>This method should retrieve the glyph ID for a specified Unicode code point
font, with an optional variation selector.</p>
<div class="refsect3">
<a name="hb-font-get-glyph-func-t.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>font</p></td>
<td class="parameter_description"><p><a class="link" href="harfbuzz-hb-font.html#hb-font-t" title="hb_font_t"><span class="type">hb_font_t</span></a> to work upon</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>font_data</p></td>
<td class="parameter_description"><p><em class="parameter"><code>font</code></em>
user data pointer</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>unicode</p></td>
<td class="parameter_description"><p>The Unicode code point to query</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>variation_selector</p></td>
<td class="parameter_description"><p>The variation-selector code point to query</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>glyph</p></td>
<td class="parameter_description"><p>The glyph ID retrieved. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>User data pointer passed by the caller</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="hb-font-get-glyph-func-t.returns"></a><h4>Returns</h4>
<p> <code class="literal">true</code> if data found, <code class="literal">false</code> otherwise</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="hb-ot-layout-table-choose-script"></a><h3>hb_ot_layout_table_choose_script ()</h3>
<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
hb_ot_layout_table_choose_script (<em class="parameter"><code><a class="link" href="harfbuzz-hb-face.html#hb-face-t" title="hb_face_t"><span class="type">hb_face_t</span></a> *face</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> table_tag</code></em>,
<em class="parameter"><code>const <a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> *script_tags</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> *script_index</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> *chosen_script</code></em>);</pre>
<div class="warning"><p><code class="literal">hb_ot_layout_table_choose_script</code> is deprecated and should not be used in newly-written code.</p></div>
<p>Deprecated since 2.0.0</p>
<div class="refsect3">
<a name="hb-ot-layout-table-choose-script.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>face</p></td>
<td class="parameter_description"><p><a class="link" href="harfbuzz-hb-face.html#hb-face-t" title="hb_face_t"><span class="type">hb_face_t</span></a> to work upon</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>table_tag</p></td>
<td class="parameter_description"><p><a class="link" href="harfbuzz-hb-ot-layout.html#HB-OT-TAG-GSUB:CAPS" title="HB_OT_TAG_GSUB"><span class="type">HB_OT_TAG_GSUB</span></a> or <a class="link" href="harfbuzz-hb-ot-layout.html#HB-OT-TAG-GPOS:CAPS" title="HB_OT_TAG_GPOS"><span class="type">HB_OT_TAG_GPOS</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>script_tags</p></td>
<td class="parameter_description"><p>Array of <a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> script tags</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>script_index</p></td>
<td class="parameter_description"><p>The index of the chosen script. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>chosen_script</p></td>
<td class="parameter_description"><p><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> of the chosen script. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
</tr>
</tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="hb-ot-layout-table-find-script"></a><h3>hb_ot_layout_table_find_script ()</h3>
<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
hb_ot_layout_table_find_script (<em class="parameter"><code><a class="link" href="harfbuzz-hb-face.html#hb-face-t" title="hb_face_t"><span class="type">hb_face_t</span></a> *face</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> table_tag</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> script_tag</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> *script_index</code></em>);</pre>
<p>Fetches the index if a given script tag in the specified face's GSUB table
or GPOS table.</p>
<div class="refsect3">
<a name="hb-ot-layout-table-find-script.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>face</p></td>
<td class="parameter_description"><p><a class="link" href="harfbuzz-hb-face.html#hb-face-t" title="hb_face_t"><span class="type">hb_face_t</span></a> to work upon</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>table_tag</p></td>
<td class="parameter_description"><p><a class="link" href="harfbuzz-hb-ot-layout.html#HB-OT-TAG-GSUB:CAPS" title="HB_OT_TAG_GSUB"><span class="type">HB_OT_TAG_GSUB</span></a> or <a class="link" href="harfbuzz-hb-ot-layout.html#HB-OT-TAG-GPOS:CAPS" title="HB_OT_TAG_GPOS"><span class="type">HB_OT_TAG_GPOS</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>script_tag</p></td>
<td class="parameter_description"><p><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> of the script tag requested</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>script_index</p></td>
<td class="parameter_description"><p>The index of the requested script tag. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="hb-ot-layout-table-find-script.returns"></a><h4>Returns</h4>
<p> <code class="literal">true</code> if the script is found, <code class="literal">false</code> otherwise</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="hb-ot-tag-from-language"></a><h3>hb_ot_tag_from_language ()</h3>
<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="returnvalue">hb_tag_t</span></a>
hb_ot_tag_from_language (<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-language-t" title="hb_language_t"><span class="type">hb_language_t</span></a> language</code></em>);</pre>
<div class="warning">
<p><code class="literal">hb_ot_tag_from_language</code> has been deprecated since version 2.0.0 and should not be used in newly-written code.</p>
<p>use <a class="link" href="harfbuzz-hb-ot-layout.html#hb-ot-tags-from-script-and-language" title="hb_ot_tags_from_script_and_language ()"><code class="function">hb_ot_tags_from_script_and_language()</code></a> instead</p>
</div>
<p>Converts an <a class="link" href="harfbuzz-hb-common.html#hb-language-t" title="hb_language_t"><span class="type">hb_language_t</span></a> to an <a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a>.</p>
<div class="refsect3">
<a name="hb-ot-tag-from-language.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>language</p></td>
<td class="parameter_description"><p>an <a class="link" href="harfbuzz-hb-common.html#hb-language-t" title="hb_language_t"><span class="type">hb_language_t</span></a> to convert.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-0-6-0.html#api-index-0.6.0">0.6.0</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-ot-tags-from-script"></a><h3>hb_ot_tags_from_script ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
hb_ot_tags_from_script (<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="type">hb_script_t</span></a> script</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> *script_tag_1</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> *script_tag_2</code></em>);</pre>
<div class="warning">
<p><code class="literal">hb_ot_tags_from_script</code> has been deprecated since version 2.0.0 and should not be used in newly-written code.</p>
<p>use <a class="link" href="harfbuzz-hb-ot-layout.html#hb-ot-tags-from-script-and-language" title="hb_ot_tags_from_script_and_language ()"><code class="function">hb_ot_tags_from_script_and_language()</code></a> instead</p>
</div>
<p>Converts an <a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="type">hb_script_t</span></a> to script tags.</p>
<div class="refsect3">
<a name="hb-ot-tags-from-script.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>script</p></td>
<td class="parameter_description"><p>an <a class="link" href="harfbuzz-hb-common.html#hb-script-t" title="enum hb_script_t"><span class="type">hb_script_t</span></a> to convert.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>script_tag_1</p></td>
<td class="parameter_description"><p>output <a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>script_tag_2</p></td>
<td class="parameter_description"><p>output <a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-0-6-0.html#api-index-0.6.0">0.6.0</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-ot-var-find-axis"></a><h3>hb_ot_var_find_axis ()</h3>
<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
hb_ot_var_find_axis (<em class="parameter"><code><a class="link" href="harfbuzz-hb-face.html#hb-face-t" title="hb_face_t"><span class="type">hb_face_t</span></a> *face</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> axis_tag</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> *axis_index</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-deprecated.html#hb-ot-var-axis-t" title="hb_ot_var_axis_t"><span class="type">hb_ot_var_axis_t</span></a> *axis_info</code></em>);</pre>
<div class="warning">
<p><code class="literal">hb_ot_var_find_axis</code> has been deprecated since version 2.2.0 and should not be used in newly-written code.</p>
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>use <a class="link" href="harfbuzz-hb-ot-var.html#hb-ot-var-find-axis-info" title="hb_ot_var_find_axis_info ()"><code class="function">hb_ot_var_find_axis_info()</code></a> instead</p></li></ul></div>
</div>
<p>Fetches the variation-axis information corresponding to the specified axis tag
in the specified face.</p>
<div class="refsect3">
<a name="hb-ot-var-find-axis.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>face</p></td>
<td class="parameter_description"><p><a class="link" href="harfbuzz-hb-face.html#hb-face-t" title="hb_face_t"><span class="type">hb_face_t</span></a> to work upon</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>axis_tag</p></td>
<td class="parameter_description"><p>The <a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> of the variation axis to query</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>axis_index</p></td>
<td class="parameter_description"><p>The index of the variation axis</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>axis_info</p></td>
<td class="parameter_description"><p>The <a class="link" href="harfbuzz-hb-ot-var.html#hb-ot-var-axis-info-t" title="hb_ot_var_axis_info_t"><span class="type">hb_ot_var_axis_info_t</span></a> of the axis tag queried. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-1-4-2.html#api-index-1.4.2">1.4.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-ot-var-get-axes"></a><h3>hb_ot_var_get_axes ()</h3>
<pre class="programlisting">unsigned <span class="returnvalue">int</span>
hb_ot_var_get_axes (<em class="parameter"><code><a class="link" href="harfbuzz-hb-face.html#hb-face-t" title="hb_face_t"><span class="type">hb_face_t</span></a> *face</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> start_offset</code></em>,
<em class="parameter"><code>unsigned <span class="type">int</span> *axes_count</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-deprecated.html#hb-ot-var-axis-t" title="hb_ot_var_axis_t"><span class="type">hb_ot_var_axis_t</span></a> *axes_array</code></em>);</pre>
<div class="warning">
<p><code class="literal">hb_ot_var_get_axes</code> has been deprecated since version 2.2.0 and should not be used in newly-written code.</p>
<p>use <a class="link" href="harfbuzz-hb-ot-var.html#hb-ot-var-get-axis-infos" title="hb_ot_var_get_axis_infos ()"><code class="function">hb_ot_var_get_axis_infos()</code></a> instead</p>
</div>
<p>Fetches a list of all variation axes in the specified face. The list returned will begin
at the offset provided.</p>
<div class="refsect3">
<a name="hb-ot-var-get-axes.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>face</p></td>
<td class="parameter_description"><p><a class="link" href="harfbuzz-hb-face.html#hb-face-t" title="hb_face_t"><span class="type">hb_face_t</span></a> to work upon</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>start_offset</p></td>
<td class="parameter_description"><p>offset of the first lookup to retrieve</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>axes_count</p></td>
<td class="parameter_description"><p>Input = the maximum number of variation axes to return;
Output = the actual number of variation axes returned (may be zero). </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for input and for returning results. Default is transfer full."><span class="acronym">inout</span></acronym>][<acronym title="NULL may be passed instead of a pointer to a location."><span class="acronym">optional</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>axes_array</p></td>
<td class="parameter_description"><p>The array of variation axes found. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=axes_count]</span></td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-1-4-2.html#api-index-1.4.2">1.4.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-unicode-eastasian-width-func-t"></a><h3>hb_unicode_eastasian_width_func_t ()</h3>
<pre class="programlisting">unsigned <span class="returnvalue">int</span>
<span class="c_punctuation">(</span>*hb_unicode_eastasian_width_func_t<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t" title="hb_unicode_funcs_t"><span class="type">hb_unicode_funcs_t</span></a> *ufuncs</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> unicode</code></em>,
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>);</pre>
<div class="warning"><p><code class="literal">hb_unicode_eastasian_width_func_t</code> has been deprecated since version 2.0.0 and should not be used in newly-written code.</p></div>
<p>A virtual method for the <a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t" title="hb_unicode_funcs_t"><span class="type">hb_unicode_funcs_t</span></a> structure.</p>
<div class="refsect3">
<a name="hb-unicode-eastasian-width-func-t.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>ufuncs</p></td>
<td class="parameter_description"><p>A Unicode-functions structure</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>unicode</p></td>
<td class="parameter_description"><p>The code point to query</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>User data pointer passed by the caller</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="hb-unicode-eastasian-width"></a><h3>hb_unicode_eastasian_width ()</h3>
<pre class="programlisting">unsigned <span class="returnvalue">int</span>
hb_unicode_eastasian_width (<em class="parameter"><code><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t" title="hb_unicode_funcs_t"><span class="type">hb_unicode_funcs_t</span></a> *ufuncs</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> unicode</code></em>);</pre>
<div class="warning"><p><code class="literal">hb_unicode_eastasian_width</code> has been deprecated since version 2.0.0 and should not be used in newly-written code.</p></div>
<p>Don't use. Not used by HarfBuzz.</p>
<div class="refsect3">
<a name="hb-unicode-eastasian-width.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>ufuncs</p></td>
<td class="parameter_description"><p>a Unicode-function structure</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>unicode</p></td>
<td class="parameter_description"><p>The code point to query</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-unicode-funcs-set-eastasian-width-func"></a><h3>hb_unicode_funcs_set_eastasian_width_func ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
hb_unicode_funcs_set_eastasian_width_func
(<em class="parameter"><code><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t" title="hb_unicode_funcs_t"><span class="type">hb_unicode_funcs_t</span></a> *ufuncs</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-deprecated.html#hb-unicode-eastasian-width-func-t" title="hb_unicode_eastasian_width_func_t ()"><span class="type">hb_unicode_eastasian_width_func_t</span></a> func</code></em>,
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>);</pre>
<div class="warning"><p><code class="literal">hb_unicode_funcs_set_eastasian_width_func</code> has been deprecated since version 2.0.0 and should not be used in newly-written code.</p></div>
<p>Sets the implementation function for <a class="link" href="harfbuzz-hb-deprecated.html#hb-unicode-eastasian-width-func-t" title="hb_unicode_eastasian_width_func_t ()"><span class="type">hb_unicode_eastasian_width_func_t</span></a>.</p>
<div class="refsect3">
<a name="hb-unicode-funcs-set-eastasian-width-func.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>ufuncs</p></td>
<td class="parameter_description"><p>a Unicode-function structure</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>func</p></td>
<td class="parameter_description"><p>The callback function to assign. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym> user_data][<acronym title="This parameter is a 'destroy_data', for callbacks."><span class="acronym">destroy</span></acronym> destroy][<acronym title="The callback is valid until the GDestroyNotify argument is called."><span class="acronym">scope notified</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>Data to pass to <em class="parameter"><code>func</code></em>
</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>destroy</p></td>
<td class="parameter_description"><p>The function to call when <em class="parameter"><code>user_data</code></em>
is not needed anymore. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-unicode-decompose-compatibility-func-t"></a><h3>hb_unicode_decompose_compatibility_func_t ()</h3>
<pre class="programlisting">unsigned <span class="returnvalue">int</span>
<span class="c_punctuation">(</span>*hb_unicode_decompose_compatibility_func_t<span class="c_punctuation">)</span>
(<em class="parameter"><code><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t" title="hb_unicode_funcs_t"><span class="type">hb_unicode_funcs_t</span></a> *ufuncs</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> u</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> *decomposed</code></em>,
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>);</pre>
<div class="warning"><p><code class="literal">hb_unicode_decompose_compatibility_func_t</code> has been deprecated since version 2.0.0 and should not be used in newly-written code.</p></div>
<p>Fully decompose <em class="parameter"><code>u</code></em>
to its Unicode compatibility decomposition. The codepoints of the decomposition will be written to <em class="parameter"><code>decomposed</code></em>
.
The complete length of the decomposition will be returned.</p>
<p>If <em class="parameter"><code>u</code></em>
has no compatibility decomposition, zero should be returned.</p>
<p>The Unicode standard guarantees that a buffer of length <a class="link" href="harfbuzz-hb-deprecated.html#HB-UNICODE-MAX-DECOMPOSITION-LEN:CAPS" title="HB_UNICODE_MAX_DECOMPOSITION_LEN"><span class="type">HB_UNICODE_MAX_DECOMPOSITION_LEN</span></a> codepoints will always be sufficient for any
compatibility decomposition plus an terminating value of 0. Consequently, <em class="parameter"><code>decompose</code></em>
must be allocated by the caller to be at least this length. Implementations
of this function type must ensure that they do not write past the provided array.</p>
<div class="refsect3">
<a name="hb-unicode-decompose-compatibility-func-t.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>ufuncs</p></td>
<td class="parameter_description"><p>a Unicode function structure</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>u</p></td>
<td class="parameter_description"><p>codepoint to decompose</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>decomposed</p></td>
<td class="parameter_description"><p>address of codepoint array (of length <a class="link" href="harfbuzz-hb-deprecated.html#HB-UNICODE-MAX-DECOMPOSITION-LEN:CAPS" title="HB_UNICODE_MAX_DECOMPOSITION_LEN"><span class="type">HB_UNICODE_MAX_DECOMPOSITION_LEN</span></a>) to write decomposition into</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>user data pointer as passed to <a class="link" href="harfbuzz-hb-deprecated.html#hb-unicode-funcs-set-decompose-compatibility-func" title="hb_unicode_funcs_set_decompose_compatibility_func ()"><code class="function">hb_unicode_funcs_set_decompose_compatibility_func()</code></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="hb-unicode-decompose-compatibility-func-t.returns"></a><h4>Returns</h4>
<p> number of codepoints in the full compatibility decomposition of <em class="parameter"><code>u</code></em>
, or 0 if no decomposition available.</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="hb-unicode-decompose-compatibility"></a><h3>hb_unicode_decompose_compatibility ()</h3>
<pre class="programlisting">unsigned <span class="returnvalue">int</span>
hb_unicode_decompose_compatibility (<em class="parameter"><code><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t" title="hb_unicode_funcs_t"><span class="type">hb_unicode_funcs_t</span></a> *ufuncs</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> u</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> *decomposed</code></em>);</pre>
<div class="warning"><p><code class="literal">hb_unicode_decompose_compatibility</code> has been deprecated since version 2.0.0 and should not be used in newly-written code.</p></div>
<p>Fetches the compatibility decomposition of a Unicode
code point. Deprecated.</p>
<div class="refsect3">
<a name="hb-unicode-decompose-compatibility.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>ufuncs</p></td>
<td class="parameter_description"><p>The Unicode-functions structure</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>u</p></td>
<td class="parameter_description"><p>Code point to decompose</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>decomposed</p></td>
<td class="parameter_description"><p>Compatibility decomposition of <em class="parameter"><code>u</code></em>
. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="hb-unicode-decompose-compatibility.returns"></a><h4>Returns</h4>
<p> length of <em class="parameter"><code>decomposed</code></em>
.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-unicode-funcs-set-decompose-compatibility-func"></a><h3>hb_unicode_funcs_set_decompose_compatibility_func ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
hb_unicode_funcs_set_decompose_compatibility_func
(<em class="parameter"><code><a class="link" href="harfbuzz-hb-unicode.html#hb-unicode-funcs-t" title="hb_unicode_funcs_t"><span class="type">hb_unicode_funcs_t</span></a> *ufuncs</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-deprecated.html#hb-unicode-decompose-compatibility-func-t" title="hb_unicode_decompose_compatibility_func_t ()"><span class="type">hb_unicode_decompose_compatibility_func_t</span></a> func</code></em>,
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>);</pre>
<div class="warning"><p><code class="literal">hb_unicode_funcs_set_decompose_compatibility_func</code> has been deprecated since version 2.0.0 and should not be used in newly-written code.</p></div>
<p>Sets the implementation function for <a class="link" href="harfbuzz-hb-deprecated.html#hb-unicode-decompose-compatibility-func-t" title="hb_unicode_decompose_compatibility_func_t ()"><span class="type">hb_unicode_decompose_compatibility_func_t</span></a>.</p>
<div class="refsect3">
<a name="hb-unicode-funcs-set-decompose-compatibility-func.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>ufuncs</p></td>
<td class="parameter_description"><p>A Unicode-functions structure</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>func</p></td>
<td class="parameter_description"><p>The callback function to assign. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym> user_data][<acronym title="This parameter is a 'destroy_data', for callbacks."><span class="acronym">destroy</span></acronym> destroy][<acronym title="The callback is valid until the GDestroyNotify argument is called."><span class="acronym">scope notified</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>Data to pass to <em class="parameter"><code>func</code></em>
</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>destroy</p></td>
<td class="parameter_description"><p>The function to call when <em class="parameter"><code>user_data</code></em>
is not needed anymore. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-font-funcs-set-glyph-v-kerning-func"></a><h3>hb_font_funcs_set_glyph_v_kerning_func ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
hb_font_funcs_set_glyph_v_kerning_func
(<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-t" title="hb_font_funcs_t"><span class="type">hb_font_funcs_t</span></a> *ffuncs</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-deprecated.html#hb-font-get-glyph-v-kerning-func-t" title="hb_font_get_glyph_v_kerning_func_t"><span class="type">hb_font_get_glyph_v_kerning_func_t</span></a> func</code></em>,
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>);</pre>
<div class="warning"><p><code class="literal">hb_font_funcs_set_glyph_v_kerning_func</code> has been deprecated since version 2.0.0 and should not be used in newly-written code.</p></div>
<p>Sets the implementation function for <a class="link" href="harfbuzz-hb-deprecated.html#hb-font-get-glyph-v-kerning-func-t" title="hb_font_get_glyph_v_kerning_func_t"><span class="type">hb_font_get_glyph_v_kerning_func_t</span></a>.</p>
<div class="refsect3">
<a name="hb-font-funcs-set-glyph-v-kerning-func.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>ffuncs</p></td>
<td class="parameter_description"><p>A font-function structure</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>func</p></td>
<td class="parameter_description"><p>The callback function to assign. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym> user_data][<acronym title="This parameter is a 'destroy_data', for callbacks."><span class="acronym">destroy</span></acronym> destroy][<acronym title="The callback is valid until the GDestroyNotify argument is called."><span class="acronym">scope notified</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>Data to pass to <em class="parameter"><code>func</code></em>
</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>destroy</p></td>
<td class="parameter_description"><p>The function to call when <em class="parameter"><code>user_data</code></em>
is not needed anymore. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-font-get-glyph-shape"></a><h3>hb_font_get_glyph_shape ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
hb_font_get_glyph_shape (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t" title="hb_font_t"><span class="type">hb_font_t</span></a> *font</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> glyph</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-draw.html#hb-draw-funcs-t" title="hb_draw_funcs_t"><span class="type">hb_draw_funcs_t</span></a> *dfuncs</code></em>,
<em class="parameter"><code><span class="type">void</span> *draw_data</code></em>);</pre>
<div class="warning">
<p><code class="literal">hb_font_get_glyph_shape</code> has been deprecated since version 7.0.0 and should not be used in newly-written code.</p>
<p>Use <a class="link" href="harfbuzz-hb-font.html#hb-font-draw-glyph" title="hb_font_draw_glyph ()"><code class="function">hb_font_draw_glyph()</code></a> instead</p>
</div>
<p>Fetches the glyph shape that corresponds to a glyph in the specified <em class="parameter"><code>font</code></em>
.
The shape is returned by way of calls to the callbacks of the <em class="parameter"><code>dfuncs</code></em>
objects, with <em class="parameter"><code>draw_data</code></em>
passed to them.</p>
<div class="refsect3">
<a name="hb-font-get-glyph-shape.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>font</p></td>
<td class="parameter_description"><p><a class="link" href="harfbuzz-hb-font.html#hb-font-t" title="hb_font_t"><span class="type">hb_font_t</span></a> to work upon</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>glyph</p></td>
<td class="parameter_description"><p>The glyph ID</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>dfuncs</p></td>
<td class="parameter_description"><p><a class="link" href="harfbuzz-hb-draw.html#hb-draw-funcs-t" title="hb_draw_funcs_t"><span class="type">hb_draw_funcs_t</span></a> to draw to</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>draw_data</p></td>
<td class="parameter_description"><p>User data to pass to draw callbacks</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-4-0-0.html#api-index-4.0.0">4.0.0</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-font-get-glyph-shape-func-t"></a><h3>hb_font_get_glyph_shape_func_t ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
<span class="c_punctuation">(</span>*hb_font_get_glyph_shape_func_t<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t" title="hb_font_t"><span class="type">hb_font_t</span></a> *font</code></em>,
<em class="parameter"><code><span class="type">void</span> *font_data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> glyph</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-draw.html#hb-draw-funcs-t" title="hb_draw_funcs_t"><span class="type">hb_draw_funcs_t</span></a> *draw_funcs</code></em>,
<em class="parameter"><code><span class="type">void</span> *draw_data</code></em>,
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>);</pre>
<div class="warning">
<p><code class="literal">hb_font_get_glyph_shape_func_t</code> has been deprecated since version 7.0.0 and should not be used in newly-written code.</p>
<p>Use <a class="link" href="harfbuzz-hb-font.html#hb-font-draw-glyph-func-t" title="hb_font_draw_glyph_func_t ()"><span class="type">hb_font_draw_glyph_func_t</span></a> instead</p>
</div>
<p>A virtual method for the <a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-t" title="hb_font_funcs_t"><span class="type">hb_font_funcs_t</span></a> of an <a class="link" href="harfbuzz-hb-font.html#hb-font-t" title="hb_font_t"><span class="type">hb_font_t</span></a> object.</p>
<div class="refsect3">
<a name="hb-font-get-glyph-shape-func-t.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>font</p></td>
<td class="parameter_description"><p><a class="link" href="harfbuzz-hb-font.html#hb-font-t" title="hb_font_t"><span class="type">hb_font_t</span></a> to work upon</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>font_data</p></td>
<td class="parameter_description"><p><em class="parameter"><code>font</code></em>
user data pointer</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>glyph</p></td>
<td class="parameter_description"><p>The glyph ID to query</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>draw_funcs</p></td>
<td class="parameter_description"><p>The draw functions to send the shape data to</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>draw_data</p></td>
<td class="parameter_description"><p>The data accompanying the draw functions</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>User data pointer passed by the caller</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-4-0-0.html#api-index-4.0.0">4.0.0</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-font-funcs-set-glyph-shape-func"></a><h3>hb_font_funcs_set_glyph_shape_func ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
hb_font_funcs_set_glyph_shape_func (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-t" title="hb_font_funcs_t"><span class="type">hb_font_funcs_t</span></a> *ffuncs</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-deprecated.html#hb-font-get-glyph-shape-func-t" title="hb_font_get_glyph_shape_func_t ()"><span class="type">hb_font_get_glyph_shape_func_t</span></a> func</code></em>,
<em class="parameter"><code><span class="type">void</span> *user_data</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-destroy-func-t" title="hb_destroy_func_t ()"><span class="type">hb_destroy_func_t</span></a> destroy</code></em>);</pre>
<div class="warning">
<p><code class="literal">hb_font_funcs_set_glyph_shape_func</code> has been deprecated since version 7.0.0 and should not be used in newly-written code.</p>
<p>Use <a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-set-draw-glyph-func" title="hb_font_funcs_set_draw_glyph_func ()"><code class="function">hb_font_funcs_set_draw_glyph_func()</code></a> instead</p>
</div>
<p>Sets the implementation function for <a class="link" href="harfbuzz-hb-deprecated.html#hb-font-get-glyph-shape-func-t" title="hb_font_get_glyph_shape_func_t ()"><span class="type">hb_font_get_glyph_shape_func_t</span></a>,
which is the same as <a class="link" href="harfbuzz-hb-font.html#hb-font-draw-glyph-func-t" title="hb_font_draw_glyph_func_t ()"><span class="type">hb_font_draw_glyph_func_t</span></a>.</p>
<div class="refsect3">
<a name="hb-font-funcs-set-glyph-shape-func.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>ffuncs</p></td>
<td class="parameter_description"><p>A font-function structure</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>func</p></td>
<td class="parameter_description"><p>The callback function to assign. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym> user_data][<acronym title="This parameter is a 'destroy_data', for callbacks."><span class="acronym">destroy</span></acronym> destroy][<acronym title="The callback is valid until the GDestroyNotify argument is called."><span class="acronym">scope notified</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>Data to pass to <em class="parameter"><code>func</code></em>
</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>destroy</p></td>
<td class="parameter_description"><p>The function to call when <em class="parameter"><code>user_data</code></em>
is not needed anymore. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-4-0-0.html#api-index-4.0.0">4.0.0</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-font-get-glyph-v-kerning"></a><h3>hb_font_get_glyph_v_kerning ()</h3>
<pre class="programlisting"><a class="link" href="harfbuzz-hb-common.html#hb-position-t" title="hb_position_t"><span class="returnvalue">hb_position_t</span></a>
hb_font_get_glyph_v_kerning (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t" title="hb_font_t"><span class="type">hb_font_t</span></a> *font</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> top_glyph</code></em>,
<em class="parameter"><code><a class="link" href="harfbuzz-hb-common.html#hb-codepoint-t" title="hb_codepoint_t"><span class="type">hb_codepoint_t</span></a> bottom_glyph</code></em>);</pre>
<div class="warning"><p><code class="literal">hb_font_get_glyph_v_kerning</code> has been deprecated since version 2.0.0 and should not be used in newly-written code.</p></div>
<p>Fetches the kerning-adjustment value for a glyph-pair in
the specified font, for vertical text segments.</p>
<div class="note">It handles legacy kerning only (as returned by the corresponding
<a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-t" title="hb_font_funcs_t"><span class="type">hb_font_funcs_t</span></a> function).</div>
<div class="refsect3">
<a name="hb-font-get-glyph-v-kerning.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>font</p></td>
<td class="parameter_description"><p><a class="link" href="harfbuzz-hb-font.html#hb-font-t" title="hb_font_t"><span class="type">hb_font_t</span></a> to work upon</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>top_glyph</p></td>
<td class="parameter_description"><p>The glyph ID of the top glyph in the glyph pair</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>bottom_glyph</p></td>
<td class="parameter_description"><p>The glyph ID of the bottom glyph in the glyph pair</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="hb-font-get-glyph-v-kerning.returns"></a><h4>Returns</h4>
<p> The kerning adjustment value</p>
</div>
<p class="since">Since: <a class="link" href="api-index-0-9-2.html#api-index-0.9.2">0.9.2</a></p>
</div>
</div>
<div class="refsect1">
<a name="harfbuzz-hb-deprecated.other_details"></a><h2>Types and Values</h2>
<div class="refsect2">
<a name="HB-BUFFER-FLAGS-DEFAULT:CAPS"></a><h3>HB_BUFFER_FLAGS_DEFAULT</h3>
<pre class="programlisting">#define HB_BUFFER_FLAGS_DEFAULT HB_BUFFER_FLAG_DEFAULT
</pre>
<div class="warning"><p><code class="literal">HB_BUFFER_FLAGS_DEFAULT</code> has been deprecated since version 0.9.20 and should not be used in newly-written code.</p></div>
<p>Use <a class="link" href="harfbuzz-hb-buffer.html#HB-BUFFER-FLAG-DEFAULT:CAPS"><span class="type">HB_BUFFER_FLAG_DEFAULT</span></a> instead.</p>
</div>
<hr>
<div class="refsect2">
<a name="HB-BUFFER-SERIALIZE-FLAGS-DEFAULT:CAPS"></a><h3>HB_BUFFER_SERIALIZE_FLAGS_DEFAULT</h3>
<pre class="programlisting">#define HB_BUFFER_SERIALIZE_FLAGS_DEFAULT HB_BUFFER_SERIALIZE_FLAG_DEFAULT
</pre>
<div class="warning"><p><code class="literal">HB_BUFFER_SERIALIZE_FLAGS_DEFAULT</code> has been deprecated since version 0.9.20 and should not be used in newly-written code.</p></div>
<p>Use <a class="link" href="harfbuzz-hb-buffer.html#HB-BUFFER-SERIALIZE-FLAG-DEFAULT:CAPS"><span class="type">HB_BUFFER_SERIALIZE_FLAG_DEFAULT</span></a> instead.</p>
</div>
<hr>
<div class="refsect2">
<a name="HB-SCRIPT-CANADIAN-ABORIGINAL:CAPS"></a><h3>HB_SCRIPT_CANADIAN_ABORIGINAL</h3>
<pre class="programlisting">#define HB_SCRIPT_CANADIAN_ABORIGINAL HB_SCRIPT_CANADIAN_SYLLABICS
</pre>
<div class="warning"><p><code class="literal">HB_SCRIPT_CANADIAN_ABORIGINAL</code> has been deprecated since version 0.9.20 and should not be used in newly-written code.</p></div>
<p>Use <a class="link" href="harfbuzz-hb-common.html#HB-SCRIPT-CANADIAN-SYLLABICS:CAPS"><span class="type">HB_SCRIPT_CANADIAN_SYLLABICS</span></a> instead.</p>
</div>
<hr>
<div class="refsect2">
<a name="HB-MATH-GLYPH-PART-FLAG-EXTENDER:CAPS"></a><h3>HB_MATH_GLYPH_PART_FLAG_EXTENDER</h3>
<pre class="programlisting">#define HB_MATH_GLYPH_PART_FLAG_EXTENDER HB_OT_MATH_GLYPH_PART_FLAG_EXTENDER
</pre>
<div class="warning"><p><code class="literal">HB_MATH_GLYPH_PART_FLAG_EXTENDER</code> has been deprecated since version 2.5.1 and should not be used in newly-written code.</p></div>
<p>Use <a class="link" href="harfbuzz-hb-ot-math.html#HB-OT-MATH-GLYPH-PART-FLAG-EXTENDER:CAPS"><span class="type">HB_OT_MATH_GLYPH_PART_FLAG_EXTENDER</span></a> instead.</p>
</div>
<hr>
<div class="refsect2">
<a name="HB-OT-MATH-SCRIPT:CAPS"></a><h3>HB_OT_MATH_SCRIPT</h3>
<pre class="programlisting">#define HB_OT_MATH_SCRIPT HB_OT_TAG_MATH_SCRIPT
</pre>
<div class="warning"><p><code class="literal">HB_OT_MATH_SCRIPT</code> has been deprecated since version 3.4.0 and should not be used in newly-written code.</p></div>
<p>Use <a class="link" href="harfbuzz-hb-common.html#HB-SCRIPT-MATH:CAPS"><span class="type">HB_SCRIPT_MATH</span></a> or <a class="link" href="harfbuzz-hb-ot-math.html#HB-OT-TAG-MATH-SCRIPT:CAPS" title="HB_OT_TAG_MATH_SCRIPT"><span class="type">HB_OT_TAG_MATH_SCRIPT</span></a> instead.</p>
<div class="note">Previous versions of this documentation recommended passing
<a class="link" href="harfbuzz-hb-deprecated.html#HB-OT-MATH-SCRIPT:CAPS" title="HB_OT_MATH_SCRIPT"><span class="type">HB_OT_MATH_SCRIPT</span></a> to <a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-set-script" title="hb_buffer_set_script ()"><code class="function">hb_buffer_set_script()</code></a> to enable math shaping, but this
usage is no longer supported. Use <a class="link" href="harfbuzz-hb-common.html#HB-SCRIPT-MATH:CAPS"><span class="type">HB_SCRIPT_MATH</span></a> instead.</div>
<p class="since">Since: <a class="link" href="api-index-1-3-3.html#api-index-1.3.3">1.3.3</a></p>
</div>
<hr>
<div class="refsect2">
<a name="HB-OT-VAR-NO-AXIS-INDEX:CAPS"></a><h3>HB_OT_VAR_NO_AXIS_INDEX</h3>
<pre class="programlisting">#define HB_OT_VAR_NO_AXIS_INDEX 0xFFFFFFFFu
</pre>
<div class="warning"><p><code class="literal">HB_OT_VAR_NO_AXIS_INDEX</code> has been deprecated since version 2.2.0 and should not be used in newly-written code.</p></div>
<p>Do not use.</p>
<p class="since">Since: <a class="link" href="api-index-1-4-2.html#api-index-1.4.2">1.4.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="hb-ot-var-axis-t"></a><h3>hb_ot_var_axis_t</h3>
<pre class="programlisting">typedef struct {
hb_tag_t tag;
hb_ot_name_id_t name_id;
float min_value;
float default_value;
float max_value;
} hb_ot_var_axis_t;
</pre>
<div class="warning"><p><code class="literal">hb_ot_var_axis_t</code> has been deprecated since version 2.2.0 and should not be used in newly-written code.</p></div>
<p>Use <a class="link" href="harfbuzz-hb-ot-var.html#hb-ot-var-axis-info-t" title="hb_ot_var_axis_info_t"><span class="type">hb_ot_var_axis_info_t</span></a> instead.</p>
<div class="refsect3">
<a name="hb-ot-var-axis-t.members"></a><h4>Members</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="300px" class="struct_members_name">
<col class="struct_members_description">
<col width="200px" class="struct_members_annotations">
</colgroup>
<tbody>
<tr>
<td class="struct_member_name"><p><a class="link" href="harfbuzz-hb-common.html#hb-tag-t" title="hb_tag_t"><span class="type">hb_tag_t</span></a> <em class="structfield"><code><a name="hb-ot-var-axis-t.tag"></a>tag</code></em>;</p></td>
<td class="struct_member_description"><p>axis tag</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><a class="link" href="harfbuzz-hb-ot-name.html#hb-ot-name-id-t" title="hb_ot_name_id_t"><span class="type">hb_ot_name_id_t</span></a> <em class="structfield"><code><a name="hb-ot-var-axis-t.name-id"></a>name_id</code></em>;</p></td>
<td class="struct_member_description"><p>axis name identifier</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><span class="type">float</span> <em class="structfield"><code><a name="hb-ot-var-axis-t.min-value"></a>min_value</code></em>;</p></td>
<td class="struct_member_description"><p>minimum value of the axis</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><span class="type">float</span> <em class="structfield"><code><a name="hb-ot-var-axis-t.default-value"></a>default_value</code></em>;</p></td>
<td class="struct_member_description"><p>default value of the axis</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><span class="type">float</span> <em class="structfield"><code><a name="hb-ot-var-axis-t.max-value"></a>max_value</code></em>;</p></td>
<td class="struct_member_description"><p>maximum value of the axis</p></td>
<td class="struct_member_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-1-4-2.html#api-index-1.4.2">1.4.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="HB-UNICODE-MAX-DECOMPOSITION-LEN:CAPS"></a><h3>HB_UNICODE_MAX_DECOMPOSITION_LEN</h3>
<pre class="programlisting">#define HB_UNICODE_MAX_DECOMPOSITION_LEN (18+1) /* codepoints */
</pre>
<div class="warning"><p><code class="literal">HB_UNICODE_MAX_DECOMPOSITION_LEN</code> has been deprecated since version 2.0.0 and should not be used in newly-written code.</p></div>
<p>See Unicode 6.1 for details on the maximum decomposition length.</p>
</div>
<hr>
<div class="refsect2">
<a name="HB-UNICODE-COMBINING-CLASS-CCC133:CAPS"></a><h3>HB_UNICODE_COMBINING_CLASS_CCC133</h3>
<pre class="programlisting">#define HB_UNICODE_COMBINING_CLASS_CCC133 133
</pre>
<div class="warning"><p><code class="literal">HB_UNICODE_COMBINING_CLASS_CCC133</code> has been deprecated since version 7.2.0 and should not be used in newly-written code.</p></div>
<p>[Tibetan]</p>
</div>
<hr>
<div class="refsect2">
<a name="hb-font-get-glyph-v-kerning-func-t"></a><h3>hb_font_get_glyph_v_kerning_func_t</h3>
<pre class="programlisting">typedef hb_font_get_glyph_kerning_func_t hb_font_get_glyph_v_kerning_func_t;
</pre>
<div class="warning"><p><code class="literal">hb_font_get_glyph_v_kerning_func_t</code> is deprecated and should not be used in newly-written code.</p></div>
<p>A virtual method for the <a class="link" href="harfbuzz-hb-font.html#hb-font-funcs-t" title="hb_font_funcs_t"><span class="type">hb_font_funcs_t</span></a> of an <a class="link" href="harfbuzz-hb-font.html#hb-font-t" title="hb_font_t"><span class="type">hb_font_t</span></a> object.</p>
<p>This method should retrieve the kerning-adjustment value for a glyph-pair in
the specified font, for vertical text segments.</p>
</div>
<hr>
<div class="refsect2">
<a name="HB-AAT-LAYOUT-FEATURE-TYPE-CURISVE-CONNECTION:CAPS"></a><h3>HB_AAT_LAYOUT_FEATURE_TYPE_CURISVE_CONNECTION</h3>
<pre class="programlisting">#define HB_AAT_LAYOUT_FEATURE_TYPE_CURISVE_CONNECTION HB_AAT_LAYOUT_FEATURE_TYPE_CURSIVE_CONNECTION
</pre>
<div class="warning"><p><code class="literal">HB_AAT_LAYOUT_FEATURE_TYPE_CURISVE_CONNECTION</code> has been deprecated since version 8.3.0 and should not be used in newly-written code.</p></div>
<p>Use <a class="link" href="harfbuzz-hb-aat-layout.html#HB-AAT-LAYOUT-FEATURE-TYPE-CURSIVE-CONNECTION:CAPS"><span class="type">HB_AAT_LAYOUT_FEATURE_TYPE_CURSIVE_CONNECTION</span></a> instead.</p>
</div>
</div>
</div>
<div class="footer">
<hr>Generated by GTK-Doc V1.33.1</div>
</body>
</html>