⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pango-opentype-font-handling.html

📁 linux
💻 HTML
📖 第 1 页 / 共 5 页
字号:
The <span class="type">PangoOTTag</span> typedef is used to represent TrueType and OpenTypefour letter tags inside Pango. Use <a href="pango-OpenType-Font-Handling.html#PANGO-OT-TAG-MAKE:CAPS"><code class="function">PANGO_OT_TAG_MAKE()</code></a>or <a href="pango-OpenType-Font-Handling.html#PANGO-OT-TAG-MAKE-FROM-STRING:CAPS"><code class="function">PANGO_OT_TAG_MAKE_FROM_STRING()</code></a> macros to create <span class="type">PangoOTTag</span>s manually.</p></div><hr><div class="refsect2" lang="en"><a name="id3261410"></a><h3><a name="PangoOTInfo-struct"></a>PangoOTInfo</h3><a class="indexterm" name="id3261422"></a><pre class="programlisting">typedef struct _PangoOTInfo PangoOTInfo;</pre><p>The <a href="pango-OpenType-Font-Handling.html#PangoOTInfo"><span class="type">PangoOTInfo</span></a> struct contains the various tables associated with an OpenType font. It contains only private fields andshould only be accessed via the <code class="function">pango_ot_info_*</code> functionswhich are documented below. To obtain a <a href="pango-OpenType-Font-Handling.html#PangoOTInfo"><span class="type">PangoOTInfo</span></a>,use <code class="function">pango_ot_info_new()</code>.</p></div><hr><div class="refsect2" lang="en"><a name="id3261473"></a><h3><a name="PangoOTBuffer"></a>PangoOTBuffer</h3><a class="indexterm" name="id3261486"></a><pre class="programlisting">typedef struct _PangoOTBuffer PangoOTBuffer;</pre><p>The <a href="pango-OpenType-Font-Handling.html#PangoOTBuffer"><span class="type">PangoOTBuffer</span></a> structure is used to store strings of glyphs associatedwith a <a href="PangoFcFont.html" title="PangoFcFont"><span class="type">PangoFcFont</span></a>, suitable for OpenType layout processing.  It containsonly private fields and should only be accessed via the<code class="function">pango_ot_buffer_*</code> functions which are documented below.To obtain a <a href="pango-OpenType-Font-Handling.html#PangoOTBuffer"><span class="type">PangoOTBuffer</span></a>, use <a href="pango-OpenType-Font-Handling.html#pango-ot-buffer-new"><code class="function">pango_ot_buffer_new()</code></a>.</p></div><hr><div class="refsect2" lang="en"><a name="id3261547"></a><h3><a name="PangoOTGlyph"></a>PangoOTGlyph</h3><a class="indexterm" name="id3261560"></a><pre class="programlisting">typedef struct {  guint    glyph;  guint    properties;  guint    cluster;  gushort  component;  gushort  ligID;  gushort  property_cache;    /* Internal */} PangoOTGlyph;</pre><p>The <a href="pango-OpenType-Font-Handling.html#PangoOTGlyph"><span class="type">PangoOTGlyph</span></a> structure represents a single glyph together withinformation used for OpenType layout processing of the glyph.It contains the following fields.</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><ahref="../glib/glib-Basic-Types.html#guint">guint</a>&#160;<em class="structfield"><code>glyph</code></em>;</span></td><td>the glyph itself.</td></tr><tr><td><span class="term"><ahref="../glib/glib-Basic-Types.html#guint">guint</a>&#160;<em class="structfield"><code>properties</code></em>;</span></td><td>the properties value, identifying which features should be	     applied on this glyph.  See <code class="function">pango_ruleset_add_feature()</code>.</td></tr><tr><td><span class="term"><ahref="../glib/glib-Basic-Types.html#guint">guint</a>&#160;<em class="structfield"><code>cluster</code></em>;</span></td><td>the cluster that this glyph belongs to.</td></tr><tr><td><span class="term"><ahref="../glib/glib-Basic-Types.html#gushort">gushort</a>&#160;<em class="structfield"><code>component</code></em>;</span></td><td>a component value, set by the OpenType layout engine.</td></tr><tr><td><span class="term"><ahref="../glib/glib-Basic-Types.html#gushort">gushort</a>&#160;<em class="structfield"><code>ligID</code></em>;</span></td><td>a ligature index value, set by the OpenType layout engine.</td></tr><tr><td><span class="term"><ahref="../glib/glib-Basic-Types.html#gushort">gushort</a>&#160;<em class="structfield"><code>property_cache</code></em>;</span></td><td>for internal use.</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id3261732"></a><h3><a name="PangoOTRuleset-struct"></a>PangoOTRuleset</h3><a class="indexterm" name="id3261746"></a><pre class="programlisting">typedef struct _PangoOTRuleset PangoOTRuleset;</pre><p>The <a href="pango-OpenType-Font-Handling.html#PangoOTRuleset"><span class="type">PangoOTRuleset</span></a> structure holds aset of features selected from the tables in an OpenType font.(A feature is an operation such as adjusting glyph positioningthat should be applied to a text feature such as a certaintype of accent.) A <a href="pango-OpenType-Font-Handling.html#PangoOTRuleset"><span class="type">PangoOTRuleset</span></a>is created with <a href="pango-OpenType-Font-Handling.html#pango-ot-ruleset-new"><code class="function">pango_ot_ruleset_new()</code></a>, features are addedto it with <a href="pango-OpenType-Font-Handling.html#pango-ot-ruleset-add-feature"><code class="function">pango_ot_ruleset_add_feature()</code></a>, then it isapplied to a <a href="pango-Glyph-Storage.html#PangoGlyphString"><span class="type">PangoGlyphString</span></a> with <code class="function">pango_ot_ruleset_shape()</code>.</p></div><hr><div class="refsect2" lang="en"><a name="id3261826"></a><h3><a name="PangoOTRulesetDescription"></a>PangoOTRulesetDescription</h3><a class="indexterm" name="id3261841"></a><pre class="programlisting">typedef struct {  PangoScript               script;  PangoLanguage            *language;  const PangoOTFeatureMap  *static_gsub_features;  guint                   n_static_gsub_features;  const PangoOTFeatureMap  *static_gpos_features;  guint                   n_static_gpos_features;  const PangoOTFeatureMap  *other_features;  guint                   n_other_features;} PangoOTRulesetDescription;</pre><p>The <a href="pango-OpenType-Font-Handling.html#PangoOTRuleset"><span class="type">PangoOTRuleset</span></a> structure holds all the information neededto build a complete <a href="pango-OpenType-Font-Handling.html#PangoOTRuleset"><span class="type">PangoOTRuleset</span></a> from an OpenType font.The main use of this struct is to act as the key for a per-fonthash of rulesets.  The user populates a ruleset description andgets the ruleset using <a href="pango-OpenType-Font-Handling.html#pango-ot-ruleset-get-for-description"><code class="function">pango_ot_ruleset_get_for_description()</code></a>or create a new one using <a href="pango-OpenType-Font-Handling.html#pango-ot-ruleset-new-from-description"><code class="function">pango_ot_ruleset_new_from_description()</code></a>.</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><a href="pango-Scripts.html#PangoScript">PangoScript</a>&#160;<em class="structfield"><code>script</code></em>;</span></td><td>a <a href="pango-Scripts.html#PangoScript"><span class="type">PangoScript</span></a>.</td></tr><tr><td><span class="term"><a href="pango-Text-Attributes.html#PangoLanguage">PangoLanguage</a>&#160;*<em class="structfield"><code>language</code></em>;</span></td><td>a <a href="pango-Text-Attributes.html#PangoLanguage"><span class="type">PangoLanguage</span></a>.</td></tr><tr><td><span class="term">const&#160;<a href="pango-OpenType-Font-Handling.html#PangoOTFeatureMap">PangoOTFeatureMap</a>&#160;*<em class="structfield"><code>static_gsub_features</code></em>;</span></td><td>static map of GSUB features, or <ahref="../glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</td></tr><tr><td><span class="term"><ahref="../glib/glib-Basic-Types.html#guint">guint</a>&#160;<em class="structfield"><code>n_static_gsub_features</code></em>;</span></td><td>length of <em class="parameter"><code>static_gsub_features</code></em>, or 0.</td></tr><tr><td><span class="term">const&#160;<a href="pango-OpenType-Font-Handling.html#PangoOTFeatureMap">PangoOTFeatureMap</a>&#160;*<em class="structfield"><code>static_gpos_features</code></em>;</span></td><td>static map of GPOS features, or <ahref="../glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</td></tr><tr><td><span class="term"><ahref="../glib/glib-Basic-Types.html#guint">guint</a>&#160;<em class="structfield"><code>n_static_gpos_features</code></em>;</span></td><td>length of <em class="parameter"><code>static_gpos_features</code></em>, or 0.</td></tr><tr><td><span class="term">const&#160;<a href="pango-OpenType-Font-Handling.html#PangoOTFeatureMap">PangoOTFeatureMap</a>&#160;*<em class="structfield"><code>other_features</code></em>;</span></td><td>map of extra features to add to both GSUB and GPOS, or <ahref="../glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.                 Unlike the static maps, this pointer need not live beyond		 the life of function calls taking this struct.</td></tr><tr><td><span class="term"><ahref="../glib/glib-Basic-Types.html#guint">guint</a>&#160;<em class="structfield"><code>n_other_features</code></em>;</span></td><td>length of <em class="parameter"><code>other_features</code></em>, or 0.</td></tr></tbody></table></div><p class="since">Since 1.18</p></div><hr><div class="refsect2" lang="en"><a name="id3262156"></a><h3><a name="PangoOTTableType"></a>enum PangoOTTableType</h3><a class="indexterm" name="id3262169"></a><pre class="programlisting">typedef enum{  PANGO_OT_TABLE_GSUB,  PANGO_OT_TABLE_GPOS} PangoOTTableType;</pre><p>The <span class="type">PangoOTTableType</span> enumeration values are used toidentify the various OpenType tables in the<code class="function">pango_ot_info_*</code> functions.</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><a name="PANGO-OT-TABLE-GSUB:CAPS"></a><code class="literal">PANGO_OT_TABLE_GSUB</code></span></td><td>The GSUB table.</td></tr><tr><td><span class="term"><a name="PANGO-OT-TABLE-GPOS:CAPS"></a><code class="literal">PANGO_OT_TABLE_GPOS</code></span></td><td>The GPOS table.</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id3262246"></a><h3><a name="PangoOTFeatureMap"></a>PangoOTFeatureMap</h3><a class="indexterm" name="id3262261"></a><pre class="programlisting">typedef struct {  char     feature_name[5];  gulong   property_bit;} PangoOTFeatureMap;</pre><p>The <span class="type">PangoOTFeatureMap</span> typedef is used to represent an OpenTypefeature with the property bit associated with it.  The feature tag isrepresented as a char array instead of a <a href="pango-OpenType-Font-Handling.html#PangoOTTag"><span class="type">PangoOTTag</span></a> for convenience.</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term">char&#160;<em class="structfield"><code>feature_name</code></em>[5];</span></td><td>feature tag in represented as four-letter ASCII string.</td></tr><tr><td><span class="term"><ahref="../glib/glib-Basic-Types.html#gulong"

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -