Imported Upstream version 2.6.7
[platform/upstream/harfbuzz.git] / docs / html / index.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2 <html>
3 <head>
4 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
5 <title>HarfBuzz Manual: HarfBuzz Manual</title>
6 <meta name="generator" content="DocBook XSL Stylesheets Vsnapshot">
7 <meta name="description" content="HarfBuzz  HarfBuzz is an OpenType text shaping engine. Using the HarfBuzz library allows programs to convert a sequence of Unicode input into properly formatted and positioned glyph output—for any writing system and language. The canonical source-code tree is available at github.com/harfbuzz/harfbuzz. See for release tarballs.">
8 <link rel="home" href="index.html" title="HarfBuzz Manual">
9 <link rel="next" href="pt01.html" title="Part I. User's manual">
10 <meta name="generator" content="GTK-Doc V1.32.1 (XML mode)">
11 <link rel="stylesheet" href="style.css" type="text/css">
12 </head>
13 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
14 <div class="book">
15 <div class="titlepage">
16 <div>
17 <div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">HarfBuzz Manual</p></th></tr></table></div>
18 <div><div class="abstract">
19 <p class="title"><b>HarfBuzz</b></p>
20 <div align="center"><img src="HarfBuzz.png" align="middle"></div>
21 <p>
22         HarfBuzz is an <a class="ulink" href="http://www.microsoft.com/typography/otspec/" target="_top">OpenType</a>
23         text shaping engine. Using the HarfBuzz library allows
24         programs to convert a sequence of Unicode input into
25         properly formatted and positioned glyph output—for any writing
26         system and language.
27       </p>
28 <p>
29         The canonical source-code tree is available at
30         <a class="ulink" href="https://github.com/harfbuzz/harfbuzz" target="_top">github.com/harfbuzz/harfbuzz</a>.
31         See <a class="xref" href="install-harfbuzz.html#download" title="Downloading HarfBuzz">Downloading HarfBuzz</a> for
32         release tarballs.
33       </p>
34 </div></div>
35 </div>
36 <hr>
37 </div>
38 <div class="toc"><dl class="toc">
39 <dt><span class="part"><a href="pt01.html">I. User's manual</a></span></dt>
40 <dd><dl>
41 <dt><span class="chapter"><a href="what-is-harfbuzz.html">What is HarfBuzz?</a></span></dt>
42 <dd><dl>
43 <dt><span class="section"><a href="what-is-harfbuzz.html#what-is-text-shaping">What is text shaping?</a></span></dt>
44 <dt><span class="section"><a href="why-do-i-need-a-shaping-engine.html">Why do I need a shaping engine?</a></span></dt>
45 <dt><span class="section"><a href="ch01s03.html">What does HarfBuzz do?</a></span></dt>
46 <dt><span class="section"><a href="what-harfbuzz-doesnt-do.html">What HarfBuzz doesn't do</a></span></dt>
47 <dt><span class="section"><a href="why-is-it-called-harfbuzz.html">Why is it called HarfBuzz?</a></span></dt>
48 </dl></dd>
49 <dt><span class="chapter"><a href="install-harfbuzz.html">Installing HarfBuzz</a></span></dt>
50 <dd><dl>
51 <dt><span class="section"><a href="install-harfbuzz.html#download">Downloading HarfBuzz</a></span></dt>
52 <dt><span class="section"><a href="building.html">Building HarfBuzz</a></span></dt>
53 <dd><dl>
54 <dt><span class="section"><a href="building.html#building.linux">Building on Linux</a></span></dt>
55 <dt><span class="section"><a href="building.html#building.windows">Building on Windows</a></span></dt>
56 <dt><span class="section"><a href="building.html#building.macos">Building on macOS</a></span></dt>
57 <dt><span class="section"><a href="building.html#configuration">Configuration options</a></span></dt>
58 </dl></dd>
59 </dl></dd>
60 <dt><span class="chapter"><a href="getting-started.html">Getting started with HarfBuzz</a></span></dt>
61 <dd><dl>
62 <dt><span class="section"><a href="getting-started.html#id-1.2.4.2">An overview of the HarfBuzz shaping API</a></span></dt>
63 <dt><span class="section"><a href="ch03s02.html">Terminology</a></span></dt>
64 <dt><span class="section"><a href="ch03s03.html">A simple shaping example</a></span></dt>
65 </dl></dd>
66 <dt><span class="chapter"><a href="shaping-concepts.html">Shaping concepts</a></span></dt>
67 <dd><dl>
68 <dt><span class="section"><a href="shaping-concepts.html#text-shaping-concepts">Text shaping</a></span></dt>
69 <dt><span class="section"><a href="complex-scripts.html">Complex scripts</a></span></dt>
70 <dt><span class="section"><a href="shaping-operations.html">Shaping operations</a></span></dt>
71 <dt><span class="section"><a href="unicode-character-categories.html">Unicode character categories</a></span></dt>
72 <dt><span class="section"><a href="text-runs.html">Text runs</a></span></dt>
73 <dt><span class="section"><a href="opentype-shaping-models.html">OpenType shaping models</a></span></dt>
74 <dt><span class="section"><a href="graphite-shaping.html">Graphite shaping</a></span></dt>
75 <dt><span class="section"><a href="aat-shaping.html">AAT shaping</a></span></dt>
76 </dl></dd>
77 <dt><span class="chapter"><a href="object-model.html">The HarfBuzz object model</a></span></dt>
78 <dd><dl>
79 <dt><span class="section"><a href="object-model.html#object-model-intro">An overview of data types in HarfBuzz</a></span></dt>
80 <dt><span class="section"><a href="object-model-object-types.html">Objects in HarfBuzz</a></span></dt>
81 <dt><span class="section"><a href="object-model-lifecycle.html">Object lifecycle management</a></span></dt>
82 <dt><span class="section"><a href="object-model-user-data.html">User data</a></span></dt>
83 <dt><span class="section"><a href="object-model-blobs.html">Blobs</a></span></dt>
84 </dl></dd>
85 <dt><span class="chapter"><a href="buffers-language-script-and-direction.html">Buffers, language, script and direction</a></span></dt>
86 <dd><dl>
87 <dt><span class="section"><a href="buffers-language-script-and-direction.html#creating-and-destroying-buffers">Creating and destroying buffers</a></span></dt>
88 <dt><span class="section"><a href="adding-text-to-the-buffer.html">Adding text to the buffer</a></span></dt>
89 <dt><span class="section"><a href="setting-buffer-properties.html">Setting buffer properties</a></span></dt>
90 <dt><span class="section"><a href="customizing-unicode-functions.html">Customizing Unicode functions</a></span></dt>
91 </dl></dd>
92 <dt><span class="chapter"><a href="fonts-and-faces.html">Fonts, faces, and output</a></span></dt>
93 <dd><dl>
94 <dt><span class="section"><a href="fonts-and-faces.html#fonts-and-faces-objects">Font and face objects</a></span></dt>
95 <dt><span class="section"><a href="fonts-and-faces-custom-functions.html">Customizing font functions</a></span></dt>
96 <dt><span class="section"><a href="fonts-and-faces-native-opentype.html">Font objects and HarfBuzz's native OpenType implementation</a></span></dt>
97 <dt><span class="section"><a href="fonts-and-faces-variable.html">Working with OpenType Variable Fonts</a></span></dt>
98 </dl></dd>
99 <dt><span class="chapter"><a href="shaping-and-shape-plans.html">Shaping and shape plans</a></span></dt>
100 <dd><dl>
101 <dt><span class="section"><a href="shaping-and-shape-plans.html#shaping-buffer-output">Shaping and buffer output</a></span></dt>
102 <dt><span class="section"><a href="shaping-opentype-features.html">OpenType features</a></span></dt>
103 <dt><span class="section"><a href="shaping-shaper-selection.html">Shaper selection</a></span></dt>
104 <dt><span class="section"><a href="shaping-plans-and-caching.html">Plans and caching</a></span></dt>
105 </dl></dd>
106 <dt><span class="chapter"><a href="clusters.html">Clusters</a></span></dt>
107 <dd><dl>
108 <dt><span class="section"><a href="clusters.html#clusters-and-shaping">Clusters and shaping</a></span></dt>
109 <dt><span class="section"><a href="working-with-harfbuzz-clusters.html">Working with HarfBuzz clusters</a></span></dt>
110 <dt><span class="section"><a href="a-clustering-example-for-levels-0-and-1.html">A clustering example for levels 0 and 1</a></span></dt>
111 <dt><span class="section"><a href="reordering-in-levels-0-and-1.html">Reordering in levels 0 and 1</a></span></dt>
112 <dt><span class="section"><a href="the-distinction-between-levels-0-and-1.html">The distinction between levels 0 and 1</a></span></dt>
113 <dt><span class="section"><a href="level-2.html">Level 2</a></span></dt>
114 <dd><dl>
115 <dt><span class="section"><a href="level-2.html#ligatures-with-combining-marks-in-level-2">Ligatures with combining marks in level 2</a></span></dt>
116 <dt><span class="section"><a href="level-2.html#reordering-in-level-2">Reordering in level 2</a></span></dt>
117 <dt><span class="section"><a href="level-2.html#other-considerations-in-level-2">Other considerations in level 2</a></span></dt>
118 </dl></dd>
119 </dl></dd>
120 <dt><span class="chapter"><a href="utilities.html">Utilities</a></span></dt>
121 <dd><dl>
122 <dt><span class="section"><a href="utilities.html#utilities-command-line-tools">Command-line tools</a></span></dt>
123 <dd><dl>
124 <dt><span class="section"><a href="utilities.html#utilities-command-line-hbshape">hb-shape</a></span></dt>
125 <dt><span class="section"><a href="utilities.html#utilities-command-line-hbview">hb-view</a></span></dt>
126 <dt><span class="section"><a href="utilities.html#utilities-command-line-hbsubset">hb-subset</a></span></dt>
127 </dl></dd>
128 <dt><span class="section"><a href="utilities-common-types-apis.html">Common data types and APIs</a></span></dt>
129 <dt><span class="section"><a href="utilities-ucdn.html">UCDN</a></span></dt>
130 </dl></dd>
131 <dt><span class="chapter"><a href="integration.html">Platform Integration Guide</a></span></dt>
132 <dd><dl>
133 <dt><span class="section"><a href="integration.html#integration-glib">GNOME integration, GLib, and GObject</a></span></dt>
134 <dt><span class="section"><a href="integration-freetype.html">FreeType integration</a></span></dt>
135 <dt><span class="section"><a href="integration-uniscribe.html">Uniscribe integration</a></span></dt>
136 <dt><span class="section"><a href="integration-coretext.html">Core Text integration</a></span></dt>
137 <dt><span class="section"><a href="integration-icu.html">ICU integration</a></span></dt>
138 <dt><span class="section"><a href="integration-python.html">Python bindings</a></span></dt>
139 </dl></dd>
140 </dl></dd>
141 <dt><span class="part"><a href="pt02.html">II. Reference manual</a></span></dt>
142 <dd><dl>
143 <dt><span class="chapter"><a href="ch12.html">Core API</a></span></dt>
144 <dd><dl>
145 <dt>
146 <span class="refentrytitle"><a href="harfbuzz-hb-blob.html">hb-blob</a></span><span class="refpurpose"> — Binary data containers</span>
147 </dt>
148 <dt>
149 <span class="refentrytitle"><a href="harfbuzz-hb-buffer.html">hb-buffer</a></span><span class="refpurpose"> — Input and output buffers</span>
150 </dt>
151 <dt>
152 <span class="refentrytitle"><a href="harfbuzz-hb-common.html">hb-common</a></span><span class="refpurpose"> — Common data types</span>
153 </dt>
154 <dt>
155 <span class="refentrytitle"><a href="harfbuzz-hb-deprecated.html">hb-deprecated</a></span><span class="refpurpose"> — Deprecated API</span>
156 </dt>
157 <dt>
158 <span class="refentrytitle"><a href="harfbuzz-hb-face.html">hb-face</a></span><span class="refpurpose"> — Font face objects</span>
159 </dt>
160 <dt>
161 <span class="refentrytitle"><a href="harfbuzz-hb-font.html">hb-font</a></span><span class="refpurpose"> — Font objects</span>
162 </dt>
163 <dt>
164 <span class="refentrytitle"><a href="harfbuzz-hb-map.html">hb-map</a></span><span class="refpurpose"> — Object representing integer to integer mapping</span>
165 </dt>
166 <dt>
167 <span class="refentrytitle"><a href="harfbuzz-hb-set.html">hb-set</a></span><span class="refpurpose"> — Object representing a set of integers</span>
168 </dt>
169 <dt>
170 <span class="refentrytitle"><a href="harfbuzz-hb-shape-plan.html">hb-shape-plan</a></span><span class="refpurpose"> — Object representing a shaping plan</span>
171 </dt>
172 <dt>
173 <span class="refentrytitle"><a href="harfbuzz-hb-shape.html">hb-shape</a></span><span class="refpurpose"> — Conversion of text strings into positioned glyphs</span>
174 </dt>
175 <dt>
176 <span class="refentrytitle"><a href="harfbuzz-hb-unicode.html">hb-unicode</a></span><span class="refpurpose"> — Unicode character property access</span>
177 </dt>
178 <dt>
179 <span class="refentrytitle"><a href="harfbuzz-hb-version.html">hb-version</a></span><span class="refpurpose"> — Information about the version of HarfBuzz in use</span>
180 </dt>
181 </dl></dd>
182 <dt><span class="chapter"><a href="ch13.html">OpenType API</a></span></dt>
183 <dd><dl>
184 <dt>
185 <span class="refentrytitle"><a href="harfbuzz-hb-ot-color.html">hb-ot-color</a></span><span class="refpurpose"> — OpenType Color Fonts</span>
186 </dt>
187 <dt>
188 <span class="refentrytitle"><a href="harfbuzz-hb-ot-font.html">hb-ot-font</a></span><span class="refpurpose"> — OpenType font implementation</span>
189 </dt>
190 <dt>
191 <span class="refentrytitle"><a href="harfbuzz-hb-ot-layout.html">hb-ot-layout</a></span><span class="refpurpose"> — OpenType Layout</span>
192 </dt>
193 <dt>
194 <span class="refentrytitle"><a href="harfbuzz-hb-ot-math.html">hb-ot-math</a></span><span class="refpurpose"> — OpenType Math information</span>
195 </dt>
196 <dt>
197 <span class="refentrytitle"><a href="harfbuzz-hb-ot-name.html">hb-ot-name</a></span><span class="refpurpose"> — OpenType font name information</span>
198 </dt>
199 <dt>
200 <span class="refentrytitle"><a href="harfbuzz-hb-ot-shape.html">hb-ot-shape</a></span><span class="refpurpose"> — OpenType shaping support</span>
201 </dt>
202 <dt>
203 <span class="refentrytitle"><a href="harfbuzz-hb-ot-var.html">hb-ot-var</a></span><span class="refpurpose"> — OpenType Font Variations</span>
204 </dt>
205 </dl></dd>
206 <dt><span class="chapter"><a href="ch14.html">Apple Advanced Typography API</a></span></dt>
207 <dd><dl><dt>
208 <span class="refentrytitle"><a href="harfbuzz-hb-aat-layout.html">hb-aat-layout</a></span><span class="refpurpose"> — Apple Advanced Typography Layout</span>
209 </dt></dl></dd>
210 <dt><span class="chapter"><a href="ch15.html">Integration API</a></span></dt>
211 <dd><dl>
212 <dt>
213 <span class="refentrytitle"><a href="harfbuzz-hb-coretext.html">hb-coretext</a></span><span class="refpurpose"> — CoreText integration</span>
214 </dt>
215 <dt>
216 <span class="refentrytitle"><a href="harfbuzz-hb-ft.html">hb-ft</a></span><span class="refpurpose"> — FreeType integration</span>
217 </dt>
218 <dt>
219 <span class="refentrytitle"><a href="harfbuzz-hb-glib.html">hb-glib</a></span><span class="refpurpose"> — GLib integration</span>
220 </dt>
221 <dt>
222 <span class="refentrytitle"><a href="harfbuzz-hb-gobject.html">hb-gobject</a></span><span class="refpurpose"> — GObject integration support</span>
223 </dt>
224 <dt>
225 <span class="refentrytitle"><a href="harfbuzz-hb-graphite2.html">hb-graphite2</a></span><span class="refpurpose"> — Graphite2 integration</span>
226 </dt>
227 <dt>
228 <span class="refentrytitle"><a href="harfbuzz-hb-icu.html">hb-icu</a></span><span class="refpurpose"> — ICU integration</span>
229 </dt>
230 <dt>
231 <span class="refentrytitle"><a href="harfbuzz-hb-uniscribe.html">hb-uniscribe</a></span><span class="refpurpose"> — Windows integration</span>
232 </dt>
233 </dl></dd>
234 <dt><span class="index"><a href="api-index-full.html">API Index</a></span></dt>
235 <dt><span class="glossary"><a href="annotation-glossary.html">Annotation Glossary</a></span></dt>
236 </dl></dd>
237 </dl></div>
238 </div>
239 <div class="footer">
240 <hr>Generated by GTK-Doc V1.32.1</div>
241 </body>
242 </html>