pango 2.2.5-x86-mingw32 → 3.0.0-x86-mingw32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (232) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +19 -3
  3. data/ext/pango/depend +0 -1
  4. data/ext/pango/extconf.rb +0 -2
  5. data/ext/pango/rbpango.c +44 -6
  6. data/ext/pango/rbpango.h +0 -1
  7. data/ext/pango/rbpangoattribute.c +2 -2
  8. data/ext/pango/rbpangocairo.c +4 -4
  9. data/ext/pango/rbpangocontext.c +2 -2
  10. data/ext/pango/rbpangofontdescription.c +2 -2
  11. data/ext/pango/rbpangogravity.c +2 -2
  12. data/ext/pango/rbpangolanguage.c +8 -0
  13. data/ext/pango/rbpangolayout.c +15 -4
  14. data/ext/pango/rbpangomatrix.c +2 -2
  15. data/ext/pango/rbpangoscript.c +3 -3
  16. data/lib/2.0/pango.so +0 -0
  17. data/lib/2.1/pango.so +0 -0
  18. data/lib/2.2/pango.so +0 -0
  19. data/test/test-language.rb +5 -0
  20. data/test/test-layout.rb +7 -1
  21. data/vendor/local/bin/derb.exe +0 -0
  22. data/vendor/local/bin/genbrk.exe +0 -0
  23. data/vendor/local/bin/genccode.exe +0 -0
  24. data/vendor/local/bin/gencfu.exe +0 -0
  25. data/vendor/local/bin/gencmn.exe +0 -0
  26. data/vendor/local/bin/gencnval.exe +0 -0
  27. data/vendor/local/bin/gendict.exe +0 -0
  28. data/vendor/local/bin/gennorm2.exe +0 -0
  29. data/vendor/local/bin/genrb.exe +0 -0
  30. data/vendor/local/bin/gensprep.exe +0 -0
  31. data/vendor/local/bin/hb-ot-shape-closure.exe +0 -0
  32. data/vendor/local/bin/hb-shape.exe +0 -0
  33. data/vendor/local/bin/hb-view.exe +0 -0
  34. data/vendor/local/bin/icu-config +6 -6
  35. data/vendor/local/bin/icuinfo.exe +0 -0
  36. data/vendor/local/bin/icupkg.exe +0 -0
  37. data/vendor/local/bin/libharfbuzz-0.dll +0 -0
  38. data/vendor/local/bin/libpango-1.0-0.dll +0 -0
  39. data/vendor/local/bin/libpangocairo-1.0-0.dll +0 -0
  40. data/vendor/local/bin/libpangoft2-1.0-0.dll +0 -0
  41. data/vendor/local/bin/libpangowin32-1.0-0.dll +0 -0
  42. data/vendor/local/bin/makeconv.exe +0 -0
  43. data/vendor/local/bin/pango-querymodules.exe +0 -0
  44. data/vendor/local/bin/pango-view.exe +0 -0
  45. data/vendor/local/bin/pkgdata.exe +0 -0
  46. data/vendor/local/bin/uconv.exe +0 -0
  47. data/vendor/local/etc/pango/pango.modules +1 -1
  48. data/vendor/local/include/harfbuzz/hb-buffer.h +26 -1
  49. data/vendor/local/include/harfbuzz/hb-common.h +7 -0
  50. data/vendor/local/include/harfbuzz/hb-font.h +7 -6
  51. data/vendor/local/include/harfbuzz/hb-ft.h +58 -1
  52. data/vendor/local/include/harfbuzz/hb-glib.h +3 -0
  53. data/vendor/local/include/harfbuzz/hb-ot-font.h +4 -0
  54. data/vendor/local/include/harfbuzz/hb-shape.h +0 -3
  55. data/vendor/local/include/harfbuzz/hb-unicode.h +28 -3
  56. data/vendor/local/include/harfbuzz/hb-version.h +4 -4
  57. data/vendor/local/include/layout/LEFontInstance.h +2 -28
  58. data/vendor/local/include/layout/LETableReference.h +7 -2
  59. data/vendor/local/include/unicode/calendar.h +32 -2
  60. data/vendor/local/include/unicode/coll.h +9 -7
  61. data/vendor/local/include/unicode/datefmt.h +102 -13
  62. data/vendor/local/include/unicode/dcfmtsym.h +4 -2
  63. data/vendor/local/include/unicode/decimfmt.h +4 -5
  64. data/vendor/local/include/unicode/dtfmtsym.h +60 -1
  65. data/vendor/local/include/unicode/dtptngen.h +21 -7
  66. data/vendor/local/include/unicode/localpointer.h +49 -1
  67. data/vendor/local/include/unicode/locid.h +2 -3
  68. data/vendor/local/include/unicode/measfmt.h +30 -37
  69. data/vendor/local/include/unicode/measunit.h +65 -152
  70. data/vendor/local/include/unicode/measure.h +3 -3
  71. data/vendor/local/include/unicode/numfmt.h +3 -5
  72. data/vendor/local/include/unicode/platform.h +12 -2
  73. data/vendor/local/include/unicode/plurrule.h +18 -14
  74. data/vendor/local/include/unicode/rbnf.h +3 -4
  75. data/vendor/local/include/unicode/regex.h +42 -26
  76. data/vendor/local/include/unicode/region.h +9 -9
  77. data/vendor/local/include/unicode/reldatefmt.h +50 -45
  78. data/vendor/local/include/unicode/scientificnumberformatter.h +222 -0
  79. data/vendor/local/include/unicode/smpdtfmt.h +30 -24
  80. data/vendor/local/include/unicode/tblcoll.h +5 -4
  81. data/vendor/local/include/unicode/timezone.h +18 -1
  82. data/vendor/local/include/unicode/ucal.h +2 -2
  83. data/vendor/local/include/unicode/ucol.h +22 -18
  84. data/vendor/local/include/unicode/uconfig.h +17 -2
  85. data/vendor/local/include/unicode/udat.h +164 -56
  86. data/vendor/local/include/unicode/udatpg.h +9 -7
  87. data/vendor/local/include/unicode/ufieldpositer.h +121 -0
  88. data/vendor/local/include/unicode/uidna.h +21 -13
  89. data/vendor/local/include/unicode/ulistformatter.h +130 -0
  90. data/vendor/local/include/unicode/ulocdata.h +4 -3
  91. data/vendor/local/include/unicode/unistr.h +101 -53
  92. data/vendor/local/include/unicode/unum.h +7 -10
  93. data/vendor/local/include/unicode/uregex.h +52 -29
  94. data/vendor/local/include/unicode/urename.h +14 -3
  95. data/vendor/local/include/unicode/uscript.h +30 -16
  96. data/vendor/local/include/unicode/uspoof.h +13 -9
  97. data/vendor/local/include/unicode/utrans.h +5 -7
  98. data/vendor/local/include/unicode/utypes.h +9 -3
  99. data/vendor/local/include/unicode/uvernum.h +8 -8
  100. data/vendor/local/lib/icu/{54.1 → 55.1}/Makefile.inc +5 -5
  101. data/vendor/local/lib/icu/{54.1 → 55.1}/pkgdata.inc +1 -1
  102. data/vendor/local/lib/icu/Makefile.inc +5 -5
  103. data/vendor/local/lib/icu/pkgdata.inc +1 -1
  104. data/vendor/local/lib/icudt.dll +0 -0
  105. data/vendor/local/lib/{icudt54.dll → icudt55.dll} +0 -0
  106. data/vendor/local/lib/icuin.dll +0 -0
  107. data/vendor/local/lib/icuin55.dll +0 -0
  108. data/vendor/local/lib/icuio.dll +0 -0
  109. data/vendor/local/lib/icuio55.dll +0 -0
  110. data/vendor/local/lib/icule.dll +0 -0
  111. data/vendor/local/lib/icule55.dll +0 -0
  112. data/vendor/local/lib/iculx.dll +0 -0
  113. data/vendor/local/lib/iculx55.dll +0 -0
  114. data/vendor/local/lib/icutest.dll +0 -0
  115. data/vendor/local/lib/icutest55.dll +0 -0
  116. data/vendor/local/lib/icutu.dll +0 -0
  117. data/vendor/local/lib/icutu55.dll +0 -0
  118. data/vendor/local/lib/icuuc.dll +0 -0
  119. data/vendor/local/lib/icuuc55.dll +0 -0
  120. data/vendor/local/lib/libharfbuzz-icu.a +0 -0
  121. data/vendor/local/lib/libharfbuzz-icu.la +7 -7
  122. data/vendor/local/lib/libharfbuzz.dll.a +0 -0
  123. data/vendor/local/lib/libharfbuzz.la +7 -7
  124. data/vendor/local/lib/libicudt.dll.a +0 -0
  125. data/vendor/local/lib/libicuin.dll.a +0 -0
  126. data/vendor/local/lib/libicuio.dll.a +0 -0
  127. data/vendor/local/lib/libicule.dll.a +0 -0
  128. data/vendor/local/lib/libiculx.dll.a +0 -0
  129. data/vendor/local/lib/libicutest.dll.a +0 -0
  130. data/vendor/local/lib/libicutu.dll.a +0 -0
  131. data/vendor/local/lib/libicuuc.dll.a +0 -0
  132. data/vendor/local/lib/libpango-1.0.dll.a +0 -0
  133. data/vendor/local/lib/libpango-1.0.la +2 -2
  134. data/vendor/local/lib/libpangocairo-1.0.dll.a +0 -0
  135. data/vendor/local/lib/libpangocairo-1.0.la +1 -1
  136. data/vendor/local/lib/libpangoft2-1.0.dll.a +0 -0
  137. data/vendor/local/lib/libpangoft2-1.0.la +2 -2
  138. data/vendor/local/lib/libpangowin32-1.0.dll.a +0 -0
  139. data/vendor/local/lib/libpangowin32-1.0.la +2 -2
  140. data/vendor/local/lib/pango/1.8.0/modules/pango-arabic-lang.dll +0 -0
  141. data/vendor/local/lib/pango/1.8.0/modules/pango-arabic-lang.dll.a +0 -0
  142. data/vendor/local/lib/pango/1.8.0/modules/pango-arabic-lang.la +2 -2
  143. data/vendor/local/lib/pango/1.8.0/modules/pango-basic-fc.dll +0 -0
  144. data/vendor/local/lib/pango/1.8.0/modules/pango-basic-fc.dll.a +0 -0
  145. data/vendor/local/lib/pango/1.8.0/modules/pango-basic-fc.la +2 -2
  146. data/vendor/local/lib/pango/1.8.0/modules/pango-basic-win32.dll +0 -0
  147. data/vendor/local/lib/pango/1.8.0/modules/pango-basic-win32.dll.a +0 -0
  148. data/vendor/local/lib/pango/1.8.0/modules/pango-basic-win32.la +2 -2
  149. data/vendor/local/lib/pango/1.8.0/modules/pango-indic-lang.dll +0 -0
  150. data/vendor/local/lib/pango/1.8.0/modules/pango-indic-lang.dll.a +0 -0
  151. data/vendor/local/lib/pango/1.8.0/modules/pango-indic-lang.la +2 -2
  152. data/vendor/local/lib/pkgconfig/harfbuzz-icu.pc +1 -1
  153. data/vendor/local/lib/pkgconfig/harfbuzz.pc +3 -1
  154. data/vendor/local/lib/pkgconfig/icu-i18n.pc +5 -5
  155. data/vendor/local/lib/pkgconfig/icu-io.pc +5 -5
  156. data/vendor/local/lib/pkgconfig/icu-le.pc +5 -5
  157. data/vendor/local/lib/pkgconfig/icu-lx.pc +5 -5
  158. data/vendor/local/lib/pkgconfig/icu-uc.pc +5 -5
  159. data/vendor/local/share/gtk-doc/html/harfbuzz/adding-text-to-the-buffer.html +35 -0
  160. data/vendor/local/share/gtk-doc/html/harfbuzz/annotation-glossary.html +30 -35
  161. data/vendor/local/share/gtk-doc/html/harfbuzz/api-index-full.html +158 -27
  162. data/vendor/local/share/gtk-doc/html/harfbuzz/buffers-language-script-and-direction.html +87 -0
  163. data/vendor/local/share/gtk-doc/html/harfbuzz/{ch01.html → ch06.html} +12 -13
  164. data/vendor/local/share/gtk-doc/html/harfbuzz/customizing-unicode-functions.html +31 -0
  165. data/vendor/local/share/gtk-doc/html/harfbuzz/deprecated-api-index.html +7 -8
  166. data/vendor/local/share/gtk-doc/html/harfbuzz/fonts-and-faces.html +40 -0
  167. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-Shaping.html +352 -0
  168. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-blob.html +88 -47
  169. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-buffer.html +128 -204
  170. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-common.html +290 -304
  171. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-coretext.html +14 -23
  172. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-deprecated.html +14 -17
  173. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-face.html +40 -51
  174. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-font.html +126 -190
  175. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-ft.html +19 -24
  176. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-glib.html +14 -29
  177. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-gobject.html +438 -11
  178. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-graphite2.html +14 -25
  179. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-icu.html +14 -29
  180. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-ot-layout.html +19 -160
  181. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-ot-tag.html +21 -36
  182. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-ot.html +14 -11
  183. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-set.html +70 -81
  184. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-shape-plan.html +33 -44
  185. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-unicode.html +290 -323
  186. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-uniscribe.html +14 -23
  187. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-version.html +59 -27
  188. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb.html +16 -13
  189. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz.devhelp2 +415 -104
  190. data/vendor/local/share/gtk-doc/html/harfbuzz/hello-harfbuzz.html +181 -0
  191. data/vendor/local/share/gtk-doc/html/harfbuzz/index.html +43 -12
  192. data/vendor/local/share/gtk-doc/html/harfbuzz/object-tree.html +11 -13
  193. data/vendor/local/share/gtk-doc/html/harfbuzz/plans-and-caching.html +31 -0
  194. data/vendor/local/share/gtk-doc/html/harfbuzz/pt01.html +70 -0
  195. data/vendor/local/share/gtk-doc/html/harfbuzz/pt02.html +107 -0
  196. data/vendor/local/share/gtk-doc/html/harfbuzz/setting-buffer-properties.html +31 -0
  197. data/vendor/local/share/gtk-doc/html/harfbuzz/shaping-and-shape-plans.html +39 -0
  198. data/vendor/local/share/gtk-doc/html/harfbuzz/style.css +9 -6
  199. data/vendor/local/share/gtk-doc/html/harfbuzz/using-harfbuzzs-native-opentype-implementation.html +31 -0
  200. data/vendor/local/share/gtk-doc/html/harfbuzz/using-your-own-font-functions.html +31 -0
  201. data/vendor/local/share/gtk-doc/html/harfbuzz/what-about-the-other-scripts.html +31 -0
  202. data/vendor/local/share/gtk-doc/html/harfbuzz/what-is-harfbuzz.html +124 -0
  203. data/vendor/local/share/gtk-doc/html/harfbuzz/why-is-it-called-harfbuzz.html +38 -0
  204. data/vendor/local/share/icu/{54.1 → 55.1}/config/mh-mingw +0 -0
  205. data/vendor/local/share/icu/{54.1 → 55.1}/install-sh +0 -0
  206. data/vendor/local/share/icu/{54.1 → 55.1}/license.html +3 -4
  207. data/vendor/local/share/icu/{54.1 → 55.1}/mkinstalldirs +0 -0
  208. data/vendor/local/share/man/man1/derb.1 +2 -2
  209. data/vendor/local/share/man/man1/genbrk.1 +2 -2
  210. data/vendor/local/share/man/man1/gencfu.1 +1 -1
  211. data/vendor/local/share/man/man1/gencnval.1 +3 -3
  212. data/vendor/local/share/man/man1/gendict.1 +2 -2
  213. data/vendor/local/share/man/man1/genrb.1 +3 -3
  214. data/vendor/local/share/man/man1/icu-config.1 +2 -2
  215. data/vendor/local/share/man/man1/makeconv.1 +3 -3
  216. data/vendor/local/share/man/man1/pkgdata.1 +2 -2
  217. data/vendor/local/share/man/man1/uconv.1 +2 -2
  218. data/vendor/local/share/man/man8/genccode.8 +2 -2
  219. data/vendor/local/share/man/man8/gencmn.8 +3 -3
  220. data/vendor/local/share/man/man8/gensprep.8 +3 -3
  221. data/vendor/local/share/man/man8/icupkg.8 +1 -1
  222. metadata +38 -22
  223. data/vendor/local/include/unicode/scientificformathelper.h +0 -139
  224. data/vendor/local/lib/icuin54.dll +0 -0
  225. data/vendor/local/lib/icuio54.dll +0 -0
  226. data/vendor/local/lib/icule54.dll +0 -0
  227. data/vendor/local/lib/iculx54.dll +0 -0
  228. data/vendor/local/lib/icutest54.dll +0 -0
  229. data/vendor/local/lib/icutu54.dll +0 -0
  230. data/vendor/local/lib/icuuc54.dll +0 -0
  231. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-shape.html +0 -286
  232. data/vendor/local/share/gtk-doc/html/harfbuzz/index.sgml +0 -496
