pango 2.0.2-x86-mingw32 → 2.0.3-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 (208) hide show
  1. checksums.yaml +7 -0
  2. data/README +2 -2
  3. data/Rakefile +7 -5
  4. data/ext/pango/extconf.rb +4 -4
  5. data/ext/pango/rbpango.c +0 -9
  6. data/ext/pango/rbpango.h +2 -10
  7. data/ext/pango/rbpangoanalysis.c +0 -4
  8. data/ext/pango/rbpangoattribute.c +1 -26
  9. data/ext/pango/rbpangoattrlist.c +0 -4
  10. data/ext/pango/rbpangocairo.c +13 -12
  11. data/ext/pango/rbpangocairocontext.c +6 -26
  12. data/ext/pango/rbpangocontext.c +2 -14
  13. data/ext/pango/rbpangofont.c +0 -12
  14. data/ext/pango/rbpangofontdescription.c +0 -5
  15. data/ext/pango/rbpangofontface.c +0 -6
  16. data/ext/pango/rbpangofontfamily.c +0 -3
  17. data/ext/pango/rbpangofontmap.c +0 -4
  18. data/ext/pango/rbpangofontmetrics.c +1 -4
  19. data/ext/pango/rbpangofontset.c +0 -4
  20. data/ext/pango/rbpangoglyphitem.c +0 -8
  21. data/ext/pango/rbpangoglyphstring.c +0 -4
  22. data/ext/pango/rbpangoitem.c +0 -16
  23. data/ext/pango/rbpangolanguage.c +0 -5
  24. data/ext/pango/rbpangolayout.c +36 -19
  25. data/ext/pango/rbpangolayoutline.c +0 -33
  26. data/ext/pango/rbpangologattr.c +0 -5
  27. data/ext/pango/rbpangomatrix.c +0 -10
  28. data/ext/pango/rbpangoprivate.h +0 -4
  29. data/ext/pango/rbpangorenderer.c +0 -6
  30. data/ext/pango/rbpangoscript.c +0 -4
  31. data/ext/pango/rbpangoscriptiter.c +0 -5
  32. data/lib/1.9/pango.so +0 -0
  33. data/lib/2.0/pango.so +0 -0
  34. data/test/{test_layout.rb → test-layout.rb} +14 -0
  35. data/vendor/local/bin/hb-ot-shape-closure.exe +0 -0
  36. data/vendor/local/bin/hb-shape.exe +0 -0
  37. data/vendor/local/bin/hb-view.exe +0 -0
  38. data/vendor/local/bin/libharfbuzz-0.dll +0 -0
  39. data/vendor/local/bin/libpango-1.0-0.dll +0 -0
  40. data/vendor/local/bin/libpangocairo-1.0-0.dll +0 -0
  41. data/vendor/local/bin/libpangoft2-1.0-0.dll +0 -0
  42. data/vendor/local/bin/libpangowin32-1.0-0.dll +0 -0
  43. data/vendor/local/bin/libstdc++-6.dll +0 -0
  44. data/vendor/local/bin/pango-querymodules.exe +0 -0
  45. data/vendor/local/bin/pango-view.exe +0 -0
  46. data/vendor/local/include/harfbuzz/hb-buffer.h +10 -10
  47. data/vendor/local/include/harfbuzz/hb-common.h +147 -131
  48. data/vendor/local/include/harfbuzz/{hb-uniscribe.h → hb-deprecated.h} +15 -13
  49. data/vendor/local/include/harfbuzz/hb-face.h +117 -0
  50. data/vendor/local/include/harfbuzz/hb-font.h +130 -77
  51. data/vendor/local/include/harfbuzz/hb-ot-layout.h +6 -0
  52. data/vendor/local/include/harfbuzz/hb-set.h +2 -0
  53. data/vendor/local/include/harfbuzz/hb-unicode.h +97 -9
  54. data/vendor/local/include/harfbuzz/hb-version.h +2 -2
  55. data/vendor/local/include/harfbuzz/hb.h +2 -0
  56. data/vendor/local/include/pango-1.0/pango/pango-attributes.h +213 -4
  57. data/vendor/local/include/pango-1.0/pango/pango-break.h +53 -0
  58. data/vendor/local/include/pango-1.0/pango/pango-coverage.h +21 -0
  59. data/vendor/local/include/pango-1.0/pango/pango-engine.h +46 -0
  60. data/vendor/local/include/pango-1.0/pango/pango-features.h +2 -2
  61. data/vendor/local/include/pango-1.0/pango/pango-font.h +234 -0
  62. data/vendor/local/include/pango-1.0/pango/pango-fontmap.h +68 -0
  63. data/vendor/local/include/pango-1.0/pango/pango-fontset.h +42 -0
  64. data/vendor/local/include/pango-1.0/pango/pango-glyph-item.h +64 -0
  65. data/vendor/local/include/pango-1.0/pango/pango-glyph.h +55 -0
  66. data/vendor/local/include/pango-1.0/pango/pango-item.h +28 -0
  67. data/vendor/local/include/pango-1.0/pango/pango-language.h +5 -0
  68. data/vendor/local/include/pango-1.0/pango/pango-layout.h +43 -0
  69. data/vendor/local/include/pango-1.0/pango/pango-modules.h +11 -0
  70. data/vendor/local/include/pango-1.0/pango/pango-ot.h +149 -0
  71. data/vendor/local/include/pango-1.0/pango/pango-script.h +102 -0
  72. data/vendor/local/include/pango-1.0/pango/pango-tabs.h +11 -0
  73. data/vendor/local/include/pango-1.0/pango/pango-types.h +102 -2
  74. data/vendor/local/include/pango-1.0/pango/pango-utils.h +44 -0
  75. data/vendor/local/include/pango-1.0/pango/pangocairo.h +14 -0
  76. data/vendor/local/include/pango-1.0/pango/pangofc-fontmap.h +2 -2
  77. data/vendor/local/include/pango-1.0/pango/pangoft2.h +13 -0
  78. data/vendor/local/include/pango-1.0/pango/pangowin32.h +6 -0
  79. data/vendor/local/lib/girepository-1.0/Pango-1.0.typelib +0 -0
  80. data/vendor/local/lib/girepository-1.0/PangoCairo-1.0.typelib +0 -0
  81. data/vendor/local/lib/libharfbuzz.dll.a +0 -0
  82. data/vendor/local/lib/libharfbuzz.la +5 -5
  83. data/vendor/local/lib/libpango-1.0.dll.a +0 -0
  84. data/vendor/local/lib/libpango-1.0.la +2 -2
  85. data/vendor/local/lib/libpangocairo-1.0.dll.a +0 -0
  86. data/vendor/local/lib/libpangocairo-1.0.la +4 -4
  87. data/vendor/local/lib/libpangoft2-1.0.dll.a +0 -0
  88. data/vendor/local/lib/libpangoft2-1.0.la +3 -3
  89. data/vendor/local/lib/libpangowin32-1.0.dll.a +0 -0
  90. data/vendor/local/lib/libpangowin32-1.0.la +2 -2
  91. data/vendor/local/lib/pango/1.8.0/modules/pango-arabic-lang.dll +0 -0
  92. data/vendor/local/lib/pango/1.8.0/modules/pango-arabic-lang.dll.a +0 -0
  93. data/vendor/local/lib/pango/1.8.0/modules/pango-basic-fc.dll +0 -0
  94. data/vendor/local/lib/pango/1.8.0/modules/pango-basic-fc.dll.a +0 -0
  95. data/vendor/local/lib/pango/1.8.0/modules/pango-basic-fc.la +1 -1
  96. data/vendor/local/lib/pango/1.8.0/modules/pango-basic-win32.dll +0 -0
  97. data/vendor/local/lib/pango/1.8.0/modules/pango-basic-win32.dll.a +0 -0
  98. data/vendor/local/lib/pango/1.8.0/modules/pango-indic-lang.dll +0 -0
  99. data/vendor/local/lib/pango/1.8.0/modules/pango-indic-lang.dll.a +0 -0
  100. data/vendor/local/lib/pkgconfig/harfbuzz.pc +5 -5
  101. data/vendor/local/lib/pkgconfig/pango.pc +1 -1
  102. data/vendor/local/lib/pkgconfig/pangocairo.pc +1 -1
  103. data/vendor/local/lib/pkgconfig/pangoft2.pc +1 -1
  104. data/vendor/local/lib/pkgconfig/pangowin32.pc +1 -1
  105. data/vendor/local/share/gir-1.0/Pango-1.0.gir +1824 -1434
  106. data/vendor/local/share/gir-1.0/PangoCairo-1.0.gir +109 -103
  107. data/vendor/local/share/gir-1.0/PangoFT2-1.0.gir +18 -15
  108. data/vendor/local/share/gtk-doc/html/harfbuzz/annotation-glossary.html +71 -0
  109. data/vendor/local/share/gtk-doc/html/harfbuzz/api-index-full.html +1419 -0
  110. data/vendor/local/share/gtk-doc/html/harfbuzz/ch01.html +98 -0
  111. data/vendor/local/share/gtk-doc/html/harfbuzz/deprecated-api-index.html +48 -0
  112. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-blob.html +415 -0
  113. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-buffer.html +1045 -0
  114. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-common.html +1073 -0
  115. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-coretext.html +67 -0
  116. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-deprecated.html +90 -0
  117. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-face.html +344 -0
  118. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-font.html +1617 -0
  119. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-ft.html +130 -0
  120. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-glib.html +75 -0
  121. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-gobject.html +52 -0
  122. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-graphite2.html +76 -0
  123. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-icu.html +75 -0
  124. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-ot-layout.html +544 -0
  125. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-ot-tag.html +105 -0
  126. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-ot.html +67 -0
  127. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-set.html +540 -0
  128. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-shape-plan.html +264 -0
  129. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-shape.html +194 -0
  130. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-unicode.html +1180 -0
  131. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-uniscribe.html +67 -0
  132. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-version.html +156 -0
  133. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb.html +52 -0
  134. data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz.devhelp2 +591 -0
  135. data/vendor/local/share/gtk-doc/html/harfbuzz/home.png +0 -0
  136. data/vendor/local/share/gtk-doc/html/harfbuzz/index.html +105 -0
  137. data/vendor/local/share/gtk-doc/html/harfbuzz/index.sgml +650 -0
  138. data/vendor/local/share/gtk-doc/html/harfbuzz/left-insensitive.png +0 -0
  139. data/vendor/local/share/gtk-doc/html/harfbuzz/left.png +0 -0
  140. data/vendor/local/share/gtk-doc/html/harfbuzz/object-tree.html +32 -0
  141. data/vendor/local/share/gtk-doc/html/harfbuzz/right-insensitive.png +0 -0
  142. data/vendor/local/share/gtk-doc/html/harfbuzz/right.png +0 -0
  143. data/vendor/local/share/gtk-doc/html/harfbuzz/style.css +321 -0
  144. data/vendor/local/share/gtk-doc/html/harfbuzz/up-insensitive.png +0 -0
  145. data/vendor/local/share/gtk-doc/html/harfbuzz/up.png +0 -0
  146. data/vendor/local/share/gtk-doc/html/pango/PangoEngineLang.html +3 -4
  147. data/vendor/local/share/gtk-doc/html/pango/PangoEngineShape.html +3 -4
  148. data/vendor/local/share/gtk-doc/html/pango/PangoFcDecoder.html +2 -2
  149. data/vendor/local/share/gtk-doc/html/pango/PangoFcFont.html +4 -9
  150. data/vendor/local/share/gtk-doc/html/pango/PangoFcFontMap.html +8 -13
  151. data/vendor/local/share/gtk-doc/html/pango/PangoMarkupFormat.html +2 -2
  152. data/vendor/local/share/gtk-doc/html/pango/{pango-pango-renderer.html → PangoRenderer.html} +99 -102
  153. data/vendor/local/share/gtk-doc/html/pango/annotation-glossary.html +20 -29
  154. data/vendor/local/share/gtk-doc/html/pango/api-index-1-10.html +2 -2
  155. data/vendor/local/share/gtk-doc/html/pango/api-index-1-12.html +2 -2
  156. data/vendor/local/share/gtk-doc/html/pango/api-index-1-14.html +2 -2
  157. data/vendor/local/share/gtk-doc/html/pango/api-index-1-16.html +6 -2
  158. data/vendor/local/share/gtk-doc/html/pango/api-index-1-18.html +2 -2
  159. data/vendor/local/share/gtk-doc/html/pango/api-index-1-2.html +2 -2
  160. data/vendor/local/share/gtk-doc/html/pango/api-index-1-20.html +4 -11
  161. data/vendor/local/share/gtk-doc/html/pango/api-index-1-22.html +3 -3
  162. data/vendor/local/share/gtk-doc/html/pango/api-index-1-24.html +15 -4
  163. data/vendor/local/share/gtk-doc/html/pango/api-index-1-26.html +4 -4
  164. data/vendor/local/share/gtk-doc/html/pango/api-index-1-30.html +6 -6
  165. data/vendor/local/share/gtk-doc/html/pango/api-index-1-31-0.html +42 -0
  166. data/vendor/local/share/gtk-doc/html/pango/api-index-1-32-4.html +58 -0
  167. data/vendor/local/share/gtk-doc/html/pango/api-index-1-32.html +6 -5
  168. data/vendor/local/share/gtk-doc/html/pango/api-index-1-34.html +41 -0
  169. data/vendor/local/share/gtk-doc/html/pango/api-index-1-4.html +2 -2
  170. data/vendor/local/share/gtk-doc/html/pango/api-index-1-6.html +2 -2
  171. data/vendor/local/share/gtk-doc/html/pango/api-index-1-8.html +19 -19
  172. data/vendor/local/share/gtk-doc/html/pango/api-index-deprecated.html +2 -2
  173. data/vendor/local/share/gtk-doc/html/pango/api-index-full.html +31 -27
  174. data/vendor/local/share/gtk-doc/html/pango/index.html +7 -5
  175. data/vendor/local/share/gtk-doc/html/pango/index.sgml +38 -38
  176. data/vendor/local/share/gtk-doc/html/pango/lowlevel.html +5 -5
  177. data/vendor/local/share/gtk-doc/html/pango/pango-Bidirectional-Text.html +6 -9
  178. data/vendor/local/share/gtk-doc/html/pango/pango-Cairo-Rendering.html +113 -66
  179. data/vendor/local/share/gtk-doc/html/pango/pango-CoreText-Fonts.html +2 -2
  180. data/vendor/local/share/gtk-doc/html/pango/pango-Coverage-Maps.html +8 -12
  181. data/vendor/local/share/gtk-doc/html/pango/pango-Engines.html +5 -8
  182. data/vendor/local/share/gtk-doc/html/pango/pango-Fonts.html +90 -53
  183. data/vendor/local/share/gtk-doc/html/pango/pango-FreeType-Fonts-and-Rendering.html +10 -10
  184. data/vendor/local/share/gtk-doc/html/pango/pango-Glyph-Storage.html +21 -8
  185. data/vendor/local/share/gtk-doc/html/pango/pango-Layout-Objects.html +44 -15
  186. data/vendor/local/share/gtk-doc/html/pango/pango-Miscellaneous-Utilities.html +2 -2
  187. data/vendor/local/share/gtk-doc/html/pango/pango-Modules.html +2 -2
  188. data/vendor/local/share/gtk-doc/html/pango/pango-OpenType-Font-Handling.html +12 -12
  189. data/vendor/local/share/gtk-doc/html/pango/pango-Scripts-and-Languages.html +87 -90
  190. data/vendor/local/share/gtk-doc/html/pango/pango-Tab-Stops.html +2 -5
  191. data/vendor/local/share/gtk-doc/html/pango/pango-Text-Attributes.html +38 -31
  192. data/vendor/local/share/gtk-doc/html/pango/pango-Text-Processing.html +10 -18
  193. data/vendor/local/share/gtk-doc/html/pango/pango-Version-Checking.html +10 -11
  194. data/vendor/local/share/gtk-doc/html/pango/pango-Vertical-Text.html +4 -6
  195. data/vendor/local/share/gtk-doc/html/pango/pango-Win32-Fonts-and-Rendering.html +3 -4
  196. data/vendor/local/share/gtk-doc/html/pango/pango-Xft-Fonts-and-Rendering.html +12 -12
  197. data/vendor/local/share/gtk-doc/html/pango/pango-hierarchy.html +4 -4
  198. data/vendor/local/share/gtk-doc/html/pango/pango-querymodules.html +2 -2
  199. data/vendor/local/share/gtk-doc/html/pango/pango.devhelp2 +34 -31
  200. data/vendor/local/share/gtk-doc/html/pango/pango.html +2 -2
  201. data/vendor/local/share/gtk-doc/html/pango/rendering.html +2 -2
  202. data/vendor/local/share/gtk-doc/html/pango/tools.html +2 -2
  203. data/vendor/local/share/man/man1/pango-querymodules.1 +2 -2
  204. data/vendor/local/share/man/man1/pango-view.1 +2 -2
  205. metadata +57 -24
  206. data/vendor/local/bin/libgcc_s_sjlj-1.dll +0 -0
  207. data/vendor/local/include/harfbuzz/hb-gobject.h +0 -69
  208. data/vendor/local/share/gtk-doc/html/pango/api-index-1-28.html +0 -31
