Anthony Carrico | f7c72b4 | 2013-02-24 13:00:33 -0500 | [diff] [blame] | 1 | <?xml version="1.0"?> |
| 2 | <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" |
| 3 | "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [ |
| 4 | <!ENTITY % local.common.attrib "xmlns:xi CDATA #FIXED 'http://www.w3.org/2003/XInclude'"> |
| 5 | <!ENTITY version SYSTEM "version.xml"> |
| 6 | ]> |
| 7 | <book id="index"> |
| 8 | <bookinfo> |
Simon Cozens | 01e16e8 | 2015-08-31 10:40:17 +0100 | [diff] [blame] | 9 | <title>HarfBuzz Manual</title> |
Khaled Hosny | 4dc2265 | 2015-12-23 00:26:20 +0400 | [diff] [blame] | 10 | <abstract> |
| 11 | <title>HarfBuzz</title> |
| 12 | <graphic fileref="HarfBuzz.png" format="PNG" align="center"/> |
| 13 | <para> |
| 14 | HarfBuzz is an <ulink url="http://www.microsoft.com/typography/otspec/">OpenType</ulink> |
Nathan Willis | 443f872 | 2018-10-11 15:40:08 -0500 | [diff] [blame] | 15 | text shaping engine. Using the HarfBuzz library allows |
Nathan Willis | 3a27e8f | 2018-10-12 18:23:26 -0500 | [diff] [blame] | 16 | programs to convert a sequence of Unicode input into |
Khaled Hosny | ed5547f | 2018-10-20 15:00:52 +0100 | [diff] [blame] | 17 | properly formatted and positioned glyph output—for any writing |
Nathan Willis | 443f872 | 2018-10-11 15:40:08 -0500 | [diff] [blame] | 18 | system and language. |
Khaled Hosny | 4dc2265 | 2015-12-23 00:26:20 +0400 | [diff] [blame] | 19 | </para> |
Nathan Willis | 443f872 | 2018-10-11 15:40:08 -0500 | [diff] [blame] | 20 | |
Khaled Hosny | 4dc2265 | 2015-12-23 00:26:20 +0400 | [diff] [blame] | 21 | <para> |
Nathan Willis | 443f872 | 2018-10-11 15:40:08 -0500 | [diff] [blame] | 22 | The canonical source-code tree is available at |
| 23 | <ulink |
Nathan Willis | f028da5 | 2018-10-20 15:18:29 +0100 | [diff] [blame] | 24 | url="https://github.com/harfbuzz/harfbuzz">github.com/harfbuzz/harfbuzz</ulink> |
| 25 | and is also available at |
Nathan Willis | 443f872 | 2018-10-11 15:40:08 -0500 | [diff] [blame] | 26 | <ulink |
Nathan Willis | f028da5 | 2018-10-20 15:18:29 +0100 | [diff] [blame] | 27 | url="http://cgit.freedesktop.org/harfbuzz/">cgit.freedesktop.org/harfbuzz</ulink>. |
| 28 | See <xref linkend="download" endterm="download.title"/> for |
| 29 | release tarballs. |
| 30 | </para> |
Khaled Hosny | 4dc2265 | 2015-12-23 00:26:20 +0400 | [diff] [blame] | 31 | </abstract> |
Anthony Carrico | f7c72b4 | 2013-02-24 13:00:33 -0500 | [diff] [blame] | 32 | </bookinfo> |
| 33 | |
Simon Cozens | 01e16e8 | 2015-08-31 10:40:17 +0100 | [diff] [blame] | 34 | <part> |
| 35 | <title>User's manual</title> |
Khaled Hosny | 493a922 | 2015-12-23 00:33:41 +0400 | [diff] [blame] | 36 | <xi:include href="usermanual-what-is-harfbuzz.xml"/> |
Khaled Hosny | d25317f | 2015-12-23 01:29:48 +0400 | [diff] [blame] | 37 | <xi:include href="usermanual-install-harfbuzz.xml"/> |
Nathan Willis | 163ab81 | 2018-10-16 17:48:15 -0500 | [diff] [blame] | 38 | <xi:include href="usermanual-getting-started.xml"/> |
Nathan Willis | 3a27e8f | 2018-10-12 18:23:26 -0500 | [diff] [blame] | 39 | <xi:include href="usermanual-shaping-concepts.xml"/> |
Khaled Hosny | 493a922 | 2015-12-23 00:33:41 +0400 | [diff] [blame] | 40 | <xi:include href="usermanual-buffers-language-script-and-direction.xml"/> |
| 41 | <xi:include href="usermanual-fonts-and-faces.xml"/> |
n8willis | e12fc66 | 2016-01-28 12:14:12 -0600 | [diff] [blame] | 42 | <xi:include href="usermanual-clusters.xml"/> |
Khaled Hosny | 493a922 | 2015-12-23 00:33:41 +0400 | [diff] [blame] | 43 | <xi:include href="usermanual-opentype-features.xml"/> |
| 44 | <xi:include href="usermanual-glyph-information.xml"/> |
Simon Cozens | 01e16e8 | 2015-08-31 10:40:17 +0100 | [diff] [blame] | 45 | </part> |
Anthony Carrico | f7c72b4 | 2013-02-24 13:00:33 -0500 | [diff] [blame] | 46 | |
Simon Cozens | 01e16e8 | 2015-08-31 10:40:17 +0100 | [diff] [blame] | 47 | <part> |
Khaled Hosny | d25317f | 2015-12-23 01:29:48 +0400 | [diff] [blame] | 48 | <partinfo> |
| 49 | <releaseinfo> |
| 50 | This document is for HarfBuzz &version;. |
| 51 | <!--The latest version of this documentation can be found on-line at |
| 52 | <ulink role="online-location" url="http://[SERVER]/libharfbuzz/index.html">http://[SERVER]/libharfbuzz/</ulink>.--> |
| 53 | </releaseinfo> |
| 54 | </partinfo> |
Nathan Willis | 443f872 | 2018-10-11 15:40:08 -0500 | [diff] [blame] | 55 | |
| 56 | <note> |
| 57 | <para> |
Nathan Willis | f028da5 | 2018-10-20 15:18:29 +0100 | [diff] [blame] | 58 | The current HarfBuzz codebase is versioned 2.x.x and is stable |
Nathan Willis | 443f872 | 2018-10-11 15:40:08 -0500 | [diff] [blame] | 59 | and under active maintenance. This is what is used in latest |
| 60 | versions of Firefox, GNOME, ChromeOS, Chrome, LibreOffice, |
| 61 | XeTeX, Android, and KDE, among other places. |
| 62 | </para> |
| 63 | <para> |
| 64 | Prior to 2012, the original HarfBuzz codebase (which, these |
| 65 | days, is referred to as <emphasis>harfbuzz-old</emphasis>) was |
| 66 | derived from code in <ulink |
| 67 | url="http://freetype.org/">FreeType</ulink>, <ulink |
| 68 | url="http://pango.org/">Pango</ulink>, and |
| 69 | <ulink url="http://qt-project.org/">Qt</ulink>. |
| 70 | It is <emphasis>not</emphasis> actively developed or |
| 71 | maintained, and is extremely buggy. All users of harfbuzz-old |
| 72 | are encouraged to switch over to the new HarfBuzz as soon as possible. |
| 73 | </para> |
| 74 | <para> |
| 75 | To make this distinction clearer in discussions, the current |
| 76 | HarfBuzz codebase is sometimes referred to as |
| 77 | <emphasis>harfbuzz-ng</emphasis>. |
| 78 | </para> |
| 79 | <para> |
| 80 | For reference purposes, the harfbuzz-old source tree is archived |
| 81 | <ulink |
| 82 | url="http://cgit.freedesktop.org/harfbuzz.old/">here</ulink>. There |
| 83 | are no release tarballs of harfbuzz-old whatsoever. |
| 84 | </para> |
| 85 | </note> |
| 86 | |
Simon Cozens | 01e16e8 | 2015-08-31 10:40:17 +0100 | [diff] [blame] | 87 | <title>Reference manual</title> |
| 88 | <chapter> |
Behdad Esfahbod | 4740a35 | 2018-10-27 05:07:54 -0700 | [diff] [blame] | 89 | <title>Core API</title> |
Simon Cozens | 01e16e8 | 2015-08-31 10:40:17 +0100 | [diff] [blame] | 90 | <xi:include href="xml/hb-blob.xml"/> |
Behdad Esfahbod | 4740a35 | 2018-10-27 05:07:54 -0700 | [diff] [blame] | 91 | <xi:include href="xml/hb-buffer.xml"/> |
| 92 | <xi:include href="xml/hb-common.xml"/> |
| 93 | <xi:include href="xml/hb-deprecated.xml"/> |
Simon Cozens | 01e16e8 | 2015-08-31 10:40:17 +0100 | [diff] [blame] | 94 | <xi:include href="xml/hb-face.xml"/> |
| 95 | <xi:include href="xml/hb-font.xml"/> |
Behdad Esfahbod | 4740a35 | 2018-10-27 05:07:54 -0700 | [diff] [blame] | 96 | <xi:include href="xml/hb-map.xml"/> |
| 97 | <xi:include href="xml/hb-set.xml"/> |
| 98 | <xi:include href="xml/hb-shape-plan.xml"/> |
Simon Cozens | 01e16e8 | 2015-08-31 10:40:17 +0100 | [diff] [blame] | 99 | <xi:include href="xml/hb-shape.xml"/> |
Behdad Esfahbod | 00cf4e5 | 2018-10-27 04:07:33 -0700 | [diff] [blame] | 100 | <xi:include href="xml/hb-unicode.xml"/> |
Simon Cozens | 01e16e8 | 2015-08-31 10:40:17 +0100 | [diff] [blame] | 101 | <xi:include href="xml/hb-version.xml"/> |
Behdad Esfahbod | 4740a35 | 2018-10-27 05:07:54 -0700 | [diff] [blame] | 102 | </chapter> |
Anthony Carrico | f7c72b4 | 2013-02-24 13:00:33 -0500 | [diff] [blame] | 103 | |
Behdad Esfahbod | 4740a35 | 2018-10-27 05:07:54 -0700 | [diff] [blame] | 104 | <chapter> |
| 105 | <title>OpenType API</title> |
| 106 | <xi:include href="xml/hb-ot-color.xml"/> |
Behdad Esfahbod | d941f66 | 2018-10-27 02:55:52 -0700 | [diff] [blame] | 107 | <xi:include href="xml/hb-ot-font.xml"/> |
Simon Cozens | 01e16e8 | 2015-08-31 10:40:17 +0100 | [diff] [blame] | 108 | <xi:include href="xml/hb-ot-layout.xml"/> |
Behdad Esfahbod | db5ebcf | 2016-09-27 16:42:25 +0200 | [diff] [blame] | 109 | <xi:include href="xml/hb-ot-math.xml"/> |
Behdad Esfahbod | 4740a35 | 2018-10-27 05:07:54 -0700 | [diff] [blame] | 110 | <xi:include href="xml/hb-ot-name.xml"/> |
Behdad Esfahbod | d941f66 | 2018-10-27 02:55:52 -0700 | [diff] [blame] | 111 | <xi:include href="xml/hb-ot-shape.xml"/> |
Behdad Esfahbod | 1d40d72 | 2018-10-27 05:00:42 -0700 | [diff] [blame] | 112 | <xi:include href="xml/hb-ot-var.xml"/> |
Behdad Esfahbod | 4740a35 | 2018-10-27 05:07:54 -0700 | [diff] [blame] | 113 | </chapter> |
Anthony Carrico | f7c72b4 | 2013-02-24 13:00:33 -0500 | [diff] [blame] | 114 | |
Behdad Esfahbod | 4740a35 | 2018-10-27 05:07:54 -0700 | [diff] [blame] | 115 | <chapter> |
Behdad Esfahbod | 926f512 | 2018-11-25 01:14:40 -0500 | [diff] [blame] | 116 | <title>Apple Advanced Typography API</title> |
| 117 | <xi:include href="xml/hb-aat-layout.xml"/> |
| 118 | </chapter> |
| 119 | |
| 120 | <chapter> |
Behdad Esfahbod | 4740a35 | 2018-10-27 05:07:54 -0700 | [diff] [blame] | 121 | <title>Integration API</title> |
| 122 | <xi:include href="xml/hb-coretext.xml"/> |
Simon Cozens | 01e16e8 | 2015-08-31 10:40:17 +0100 | [diff] [blame] | 123 | <xi:include href="xml/hb-ft.xml"/> |
Behdad Esfahbod | 00cf4e5 | 2018-10-27 04:07:33 -0700 | [diff] [blame] | 124 | <xi:include href="xml/hb-glib.xml"/> |
| 125 | <xi:include href="xml/hb-gobject.xml"/> |
Simon Cozens | 01e16e8 | 2015-08-31 10:40:17 +0100 | [diff] [blame] | 126 | <xi:include href="xml/hb-graphite2.xml"/> |
Behdad Esfahbod | 4740a35 | 2018-10-27 05:07:54 -0700 | [diff] [blame] | 127 | <xi:include href="xml/hb-icu.xml"/> |
Simon Cozens | 01e16e8 | 2015-08-31 10:40:17 +0100 | [diff] [blame] | 128 | <xi:include href="xml/hb-uniscribe.xml"/> |
Simon Cozens | 01e16e8 | 2015-08-31 10:40:17 +0100 | [diff] [blame] | 129 | </chapter> |
Behdad Esfahbod | 4740a35 | 2018-10-27 05:07:54 -0700 | [diff] [blame] | 130 | |
| 131 | <!--chapter id="object-tree"> |
Simon Cozens | 01e16e8 | 2015-08-31 10:40:17 +0100 | [diff] [blame] | 132 | <title>Object Hierarchy</title> |
| 133 | <xi:include href="xml/tree_index.sgml"/> |
Behdad Esfahbod | 4740a35 | 2018-10-27 05:07:54 -0700 | [diff] [blame] | 134 | </chapter--> |
Behdad Esfahbod | e7400c0 | 2018-10-26 22:09:17 -0700 | [diff] [blame] | 135 | |
Behdad Esfahbod | 4740a35 | 2018-10-27 05:07:54 -0700 | [diff] [blame] | 136 | <index id="api-index-full"><title>API Index</title><xi:include href="xml/api-index-full.xml"><xi:fallback /></xi:include></index> |
| 137 | <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> |
| 138 | |
Behdad Esfahbod | e5dfffb | 2019-03-25 15:15:37 -0700 | [diff] [blame] | 139 | <index id="api-index-2-2-0" role="2.2.0"><title>Index of new symbols in 2.2.0</title><xi:include href="xml/api-index-2.2.0.xml"><xi:fallback /></xi:include></index> |
Behdad Esfahbod | 1019391 | 2018-10-30 15:52:26 -0700 | [diff] [blame] | 140 | <index id="api-index-2-1-0" role="2.1.0"><title>Index of new symbols in 2.1.0</title><xi:include href="xml/api-index-2.1.0.xml"><xi:fallback /></xi:include></index> |
Behdad Esfahbod | 4740a35 | 2018-10-27 05:07:54 -0700 | [diff] [blame] | 141 | <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> |
| 142 | <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> |
| 143 | <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> |
| 144 | <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> |
| 145 | <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> |
| 146 | <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> |
| 147 | <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> |
| 148 | <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> |
| 149 | <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> |
| 150 | <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> |
| 151 | <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> |
| 152 | <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> |
Behdad Esfahbod | 4740a35 | 2018-10-27 05:07:54 -0700 | [diff] [blame] | 153 | <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> |
| 154 | <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> |
| 155 | <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> |
| 156 | <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> |
| 157 | <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> |
| 158 | <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> |
| 159 | <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> |
| 160 | <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> |
| 161 | <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> |
| 162 | <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> |
| 163 | <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> |
| 164 | <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> |
| 165 | <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> |
| 166 | <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> |
| 167 | <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> |
| 168 | <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> |
| 169 | <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> |
| 170 | <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> |
| 171 | <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> |
| 172 | <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> |
Simon Cozens | 01e16e8 | 2015-08-31 10:40:17 +0100 | [diff] [blame] | 173 | |
| 174 | <xi:include href="xml/annotation-glossary.xml"><xi:fallback /></xi:include> |
| 175 | </part> |
Anthony Carrico | f7c72b4 | 2013-02-24 13:00:33 -0500 | [diff] [blame] | 176 | </book> |