summaryrefslogtreecommitdiff
path: root/docs/harfbuzz-docs.xml
blob: 48ea67e60ea760f058111629997694c3a27d8f67 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
<?xml version="1.0"?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
               "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
  <!ENTITY % local.common.attrib "xmlns:xi  CDATA  #FIXED 'http://www.w3.org/2003/XInclude'">
  <!ENTITY version SYSTEM "version.xml">
]>
<book id="index">
  <bookinfo>
    <title>HarfBuzz Manual</title>
    <abstract>
      <title>HarfBuzz</title>
      <graphic fileref="HarfBuzz.png" format="PNG" align="center"/>
      <para>
        HarfBuzz is an <ulink url="http://www.microsoft.com/typography/otspec/">OpenType</ulink>
        text shaping engine. Using the HarfBuzz library allows
	programs to convert a sequence of Unicode input text into
	properly formatted and positioned output&mdash;for any writing
	system and language.
      </para>

      <para>
	The canonical source-code tree is available at
        <ulink
	    url="http://cgit.freedesktop.org/harfbuzz/">cgit.freedesktop.org/harfbuzz</ulink>
	and at
        <ulink
	    url="https://github.com/harfbuzz/harfbuzz">github.com/harfbuzz/harfbuzz</ulink>. 
        See <xref linkend="download" endterm="download.title"/> for release tarballs.
    </abstract>
  </bookinfo>

  <part>
    <title>User's manual</title>
      <xi:include href="usermanual-what-is-harfbuzz.xml"/>
      <xi:include href="usermanual-install-harfbuzz.xml"/>
      <xi:include href="usermanual-hello-harfbuzz.xml"/>
      <xi:include href="usermanual-buffers-language-script-and-direction.xml"/>
      <xi:include href="usermanual-fonts-and-faces.xml"/>
      <xi:include href="usermanual-clusters.xml"/>
      <xi:include href="usermanual-opentype-features.xml"/>
      <xi:include href="usermanual-glyph-information.xml"/>
  </part>

  <part>
    <partinfo>
      <releaseinfo>
        This document is for HarfBuzz &version;.
        <!--The latest version of this documentation can be found on-line at
        <ulink role="online-location" url="http://[SERVER]/libharfbuzz/index.html">http://[SERVER]/libharfbuzz/</ulink>.-->
      </releaseinfo>
    </partinfo>

    <note>
      <para>
        The current HarfBuzz codebase is versioned 1.x.x and is stable
	and under active maintenance. This is what is used in latest
	versions of Firefox, GNOME, ChromeOS, Chrome, LibreOffice,
	XeTeX, Android, and KDE, among other places. 
      </para>
      <para>
        Prior to 2012, the original HarfBuzz codebase (which, these
	days, is referred to as <emphasis>harfbuzz-old</emphasis>) was 
        derived from code in <ulink
	url="http://freetype.org/">FreeType</ulink>, <ulink
	url="http://pango.org/">Pango</ulink>, and 
        <ulink url="http://qt-project.org/">Qt</ulink>.
        It is <emphasis>not</emphasis> actively developed or
	maintained, and is extremely buggy. All users of harfbuzz-old
	are encouraged to switch over to the new HarfBuzz as soon as possible.
      </para>
      <para>
	To make this distinction clearer in discussions, the current
	HarfBuzz codebase is sometimes referred to as
	<emphasis>harfbuzz-ng</emphasis>.
      </para>
      <para>
	For reference purposes, the harfbuzz-old source tree is archived 
        <ulink
	    url="http://cgit.freedesktop.org/harfbuzz.old/">here</ulink>. There
	are no release tarballs of harfbuzz-old whatsoever.
      </para>
    </note>
      
    <title>Reference manual</title>
      <chapter>
        <title>Core API</title>
        <xi:include href="xml/hb-blob.xml"/>
        <xi:include href="xml/hb-buffer.xml"/>
        <xi:include href="xml/hb-common.xml"/>
        <xi:include href="xml/hb-deprecated.xml"/>
        <xi:include href="xml/hb-face.xml"/>
        <xi:include href="xml/hb-font.xml"/>
        <xi:include href="xml/hb-map.xml"/>
        <xi:include href="xml/hb-set.xml"/>
        <xi:include href="xml/hb-shape-plan.xml"/>
        <xi:include href="xml/hb-shape.xml"/>
        <xi:include href="xml/hb-unicode.xml"/>
        <xi:include href="xml/hb-version.xml"/>
      </chapter>

      <chapter>
        <title>OpenType API</title>
        <xi:include href="xml/hb-ot-color.xml"/>
        <xi:include href="xml/hb-ot-font.xml"/>
        <xi:include href="xml/hb-ot-layout.xml"/>
        <xi:include href="xml/hb-ot-math.xml"/>
        <xi:include href="xml/hb-ot-name.xml"/>
        <xi:include href="xml/hb-ot-shape.xml"/>
        <xi:include href="xml/hb-ot-var.xml"/>
      </chapter>

      <chapter>
        <title>Integration API</title>
        <xi:include href="xml/hb-coretext.xml"/>
        <xi:include href="xml/hb-ft.xml"/>
        <xi:include href="xml/hb-glib.xml"/>
        <xi:include href="xml/hb-gobject.xml"/>
        <xi:include href="xml/hb-graphite2.xml"/>
        <xi:include href="xml/hb-icu.xml"/>
        <xi:include href="xml/hb-uniscribe.xml"/>
      </chapter>

      <!--chapter id="object-tree">
        <title>Object Hierarchy</title>
         <xi:include href="xml/tree_index.sgml"/>
      </chapter-->

      <index id="api-index-full"><title>API Index</title><xi:include href="xml/api-index-full.xml"><xi:fallback /></xi:include></index>
      <index id="deprecated-api-index" role="deprecated"><title>Index of deprecated API</title><xi:include href="xml/api-index-deprecated.xml"><xi:fallback /></xi:include></index>

      <index id="api-index-2-0-0" role="2.0.0"><title>Index of new symbols in 2.0.0</title><xi:include href="xml/api-index-2.0.0.xml"><xi:fallback /></xi:include></index>
      <index id="api-index-1-9-0" role="1.9.0"><title>Index of new symbols in 1.9.0</title><xi:include href="xml/api-index-1.9.0.xml"><xi:fallback /></xi:include></index>
      <index id="api-index-1-8-6" role="1.8.6"><title>Index of new symbols in 1.8.6</title><xi:include href="xml/api-index-1.8.6.xml"><xi:fallback /></xi:include></index>
      <index id="api-index-1-8-5" role="1.8.5"><title>Index of new symbols in 1.8.5</title><xi:include href="xml/api-index-1.8.5.xml"><xi:fallback /></xi:include></index>
      <index id="api-index-1-8-1" role="1.8.1"><title>Index of new symbols in 1.8.1</title><xi:include href="xml/api-index-1.8.1.xml"><xi:fallback /></xi:include></index>
      <index id="api-index-1-8-0" role="1.8.0"><title>Index of new symbols in 1.8.0</title><xi:include href="xml/api-index-1.8.0.xml"><xi:fallback /></xi:include></index>
      <index id="api-index-1-7-7" role="1.7.7"><title>Index of new symbols in 1.7.7</title><xi:include href="xml/api-index-1.7.7.xml"><xi:fallback /></xi:include></index>
      <index id="api-index-1-7-5" role="1.7.5"><title>Index of new symbols in 1.7.5</title><xi:include href="xml/api-index-1.7.5.xml"><xi:fallback /></xi:include></index>
      <index id="api-index-1-6-0" role="1.6.0"><title>Index of new symbols in 1.6.0</title><xi:include href="xml/api-index-1.6.0.xml"><xi:fallback /></xi:include></index>
      <index id="api-index-1-5-0" role="1.5.0"><title>Index of new symbols in 1.5.0</title><xi:include href="xml/api-index-1.5.0.xml"><xi:fallback /></xi:include></index>
      <index id="api-index-1-4-3" role="1.4.3"><title>Index of new symbols in 1.4.3</title><xi:include href="xml/api-index-1.4.3.xml"><xi:fallback /></xi:include></index>
      <index id="api-index-1-4-2" role="1.4.2"><title>Index of new symbols in 1.4.2</title><xi:include href="xml/api-index-1.4.2.xml"><xi:fallback /></xi:include></index>
      <index id="api-index-1-4-0" role="1.4.0"><title>Index of new symbols in 1.4.0</title><xi:include href="xml/api-index-1.4.0.xml"><xi:fallback /></xi:include></index>
      <index id="api-index-1-3-3" role="1.3.3"><title>Index of new symbols in 1.3.3</title><xi:include href="xml/api-index-1.3.3.xml"><xi:fallback /></xi:include></index>
      <index id="api-index-1-2-3" role="1.2.3"><title>Index of new symbols in 1.2.3</title><xi:include href="xml/api-index-1.2.3.xml"><xi:fallback /></xi:include></index>
      <index id="api-index-1-1-3" role="1.1.3"><title>Index of new symbols in 1.1.3</title><xi:include href="xml/api-index-1.1.3.xml"><xi:fallback /></xi:include></index>
      <index id="api-index-1-1-2" role="1.1.2"><title>Index of new symbols in 1.1.2</title><xi:include href="xml/api-index-1.1.2.xml"><xi:fallback /></xi:include></index>
      <index id="api-index-1-0-5" role="1.0.5"><title>Index of new symbols in 1.0.5</title><xi:include href="xml/api-index-1.0.5.xml"><xi:fallback /></xi:include></index>
      <index id="api-index-0-9-42" role="0.9.42"><title>Index of new symbols in 0.9.42</title><xi:include href="xml/api-index-0.9.42.xml"><xi:fallback /></xi:include></index>
      <index id="api-index-0-9-41" role="0.9.41"><title>Index of new symbols in 0.9.41</title><xi:include href="xml/api-index-0.9.41.xml"><xi:fallback /></xi:include></index>
      <index id="api-index-0-9-39" role="0.9.39"><title>Index of new symbols in 0.9.39</title><xi:include href="xml/api-index-0.9.39.xml"><xi:fallback /></xi:include></index>
      <index id="api-index-0-9-38" role="0.9.38"><title>Index of new symbols in 0.9.38</title><xi:include href="xml/api-index-0.9.38.xml"><xi:fallback /></xi:include></index>
      <index id="api-index-0-9-31" role="0.9.31"><title>Index of new symbols in 0.9.31</title><xi:include href="xml/api-index-0.9.31.xml"><xi:fallback /></xi:include></index>
      <index id="api-index-0-9-30" role="0.9.30"><title>Index of new symbols in 0.9.30</title><xi:include href="xml/api-index-0.9.30.xml"><xi:fallback /></xi:include></index>
      <index id="api-index-0-9-28" role="0.9.28"><title>Index of new symbols in 0.9.28</title><xi:include href="xml/api-index-0.9.28.xml"><xi:fallback /></xi:include></index>
      <index id="api-index-0-9-22" role="0.9.22"><title>Index of new symbols in 0.9.22</title><xi:include href="xml/api-index-0.9.22.xml"><xi:fallback /></xi:include></index>
      <index id="api-index-0-9-20" role="0.9.20"><title>Index of new symbols in 0.9.20</title><xi:include href="xml/api-index-0.9.20.xml"><xi:fallback /></xi:include></index>
      <index id="api-index-0-9-11" role="0.9.11"><title>Index of new symbols in 0.9.11</title><xi:include href="xml/api-index-0.9.11.xml"><xi:fallback /></xi:include></index>
      <index id="api-index-0-9-10" role="0.9.10"><title>Index of new symbols in 0.9.10</title><xi:include href="xml/api-index-0.9.10.xml"><xi:fallback /></xi:include></index>
      <index id="api-index-0-9-8" role="0.9.8"><title>Index of new symbols in 0.9.8</title><xi:include href="xml/api-index-0.9.8.xml"><xi:fallback /></xi:include></index>
      <index id="api-index-0-9-7" role="0.9.7"><title>Index of new symbols in 0.9.7</title><xi:include href="xml/api-index-0.9.7.xml"><xi:fallback /></xi:include></index>
      <index id="api-index-0-9-5" role="0.9.5"><title>Index of new symbols in 0.9.5</title><xi:include href="xml/api-index-0.9.5.xml"><xi:fallback /></xi:include></index>
      <index id="api-index-0-9-2" role="0.9.2"><title>Index of new symbols in 0.9.2</title><xi:include href="xml/api-index-0.9.2.xml"><xi:fallback /></xi:include></index>

      <xi:include href="xml/annotation-glossary.xml"><xi:fallback /></xi:include>
  </part>
</book>