@@ -33,6 +33,17 @@ typedef struct _PangoMapEntry PangoMapEntry;
33
33
 
34
34
  typedef struct _PangoIncludedModule PangoIncludedModule;
35
35
 
36
+ /**
37
+ * PangoIncludedModule:
38
+ * @list: a function that lists the engines defined in this module.
39
+ * @init: a function to initialize the module.
40
+ * @exit: a function to finalize the module.
41
+ * @create: a function to create an engine, given the engine name.
42
+ *
43
+ * The #PangoIncludedModule structure for a statically linked module
44
+ * contains the functions that would otherwise be loaded from a dynamically
45
+ * loaded module.
46
+ */
36
47
  struct _PangoIncludedModule
37
48
  {
38
49
  void (*list) (PangoEngineInfo **engines,
@@ -34,8 +34,35 @@ G_BEGIN_DECLS
34
34
 
35
35
  #ifdef PANGO_ENABLE_ENGINE
36
36
 
37
+ /**
38
+ * PangoOTTag:
39
+ *
40
+ * The #PangoOTTag typedef is used to represent TrueType and OpenType
41
+ * four letter tags inside Pango. Use PANGO_OT_TAG_MAKE()
42
+ * or PANGO_OT_TAG_MAKE_FROM_STRING() macros to create <type>PangoOTTag</type>s manually.
43
+ */
37
44
  typedef guint32 PangoOTTag;
38
45
 
46
+ /**
47
+ * PANGO_OT_TAG_MAKE:
48
+ * @c1: First character.
49
+ * @c2: Second character.
50
+ * @c3: Third character.
51
+ * @c4: Fourth character.
52
+ *
53
+ * Creates a #PangoOTTag from four characters. This is similar and
54
+ * compatible with the <function>FT_MAKE_TAG()</function> macro from FreeType.
55
+ */
56
+ /**
57
+ * PANGO_OT_TAG_MAKE_FROM_STRING:
58
+ * @s: The string representation of the tag.
59
+ *
60
+ * Creates a #PangoOTTag from a string. The string should be at least
61
+ * four characters long (pad with space characters if needed), and need
62
+ * not be nul-terminated. This is a convenience wrapper around
63
+ * PANGO_OT_TAG_MAKE(), but cannot be used in certain situations, for
64
+ * example, as a switch expression, as it dereferences pointers.
65
+ */
39
66
  #define PANGO_OT_TAG_MAKE(c1,c2,c3,c4) ((PangoOTTag) FT_MAKE_TAG (c1, c2, c3, c4))
40
67
  #define PANGO_OT_TAG_MAKE_FROM_STRING(s) (PANGO_OT_TAG_MAKE(((const char *) s)[0], \
41
68
  ((const char *) s)[1], \
@@ -49,21 +76,109 @@ typedef struct _PangoOTRuleset PangoOTRuleset;
49
76
  typedef struct _PangoOTFeatureMap PangoOTFeatureMap;
50
77
  typedef struct _PangoOTRulesetDescription PangoOTRulesetDescription;
51
78
 
79
+ /**
80
+ * PangoOTTableType:
81
+ * @PANGO_OT_TABLE_GSUB: The GSUB table.
82
+ * @PANGO_OT_TABLE_GPOS: The GPOS table.
83
+ *
84
+ * The <type>PangoOTTableType</type> enumeration values are used to
85
+ * identify the various OpenType tables in the
86
+ * <function>pango_ot_info_*</function> functions.
87
+ */
52
88
  typedef enum
53
89
  {
54
90
  PANGO_OT_TABLE_GSUB,
55
91
  PANGO_OT_TABLE_GPOS
56
92
  } PangoOTTableType;
57
93
 
94
+ /**
95
+ * PANGO_OT_ALL_GLYPHS:
96
+ *
97
+ * This is used as the property bit in pango_ot_ruleset_add_feature() when a
98
+ * feature should be applied to all glyphs.
99
+ *
100
+ * Since: 1.16
101
+ */
102
+ /**
103
+ * PANGO_OT_NO_FEATURE:
104
+ *
105
+ * This is used as a feature index that represent no feature, that is, should be
106
+ * skipped. It may be returned as feature index by pango_ot_info_find_feature()
107
+ * if the feature is not found, and pango_ot_ruleset_add_feature() function
108
+ * automatically skips this value, so no special handling is required by the user.
109
+ *
110
+ * Since: 1.18
111
+ */
112
+ /**
113
+ * PANGO_OT_NO_SCRIPT:
114
+ *
115
+ * This is used as a script index that represent no script, that is, when the
116
+ * requested script was not found, and a default ('DFLT') script was not found
117
+ * either. It may be returned as script index by pango_ot_info_find_script()
118
+ * if the script or a default script are not found, all other functions
119
+ * taking a script index essentially return if the input script index is
120
+ * this value, so no special handling is required by the user.
121
+ *
122
+ * Since: 1.18
123
+ */
124
+ /**
125
+ * PANGO_OT_DEFAULT_LANGUAGE:
126
+ *
127
+ * This is used as the language index in pango_ot_info_find_feature() when
128
+ * the default language system of the script is desired.
129
+ *
130
+ * It is also returned by pango_ot_info_find_language() if the requested language
131
+ * is not found, or the requested language tag was PANGO_OT_TAG_DEFAULT_LANGUAGE.
132
+ * The end result is that one can always call pango_ot_tag_from_language()
133
+ * followed by pango_ot_info_find_language() and pass the result to
134
+ * pango_ot_info_find_feature() without having to worry about falling back to
135
+ * default language system explicitly.
136
+ *
137
+ * Since: 1.16
138
+ */
58
139
  #define PANGO_OT_ALL_GLYPHS ((guint) 0xFFFF)
59
140
  #define PANGO_OT_NO_FEATURE ((guint) 0xFFFF)
60
141
  #define PANGO_OT_NO_SCRIPT ((guint) 0xFFFF)
61
142
  #define PANGO_OT_DEFAULT_LANGUAGE ((guint) 0xFFFF)
62
143
 
144
+ /**
145
+ * PANGO_OT_TAG_DEFAULT_SCRIPT:
146
+ *
147
+ * This is a #PangoOTTag representing the special script tag 'DFLT'. It is
148
+ * returned as script tag by pango_ot_tag_from_script() if the requested script
149
+ * is not found.
150
+ *
151
+ * Since: 1.18
152
+ */
153
+ /**
154
+ * PANGO_OT_TAG_DEFAULT_LANGUAGE:
155
+ *
156
+ * This is a #PangoOTTag representing a special language tag 'dflt'. It is
157
+ * returned as language tag by pango_ot_tag_from_language() if the requested
158
+ * language is not found. It is safe to pass this value to
159
+ * pango_ot_info_find_language() as that function falls back to returning default
160
+ * language-system if the requested language tag is not found.
161
+ *
162
+ * Since: 1.18
163
+ */
63
164
  #define PANGO_OT_TAG_DEFAULT_SCRIPT PANGO_OT_TAG_MAKE ('D', 'F', 'L', 'T')
64
165
  #define PANGO_OT_TAG_DEFAULT_LANGUAGE PANGO_OT_TAG_MAKE ('d', 'f', 'l', 't')
65
166
 
66
167
  /* Note that this must match hb_glyph_info_t */
168
+ /**
169
+ * PangoOTGlyph:
170
+ * @glyph: the glyph itself.
171
+ * @properties: the properties value, identifying which features should be
172
+ * applied on this glyph. See pango_ot_ruleset_add_feature().
173
+ * @cluster: the cluster that this glyph belongs to.
174
+ * @component: a component value, set by the OpenType layout engine.
175
+ * @ligID: a ligature index value, set by the OpenType layout engine.
176
+ * @internal: for Pango internal use
177
+ *
178
+ * The #PangoOTGlyph structure represents a single glyph together with
179
+ * information used for OpenType layout processing of the glyph.
180
+ * It contains the following fields.
181
+ */
67
182
  struct _PangoOTGlyph
68
183
  {
69
184
  guint32 glyph;
@@ -75,12 +190,46 @@ struct _PangoOTGlyph
75
190
  guint internal;
76
191
  };
77
192
 
193
+ /**
194
+ * PangoOTFeatureMap:
195
+ * @feature_name: feature tag in represented as four-letter ASCII string.
196
+ * @property_bit: the property bit to use for this feature. See
197
+ * pango_ot_ruleset_add_feature() for details.
198
+ *
199
+ * The #PangoOTFeatureMap typedef is used to represent an OpenType
200
+ * feature with the property bit associated with it. The feature tag is
201
+ * represented as a char array instead of a #PangoOTTag for convenience.
202
+ *
203
+ * Since: 1.18
204
+ */
78
205
  struct _PangoOTFeatureMap
79
206
  {
80
207
  char feature_name[5];
81
208
  gulong property_bit;
82
209
  };
83
210
 
211
+ /**
212
+ * PangoOTRulesetDescription:
213
+ * @script: a #PangoScript.
214
+ * @language: a #PangoLanguage.
215
+ * @static_gsub_features: static map of GSUB features, or %NULL.
216
+ * @n_static_gsub_features: length of @static_gsub_features, or 0.
217
+ * @static_gpos_features: static map of GPOS features, or %NULL.
218
+ * @n_static_gpos_features: length of @static_gpos_features, or 0.
219
+ * @other_features: map of extra features to add to both GSUB and GPOS, or %NULL.
220
+ * Unlike the static maps, this pointer need not live beyond
221
+ * the life of function calls taking this struct.
222
+ * @n_other_features: length of @other_features, or 0.
223
+ *
224
+ * The #PangoOTRuleset structure holds all the information needed
225
+ * to build a complete #PangoOTRuleset from an OpenType font.
226
+ * The main use of this struct is to act as the key for a per-font
227
+ * hash of rulesets. The user populates a ruleset description and
228
+ * gets the ruleset using pango_ot_ruleset_get_for_description()
229
+ * or create a new one using pango_ot_ruleset_new_from_description().
230
+ *
231
+ * Since: 1.18
232
+ */
84
233
  struct _PangoOTRulesetDescription {
85
234
  PangoScript script;
86
235
  PangoLanguage *language;
@@ -34,6 +34,108 @@ G_BEGIN_DECLS
34
34
  **/
35
35
  typedef struct _PangoScriptIter PangoScriptIter;
36
36
 
37
+ /**
38
+ * PangoScript:
39
+ * @PANGO_SCRIPT_INVALID_CODE: a value never returned from pango_script_for_unichar()
40
+ * @PANGO_SCRIPT_COMMON: a character used by multiple different scripts
41
+ * @PANGO_SCRIPT_INHERITED: a mark glyph that takes its script from the
42
+ * base glyph to which it is attached
43
+ * @PANGO_SCRIPT_ARABIC: Arabic
44
+ * @PANGO_SCRIPT_ARMENIAN: Armenian
45
+ * @PANGO_SCRIPT_BENGALI: Bengali
46
+ * @PANGO_SCRIPT_BOPOMOFO: Bopomofo
47
+ * @PANGO_SCRIPT_CHEROKEE: Cherokee
48
+ * @PANGO_SCRIPT_COPTIC: Coptic
49
+ * @PANGO_SCRIPT_CYRILLIC: Cyrillic
50
+ * @PANGO_SCRIPT_DESERET: Deseret
51
+ * @PANGO_SCRIPT_DEVANAGARI: Devanagari
52
+ * @PANGO_SCRIPT_ETHIOPIC: Ethiopic
53
+ * @PANGO_SCRIPT_GEORGIAN: Georgian
54
+ * @PANGO_SCRIPT_GOTHIC: Gothic
55
+ * @PANGO_SCRIPT_GREEK: Greek
56
+ * @PANGO_SCRIPT_GUJARATI: Gujarati
57
+ * @PANGO_SCRIPT_GURMUKHI: Gurmukhi
58
+ * @PANGO_SCRIPT_HAN: Han
59
+ * @PANGO_SCRIPT_HANGUL: Hangul
60
+ * @PANGO_SCRIPT_HEBREW: Hebrew
61
+ * @PANGO_SCRIPT_HIRAGANA: Hiragana
62
+ * @PANGO_SCRIPT_KANNADA: Kannada
63
+ * @PANGO_SCRIPT_KATAKANA: Katakana
64
+ * @PANGO_SCRIPT_KHMER: Khmer
65
+ * @PANGO_SCRIPT_LAO: Lao
66
+ * @PANGO_SCRIPT_LATIN: Latin
67
+ * @PANGO_SCRIPT_MALAYALAM: Malayalam
68
+ * @PANGO_SCRIPT_MONGOLIAN: Mongolian
69
+ * @PANGO_SCRIPT_MYANMAR: Myanmar
70
+ * @PANGO_SCRIPT_OGHAM: Ogham
71
+ * @PANGO_SCRIPT_OLD_ITALIC: Old Italic
72
+ * @PANGO_SCRIPT_ORIYA: Oriya
73
+ * @PANGO_SCRIPT_RUNIC: Runic
74
+ * @PANGO_SCRIPT_SINHALA: Sinhala
75
+ * @PANGO_SCRIPT_SYRIAC: Syriac
76
+ * @PANGO_SCRIPT_TAMIL: Tamil
77
+ * @PANGO_SCRIPT_TELUGU: Telugu
78
+ * @PANGO_SCRIPT_THAANA: Thaana
79
+ * @PANGO_SCRIPT_THAI: Thai
80
+ * @PANGO_SCRIPT_TIBETAN: Tibetan
81
+ * @PANGO_SCRIPT_CANADIAN_ABORIGINAL: Canadian Aboriginal
82
+ * @PANGO_SCRIPT_YI: Yi
83
+ * @PANGO_SCRIPT_TAGALOG: Tagalog
84
+ * @PANGO_SCRIPT_HANUNOO: Hanunoo
85
+ * @PANGO_SCRIPT_BUHID: Buhid
86
+ * @PANGO_SCRIPT_TAGBANWA: Tagbanwa
87
+ * @PANGO_SCRIPT_BRAILLE: Braille
88
+ * @PANGO_SCRIPT_CYPRIOT: Cypriot
89
+ * @PANGO_SCRIPT_LIMBU: Limbu
90
+ * @PANGO_SCRIPT_OSMANYA: Osmanya
91
+ * @PANGO_SCRIPT_SHAVIAN: Shavian
92
+ * @PANGO_SCRIPT_LINEAR_B: Linear B
93
+ * @PANGO_SCRIPT_TAI_LE: Tai Le
94
+ * @PANGO_SCRIPT_UGARITIC: Ugaritic
95
+ * @PANGO_SCRIPT_NEW_TAI_LUE: New Tai Lue. Since 1.10
96
+ * @PANGO_SCRIPT_BUGINESE: Buginese. Since 1.10
97
+ * @PANGO_SCRIPT_GLAGOLITIC: Glagolitic. Since 1.10
98
+ * @PANGO_SCRIPT_TIFINAGH: Tifinagh. Since 1.10
99
+ * @PANGO_SCRIPT_SYLOTI_NAGRI: Syloti Nagri. Since 1.10
100
+ * @PANGO_SCRIPT_OLD_PERSIAN: Old Persian. Since 1.10
101
+ * @PANGO_SCRIPT_KHAROSHTHI: Kharoshthi. Since 1.10
102
+ * @PANGO_SCRIPT_UNKNOWN: an unassigned code point. Since 1.14
103
+ * @PANGO_SCRIPT_BALINESE: Balinese. Since 1.14
104
+ * @PANGO_SCRIPT_CUNEIFORM: Cuneiform. Since 1.14
105
+ * @PANGO_SCRIPT_PHOENICIAN: Phoenician. Since 1.14
106
+ * @PANGO_SCRIPT_PHAGS_PA: Phags-pa. Since 1.14
107
+ * @PANGO_SCRIPT_NKO: N'Ko. Since 1.14
108
+ * @PANGO_SCRIPT_KAYAH_LI: Kayah Li. Since 1.20.1
109
+ * @PANGO_SCRIPT_LEPCHA: Lepcha. Since 1.20.1
110
+ * @PANGO_SCRIPT_REJANG: Rejang. Since 1.20.1
111
+ * @PANGO_SCRIPT_SUNDANESE: Sundanese. Since 1.20.1
112
+ * @PANGO_SCRIPT_SAURASHTRA: Saurashtra. Since 1.20.1
113
+ * @PANGO_SCRIPT_CHAM: Cham. Since 1.20.1
114
+ * @PANGO_SCRIPT_OL_CHIKI: Ol Chiki. Since 1.20.1
115
+ * @PANGO_SCRIPT_VAI: Vai. Since 1.20.1
116
+ * @PANGO_SCRIPT_CARIAN: Carian. Since 1.20.1
117
+ * @PANGO_SCRIPT_LYCIAN: Lycian. Since 1.20.1
118
+ * @PANGO_SCRIPT_LYDIAN: Lydian. Since 1.20.1
119
+ * @PANGO_SCRIPT_BATAK: Batak. Since 1.32
120
+ * @PANGO_SCRIPT_BRAHMI: Brahmi. Since 1.32
121
+ * @PANGO_SCRIPT_MANDAIC: Mandaic. Since 1.32
122
+ * @PANGO_SCRIPT_CHAKMA: Chakma. Since: 1.32
123
+ * @PANGO_SCRIPT_MEROITIC_CURSIVE: Meroitic Cursive. Since: 1.32
124
+ * @PANGO_SCRIPT_MEROITIC_HIEROGLYPHS: Meroitic Hieroglyphs. Since: 1.32
125
+ * @PANGO_SCRIPT_MIAO: Miao. Since: 1.32
126
+ * @PANGO_SCRIPT_SHARADA: Sharada. Since: 1.32
127
+ * @PANGO_SCRIPT_SORA_SOMPENG: Sora Sompeng. Since: 1.32
128
+ * @PANGO_SCRIPT_TAKRI: Takri. Since: 1.32
129
+ *
130
+ * The #PangoScript enumeration identifies different writing
131
+ * systems. The values correspond to the names as defined in the
132
+ * Unicode standard.
133
+ * Note that new types may be added in the future. Applications should be ready
134
+ * to handle unknown values. This enumeration is interchangeable with
135
+ * #GUnicodeScript. See <ulink
136
+ * url="http://www.unicode.org/reports/tr24/">Unicode Standard Annex
137
+ * #24: Script names</ulink>.
138
+ */
37
139
  typedef enum { /* ISO 15924 code */
38
140
  PANGO_SCRIPT_INVALID_CODE = -1,
39
141
  PANGO_SCRIPT_COMMON = 0, /* Zyyy */
@@ -28,6 +28,12 @@ G_BEGIN_DECLS
28
28
 
29
29
  typedef struct _PangoTabArray PangoTabArray;
30
30
 
31
+ /**
32
+ * PangoTabAlign:
33
+ * @PANGO_TAB_LEFT: the tab stop appears to the left of the text.
34
+ *
35
+ * A #PangoTabAlign specifies where a tab stop appears relative to the text.
36
+ */
31
37
  typedef enum
32
38
  {
33
39
  PANGO_TAB_LEFT
@@ -41,6 +47,11 @@ typedef enum
41
47
  */
42
48
  } PangoTabAlign;
43
49
 
50
+ /**
51
+ * PANGO_TYPE_TAB_ARRAY:
52
+ *
53
+ * The #GObject type for #PangoTabArray.
54
+ */
44
55
  #define PANGO_TYPE_TAB_ARRAY (pango_tab_array_get_type ())
45
56
 
46
57
  PangoTabArray *pango_tab_array_new (gint initial_size,
@@ -40,10 +40,53 @@ typedef struct _PangoRectangle PangoRectangle;
40
40
 
41
41
 
42
42
  /* A index of a glyph into a font. Rendering system dependent */
43
+ /**
44
+ * PangoGlyph:
45
+ *
46
+ * A #PangoGlyph represents a single glyph in the output form of a string.
47
+ */
43
48
  typedef guint32 PangoGlyph;
44
49
 
45
50
 
46
51
 
52
+ /**
53
+ * PANGO_SCALE:
54
+ *
55
+ * The %PANGO_SCALE macro represents the scale between dimensions used
56
+ * for Pango distances and device units. (The definition of device
57
+ * units is dependent on the output device; it will typically be pixels
58
+ * for a screen, and points for a printer.) %PANGO_SCALE is currently
59
+ * 1024, but this may be changed in the future.
60
+ *
61
+ * When setting font sizes, device units are always considered to be
62
+ * points (as in "12 point font"), rather than pixels.
63
+ */
64
+ /**
65
+ * PANGO_PIXELS:
66
+ * @d: a dimension in Pango units.
67
+ *
68
+ * Converts a dimension to device units by rounding.
69
+ *
70
+ * Return value: rounded dimension in device units.
71
+ */
72
+ /**
73
+ * PANGO_PIXELS_FLOOR:
74
+ * @d: a dimension in Pango units.
75
+ *
76
+ * Converts a dimension to device units by flooring.
77
+ *
78
+ * Return value: floored dimension in device units.
79
+ * Since: 1.14
80
+ */
81
+ /**
82
+ * PANGO_PIXELS_CEIL:
83
+ * @d: a dimension in Pango units.
84
+ *
85
+ * Converts a dimension to device units by ceiling.
86
+ *
87
+ * Return value: ceiled dimension in device units.
88
+ * Since: 1.14
89
+ */
47
90
  #define PANGO_SCALE 1024
48
91
  #define PANGO_PIXELS(d) (((int)(d) + 512) >> 10)
49
92
  #define PANGO_PIXELS_FLOOR(d) (((int)(d)) >> 10)
@@ -57,6 +100,16 @@ typedef guint32 PangoGlyph;
57
100
  * PANGO_PIXELS also behaves differently for +512 and -512.
58
101
  */
59
102
 
103
+ /**
104
+ * PANGO_UNITS_ROUND:
105
+ * @d: a dimension in Pango units.
106
+ *
107
+ * Rounds a dimension to whole device units, but does not
108
+ * convert it to device units.
109
+ *
110
+ * Return value: rounded dimension in Pango units.
111
+ * Since: 1.18
112
+ */
60
113
  #define PANGO_UNITS_ROUND(d) \
61
114
  (((d) + (PANGO_SCALE >> 1)) & ~(PANGO_SCALE - 1))
62
115
 
@@ -66,8 +119,17 @@ double pango_units_to_double (int i) G_GNUC_CONST;
66
119
 
67
120
 
68
121
 
69
- /* A rectangle. Used to store logical and physical extents of glyphs,
70
- * runs, strings, etc.
122
+ /**
123
+ * PangoRectangle:
124
+ * @x: X coordinate of the left side of the rectangle.
125
+ * @y: Y coordinate of the the top side of the rectangle.
126
+ * @width: width of the rectangle.
127
+ * @height: height of the rectangle.
128
+ *
129
+ * The #PangoRectangle structure represents a rectangle. It is frequently
130
+ * used to represent the logical or ink extents of a single glyph or section
131
+ * of text. (See, for instance, pango_font_get_glyph_extents())
132
+ *
71
133
  */
72
134
  struct _PangoRectangle
73
135
  {
@@ -79,6 +141,44 @@ struct _PangoRectangle
79
141
 
80
142
  /* Macros to translate from extents rectangles to ascent/descent/lbearing/rbearing
81
143
  */
144
+ /**
145
+ * PANGO_ASCENT:
146
+ * @rect: a #PangoRectangle
147
+ *
148
+ * Extracts the <firstterm>ascent</firstterm> from a #PangoRectangle
149
+ * representing glyph extents. The ascent is the distance from the
150
+ * baseline to the highest point of the character. This is positive if the
151
+ * glyph ascends above the baseline.
152
+ */
153
+ /**
154
+ * PANGO_DESCENT:
155
+ * @rect: a #PangoRectangle
156
+ *
157
+ * Extracts the <firstterm>descent</firstterm> from a #PangoRectangle
158
+ * representing glyph extents. The descent is the distance from the
159
+ * baseline to the lowest point of the character. This is positive if the
160
+ * glyph descends below the baseline.
161
+ */
162
+ /**
163
+ * PANGO_LBEARING:
164
+ * @rect: a #PangoRectangle
165
+ *
166
+ * Extracts the <firstterm>left bearing</firstterm> from a #PangoRectangle
167
+ * representing glyph extents. The left bearing is the distance from the
168
+ * horizontal origin to the farthest left point of the character.
169
+ * This is positive for characters drawn completely to the right of the
170
+ * glyph origin.
171
+ */
172
+ /**
173
+ * PANGO_RBEARING:
174
+ * @rect: a #PangoRectangle
175
+ *
176
+ * Extracts the <firstterm>right bearing</firstterm> from a #PangoRectangle
177
+ * representing glyph extents. The right bearing is the distance from the
178
+ * horizontal origin to the farthest right point of the character.
179
+ * This is positive except for characters drawn completely to the left of the
180
+ * horizontal origin.
181
+ */
82
182
  #define PANGO_ASCENT(rect) (-(rect).y)
83
183
  #define PANGO_DESCENT(rect) ((rect).y + (rect).height)
84
184
  #define PANGO_LBEARING(rect) ((rect).x)