@@ -0,0 +1,352 @@
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>Shaping: HarfBuzz Manual</title>
6
+ <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
7
+ <link rel="home" href="index.html" title="HarfBuzz Manual">
8
+ <link rel="up" href="ch06.html" title="Harfbuzz API">
9
+ <link rel="prev" href="harfbuzz-hb-font.html" title="hb-font">
10
+ <link rel="next" href="harfbuzz-hb-version.html" title="hb-version">
11
+ <meta name="generator" content="GTK-Doc V1.24.1 (XML mode)">
12
+ <link rel="stylesheet" href="style.css" type="text/css">
13
+ </head>
14
+ <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
15
+ <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
16
+ <td width="100%" align="left" class="shortcuts">
17
+ <a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
18
+ <a href="#harfbuzz-Shaping.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
19
+ <a href="#harfbuzz-Shaping.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
20
+ </td>
21
+ <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
22
+ <td><a accesskey="u" href="ch06.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
23
+ <td><a accesskey="p" href="harfbuzz-hb-font.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
24
+ <td><a accesskey="n" href="harfbuzz-hb-version.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
25
+ </tr></table>
26
+ <div class="refentry">
27
+ <a name="harfbuzz-Shaping"></a><div class="titlepage"></div>
28
+ <div class="refnamediv"><table width="100%"><tr>
29
+ <td valign="top">
30
+ <h2><span class="refentrytitle"><a name="harfbuzz-Shaping.top_of_page"></a>Shaping</span></h2>
31
+ <p>Shaping — Conversion of text strings into positioned glyphs</p>
32
+ </td>
33
+ <td class="gallery_image" valign="top" align="right"></td>
34
+ </tr></table></div>
35
+ <div class="refsect1">
36
+ <a name="harfbuzz-Shaping.functions"></a><h2>Functions</h2>
37
+ <div class="informaltable"><table width="100%" border="0">
38
+ <colgroup>
39
+ <col width="150px" class="functions_return">
40
+ <col class="functions_name">
41
+ </colgroup>
42
+ <tbody>
43
+ <tr>
44
+ <td class="function_type">
45
+ <a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
46
+ </td>
47
+ <td class="function_name">
48
+ <a class="link" href="harfbuzz-Shaping.html#hb-feature-from-string" title="hb_feature_from_string ()">hb_feature_from_string</a> <span class="c_punctuation">()</span>
49
+ </td>
50
+ </tr>
51
+ <tr>
52
+ <td class="function_type">
53
+ <span class="returnvalue">void</span>
54
+ </td>
55
+ <td class="function_name">
56
+ <a class="link" href="harfbuzz-Shaping.html#hb-feature-to-string" title="hb_feature_to_string ()">hb_feature_to_string</a> <span class="c_punctuation">()</span>
57
+ </td>
58
+ </tr>
59
+ <tr>
60
+ <td class="function_type">
61
+ <span class="returnvalue">void</span>
62
+ </td>
63
+ <td class="function_name">
64
+ <a class="link" href="harfbuzz-Shaping.html#hb-shape" title="hb_shape ()">hb_shape</a> <span class="c_punctuation">()</span>
65
+ </td>
66
+ </tr>
67
+ <tr>
68
+ <td class="function_type">
69
+ <a class="link" href="harfbuzz-hb-common.html#hb-bool-t" title="hb_bool_t"><span class="returnvalue">hb_bool_t</span></a>
70
+ </td>
71
+ <td class="function_name">
72
+ <a class="link" href="harfbuzz-Shaping.html#hb-shape-full" title="hb_shape_full ()">hb_shape_full</a> <span class="c_punctuation">()</span>
73
+ </td>
74
+ </tr>
75
+ <tr>
76
+ <td class="function_type">const <span class="returnvalue">char</span> **
77
+ </td>
78
+ <td class="function_name">
79
+ <a class="link" href="harfbuzz-Shaping.html#hb-shape-list-shapers" title="hb_shape_list_shapers ()">hb_shape_list_shapers</a> <span class="c_punctuation">()</span>
80
+ </td>
81
+ </tr>
82
+ </tbody>
83
+ </table></div>
84
+ </div>
85
+ <a name="hb-feature-t"></a><div class="refsect1">
86
+ <a name="harfbuzz-Shaping.other"></a><h2>Types and Values</h2>
87
+ <div class="informaltable"><table width="100%" border="0">
88
+ <colgroup>
89
+ <col width="150px" class="name">
90
+ <col class="description">
91
+ </colgroup>
92
+ <tbody><tr>
93
+ <td class="datatype_keyword"> </td>
94
+ <td class="function_name"><a class="link" href="harfbuzz-Shaping.html#hb-feature-t-struct" title="hb_feature_t">hb_feature_t</a></td>
95
+ </tr></tbody>
96
+ </table></div>
97
+ </div>
98
+ <div class="refsect1">
99
+ <a name="harfbuzz-Shaping.object-hierarchy"></a><h2>Object Hierarchy</h2>
100
+ <pre class="screen"> <a href="/home/behdad/.local/share/gtk-doc/html/gobject/gobject-Boxed-Types.html">GBoxed</a>
101
+ <span class="lineart">╰──</span> hb_feature_t
102
+ </pre>
103
+ </div>
104
+ <div class="refsect1">
105
+ <a name="harfbuzz-Shaping.includes"></a><h2>Includes</h2>
106
+ <pre class="synopsis">#include &lt;hb.h&gt;
107
+ </pre>
108
+ </div>
109
+ <div class="refsect1">
110
+ <a name="harfbuzz-Shaping.description"></a><h2>Description</h2>
111
+ <p>Shaping is the central operation of HarfBuzz. Shaping operates on buffers,
112
+ which are sequences of Unicode characters that use the same font and have
113
+ the same text direction, script and language. After shaping the buffer
114
+ contains the output glyphs and their positions.</p>
115
+ </div>
116
+ <div class="refsect1">
117
+ <a name="harfbuzz-Shaping.functions_details"></a><h2>Functions</h2>
118
+ <div class="refsect2">
119
+ <a name="hb-feature-from-string"></a><h3>hb_feature_from_string ()</h3>
120
+ <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>
121
+ hb_feature_from_string (<em class="parameter"><code>const <span class="type">char</span> *str</code></em>,
122
+ <em class="parameter"><code><span class="type">int</span> len</code></em>,
123
+ <em class="parameter"><code><a class="link" href="harfbuzz-Shaping.html#hb-feature-t"><span class="type">hb_feature_t</span></a> *feature</code></em>);</pre>
124
+ <p>Parses a string into a <a class="link" href="harfbuzz-Shaping.html#hb-feature-t"><span class="type">hb_feature_t</span></a>. If <em class="parameter"><code>len</code></em>
125
+ is -1 then <em class="parameter"><code>str</code></em>
126
+ is
127
+ <code class="literal">NULL</code>-terminated.</p>
128
+ <div class="refsect3">
129
+ <a name="id-1.3.2.9.9.2.5"></a><h4>Parameters</h4>
130
+ <div class="informaltable"><table width="100%" border="0">
131
+ <colgroup>
132
+ <col width="150px" class="parameters_name">
133
+ <col class="parameters_description">
134
+ <col width="200px" class="parameters_annotations">
135
+ </colgroup>
136
+ <tbody>
137
+ <tr>
138
+ <td class="parameter_name"><p>str</p></td>
139
+ <td class="parameter_description"><p> a string to parse. </p></td>
140
+ <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=len][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> uint8_t]</span></td>
141
+ </tr>
142
+ <tr>
143
+ <td class="parameter_name"><p>len</p></td>
144
+ <td class="parameter_description"><p>length of <em class="parameter"><code>str</code></em>
145
+ , or -1 if string is nul-terminated</p></td>
146
+ <td class="parameter_annotations"> </td>
147
+ </tr>
148
+ <tr>
149
+ <td class="parameter_name"><p>feature</p></td>
150
+ <td class="parameter_description"><p> the <a class="link" href="harfbuzz-Shaping.html#hb-feature-t"><span class="type">hb_feature_t</span></a> to initialize with the parsed values. </p></td>
151
+ <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>
152
+ </tr>
153
+ </tbody>
154
+ </table></div>
155
+ </div>
156
+ <div class="refsect3">
157
+ <a name="id-1.3.2.9.9.2.6"></a><h4>Returns</h4>
158
+ <p> <code class="literal">TRUE</code> if <em class="parameter"><code>str</code></em>
159
+ is successfully parsed, <code class="literal">FALSE</code> otherwise</p>
160
+ <p></p>
161
+ </div>
162
+ <p class="since">Since 0.9.5</p>
163
+ </div>
164
+ <hr>
165
+ <div class="refsect2">
166
+ <a name="hb-feature-to-string"></a><h3>hb_feature_to_string ()</h3>
167
+ <pre class="programlisting"><span class="returnvalue">void</span>
168
+ hb_feature_to_string (<em class="parameter"><code><a class="link" href="harfbuzz-Shaping.html#hb-feature-t"><span class="type">hb_feature_t</span></a> *feature</code></em>,
169
+ <em class="parameter"><code><span class="type">char</span> *buf</code></em>,
170
+ <em class="parameter"><code>unsigned <span class="type">int</span> size</code></em>);</pre>
171
+ <p>Converts a <a class="link" href="harfbuzz-Shaping.html#hb-feature-t"><span class="type">hb_feature_t</span></a> into a <code class="literal">NULL</code>-terminated string in the format
172
+ understood by <a class="link" href="harfbuzz-Shaping.html#hb-feature-from-string" title="hb_feature_from_string ()"><code class="function">hb_feature_from_string()</code></a>. The client in responsible for
173
+ allocating big enough size for <em class="parameter"><code>buf</code></em>
174
+ , 128 bytes is more than enough.</p>
175
+ <div class="refsect3">
176
+ <a name="id-1.3.2.9.9.3.5"></a><h4>Parameters</h4>
177
+ <div class="informaltable"><table width="100%" border="0">
178
+ <colgroup>
179
+ <col width="150px" class="parameters_name">
180
+ <col class="parameters_description">
181
+ <col width="200px" class="parameters_annotations">
182
+ </colgroup>
183
+ <tbody>
184
+ <tr>
185
+ <td class="parameter_name"><p>feature</p></td>
186
+ <td class="parameter_description"><p>an <a class="link" href="harfbuzz-Shaping.html#hb-feature-t"><span class="type">hb_feature_t</span></a> to convert</p></td>
187
+ <td class="parameter_annotations"> </td>
188
+ </tr>
189
+ <tr>
190
+ <td class="parameter_name"><p>buf</p></td>
191
+ <td class="parameter_description"><p> output string. </p></td>
192
+ <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=size][<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
193
+ </tr>
194
+ <tr>
195
+ <td class="parameter_name"><p>size</p></td>
196
+ <td class="parameter_description"><p>the allocated size of <em class="parameter"><code>buf</code></em>
197
+ </p></td>
198
+ <td class="parameter_annotations"> </td>
199
+ </tr>
200
+ </tbody>
201
+ </table></div>
202
+ </div>
203
+ <p class="since">Since 0.9.5</p>
204
+ </div>
205
+ <hr>
206
+ <div class="refsect2">
207
+ <a name="hb-shape"></a><h3>hb_shape ()</h3>
208
+ <pre class="programlisting"><span class="returnvalue">void</span>
209
+ hb_shape (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>,
210
+ <em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
211
+ <em class="parameter"><code>const <a class="link" href="harfbuzz-Shaping.html#hb-feature-t"><span class="type">hb_feature_t</span></a> *features</code></em>,
212
+ <em class="parameter"><code>unsigned <span class="type">int</span> num_features</code></em>);</pre>
213
+ <p>Shapes <em class="parameter"><code>buffer</code></em>
214
+ using <em class="parameter"><code>font</code></em>
215
+ turning its Unicode characters content to
216
+ positioned glyphs. If <em class="parameter"><code>features</code></em>
217
+ is not <code class="literal">NULL</code>, it will be used to control the
218
+ features applied during shaping.</p>
219
+ <div class="refsect3">
220
+ <a name="id-1.3.2.9.9.4.5"></a><h4>Parameters</h4>
221
+ <div class="informaltable"><table width="100%" border="0">
222
+ <colgroup>
223
+ <col width="150px" class="parameters_name">
224
+ <col class="parameters_description">
225
+ <col width="200px" class="parameters_annotations">
226
+ </colgroup>
227
+ <tbody>
228
+ <tr>
229
+ <td class="parameter_name"><p>font</p></td>
230
+ <td class="parameter_description"><p>an <a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> to use for shaping</p></td>
231
+ <td class="parameter_annotations"> </td>
232
+ </tr>
233
+ <tr>
234
+ <td class="parameter_name"><p>buffer</p></td>
235
+ <td class="parameter_description"><p>an <a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> to shape</p></td>
236
+ <td class="parameter_annotations"> </td>
237
+ </tr>
238
+ <tr>
239
+ <td class="parameter_name"><p>features</p></td>
240
+ <td class="parameter_description"><p> an array of user
241
+ specified <a class="link" href="harfbuzz-Shaping.html#hb-feature-t"><span class="type">hb_feature_t</span></a> or <code class="literal">NULL</code>. </p></td>
242
+ <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=num_features][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
243
+ </tr>
244
+ <tr>
245
+ <td class="parameter_name"><p>num_features</p></td>
246
+ <td class="parameter_description"><p>the length of <em class="parameter"><code>features</code></em>
247
+ array</p></td>
248
+ <td class="parameter_annotations"> </td>
249
+ </tr>
250
+ </tbody>
251
+ </table></div>
252
+ </div>
253
+ <div class="refsect3">
254
+ <a name="id-1.3.2.9.9.4.6"></a><h4>Returns</h4>
255
+ <p> <code class="literal">FALSE</code> if all shapers failed, <code class="literal">TRUE</code> otherwise</p>
256
+ <p></p>
257
+ </div>
258
+ <p class="since">Since 1.0</p>
259
+ </div>
260
+ <hr>
261
+ <div class="refsect2">
262
+ <a name="hb-shape-full"></a><h3>hb_shape_full ()</h3>
263
+ <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>
264
+ hb_shape_full (<em class="parameter"><code><a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> *font</code></em>,
265
+ <em class="parameter"><code><a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> *buffer</code></em>,
266
+ <em class="parameter"><code>const <a class="link" href="harfbuzz-Shaping.html#hb-feature-t"><span class="type">hb_feature_t</span></a> *features</code></em>,
267
+ <em class="parameter"><code>unsigned <span class="type">int</span> num_features</code></em>,
268
+ <em class="parameter"><code>const <span class="type">char</span> * const *shaper_list</code></em>);</pre>
269
+ <p>See <a class="link" href="harfbuzz-Shaping.html#hb-shape" title="hb_shape ()"><code class="function">hb_shape()</code></a> for details. If <em class="parameter"><code>shaper_list</code></em>
270
+ is not <code class="literal">NULL</code>, the specified
271
+ shapers will be used in the given order, otherwise the default shapers list
272
+ will be used.</p>
273
+ <div class="refsect3">
274
+ <a name="id-1.3.2.9.9.5.5"></a><h4>Parameters</h4>
275
+ <div class="informaltable"><table width="100%" border="0">
276
+ <colgroup>
277
+ <col width="150px" class="parameters_name">
278
+ <col class="parameters_description">
279
+ <col width="200px" class="parameters_annotations">
280
+ </colgroup>
281
+ <tbody>
282
+ <tr>
283
+ <td class="parameter_name"><p>font</p></td>
284
+ <td class="parameter_description"><p>an <a class="link" href="harfbuzz-hb-font.html#hb-font-t"><span class="type">hb_font_t</span></a> to use for shaping</p></td>
285
+ <td class="parameter_annotations"> </td>
286
+ </tr>
287
+ <tr>
288
+ <td class="parameter_name"><p>buffer</p></td>
289
+ <td class="parameter_description"><p>an <a class="link" href="harfbuzz-hb-buffer.html#hb-buffer-t"><span class="type">hb_buffer_t</span></a> to shape</p></td>
290
+ <td class="parameter_annotations"> </td>
291
+ </tr>
292
+ <tr>
293
+ <td class="parameter_name"><p>features</p></td>
294
+ <td class="parameter_description"><p> an array of user
295
+ specified <a class="link" href="harfbuzz-Shaping.html#hb-feature-t"><span class="type">hb_feature_t</span></a> or <code class="literal">NULL</code>. </p></td>
296
+ <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=num_features][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
297
+ </tr>
298
+ <tr>
299
+ <td class="parameter_name"><p>num_features</p></td>
300
+ <td class="parameter_description"><p>the length of <em class="parameter"><code>features</code></em>
301
+ array</p></td>
302
+ <td class="parameter_annotations"> </td>
303
+ </tr>
304
+ <tr>
305
+ <td class="parameter_name"><p>shaper_list</p></td>
306
+ <td class="parameter_description"><p> a <code class="literal">NULL</code>-terminated
307
+ array of shapers to use or <code class="literal">NULL</code>. </p></td>
308
+ <td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> zero-terminated=1][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
309
+ </tr>
310
+ </tbody>
311
+ </table></div>
312
+ </div>
313
+ <div class="refsect3">
314
+ <a name="id-1.3.2.9.9.5.6"></a><h4>Returns</h4>
315
+ <p> <code class="literal">FALSE</code> if all shapers failed, <code class="literal">TRUE</code> otherwise</p>
316
+ <p></p>
317
+ </div>
318
+ <p class="since">Since 0.9.2</p>
319
+ </div>
320
+ <hr>
321
+ <div class="refsect2">
322
+ <a name="hb-shape-list-shapers"></a><h3>hb_shape_list_shapers ()</h3>
323
+ <pre class="programlisting">const <span class="returnvalue">char</span> **
324
+ hb_shape_list_shapers (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
325
+ <p>Retrieves the list of shapers supported by HarfBuzz.</p>
326
+ <div class="refsect3">
327
+ <a name="id-1.3.2.9.9.6.5"></a><h4>Returns</h4>
328
+ <p> an array of
329
+ constant strings. </p>
330
+ <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> zero-terminated=1]</span></p>
331
+ </div>
332
+ <p class="since">Since 0.9.2</p>
333
+ </div>
334
+ </div>
335
+ <div class="refsect1">
336
+ <a name="harfbuzz-Shaping.other_details"></a><h2>Types and Values</h2>
337
+ <div class="refsect2">
338
+ <a name="hb-feature-t-struct"></a><h3>hb_feature_t</h3>
339
+ <pre class="programlisting">typedef struct {
340
+ hb_tag_t tag;
341
+ uint32_t value;
342
+ unsigned int start;
343
+ unsigned int end;
344
+ } hb_feature_t;
345
+ </pre>
346
+ </div>
347
+ </div>
348
+ </div>
349
+ <div class="footer">
350
+ <hr>Generated by GTK-Doc V1.24.1</div>
351
+ </body>
352
+ </html>