pango 2.0.2-x86-mingw32 → 2.0.3-x86-mingw32
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/README +2 -2
- data/Rakefile +7 -5
- data/ext/pango/extconf.rb +4 -4
- data/ext/pango/rbpango.c +0 -9
- data/ext/pango/rbpango.h +2 -10
- data/ext/pango/rbpangoanalysis.c +0 -4
- data/ext/pango/rbpangoattribute.c +1 -26
- data/ext/pango/rbpangoattrlist.c +0 -4
- data/ext/pango/rbpangocairo.c +13 -12
- data/ext/pango/rbpangocairocontext.c +6 -26
- data/ext/pango/rbpangocontext.c +2 -14
- data/ext/pango/rbpangofont.c +0 -12
- data/ext/pango/rbpangofontdescription.c +0 -5
- data/ext/pango/rbpangofontface.c +0 -6
- data/ext/pango/rbpangofontfamily.c +0 -3
- data/ext/pango/rbpangofontmap.c +0 -4
- data/ext/pango/rbpangofontmetrics.c +1 -4
- data/ext/pango/rbpangofontset.c +0 -4
- data/ext/pango/rbpangoglyphitem.c +0 -8
- data/ext/pango/rbpangoglyphstring.c +0 -4
- data/ext/pango/rbpangoitem.c +0 -16
- data/ext/pango/rbpangolanguage.c +0 -5
- data/ext/pango/rbpangolayout.c +36 -19
- data/ext/pango/rbpangolayoutline.c +0 -33
- data/ext/pango/rbpangologattr.c +0 -5
- data/ext/pango/rbpangomatrix.c +0 -10
- data/ext/pango/rbpangoprivate.h +0 -4
- data/ext/pango/rbpangorenderer.c +0 -6
- data/ext/pango/rbpangoscript.c +0 -4
- data/ext/pango/rbpangoscriptiter.c +0 -5
- data/lib/1.9/pango.so +0 -0
- data/lib/2.0/pango.so +0 -0
- data/test/{test_layout.rb → test-layout.rb} +14 -0
- data/vendor/local/bin/hb-ot-shape-closure.exe +0 -0
- data/vendor/local/bin/hb-shape.exe +0 -0
- data/vendor/local/bin/hb-view.exe +0 -0
- data/vendor/local/bin/libharfbuzz-0.dll +0 -0
- data/vendor/local/bin/libpango-1.0-0.dll +0 -0
- data/vendor/local/bin/libpangocairo-1.0-0.dll +0 -0
- data/vendor/local/bin/libpangoft2-1.0-0.dll +0 -0
- data/vendor/local/bin/libpangowin32-1.0-0.dll +0 -0
- data/vendor/local/bin/libstdc++-6.dll +0 -0
- data/vendor/local/bin/pango-querymodules.exe +0 -0
- data/vendor/local/bin/pango-view.exe +0 -0
- data/vendor/local/include/harfbuzz/hb-buffer.h +10 -10
- data/vendor/local/include/harfbuzz/hb-common.h +147 -131
- data/vendor/local/include/harfbuzz/{hb-uniscribe.h → hb-deprecated.h} +15 -13
- data/vendor/local/include/harfbuzz/hb-face.h +117 -0
- data/vendor/local/include/harfbuzz/hb-font.h +130 -77
- data/vendor/local/include/harfbuzz/hb-ot-layout.h +6 -0
- data/vendor/local/include/harfbuzz/hb-set.h +2 -0
- data/vendor/local/include/harfbuzz/hb-unicode.h +97 -9
- data/vendor/local/include/harfbuzz/hb-version.h +2 -2
- data/vendor/local/include/harfbuzz/hb.h +2 -0
- data/vendor/local/include/pango-1.0/pango/pango-attributes.h +213 -4
- data/vendor/local/include/pango-1.0/pango/pango-break.h +53 -0
- data/vendor/local/include/pango-1.0/pango/pango-coverage.h +21 -0
- data/vendor/local/include/pango-1.0/pango/pango-engine.h +46 -0
- data/vendor/local/include/pango-1.0/pango/pango-features.h +2 -2
- data/vendor/local/include/pango-1.0/pango/pango-font.h +234 -0
- data/vendor/local/include/pango-1.0/pango/pango-fontmap.h +68 -0
- data/vendor/local/include/pango-1.0/pango/pango-fontset.h +42 -0
- data/vendor/local/include/pango-1.0/pango/pango-glyph-item.h +64 -0
- data/vendor/local/include/pango-1.0/pango/pango-glyph.h +55 -0
- data/vendor/local/include/pango-1.0/pango/pango-item.h +28 -0
- data/vendor/local/include/pango-1.0/pango/pango-language.h +5 -0
- data/vendor/local/include/pango-1.0/pango/pango-layout.h +43 -0
- data/vendor/local/include/pango-1.0/pango/pango-modules.h +11 -0
- data/vendor/local/include/pango-1.0/pango/pango-ot.h +149 -0
- data/vendor/local/include/pango-1.0/pango/pango-script.h +102 -0
- data/vendor/local/include/pango-1.0/pango/pango-tabs.h +11 -0
- data/vendor/local/include/pango-1.0/pango/pango-types.h +102 -2
- data/vendor/local/include/pango-1.0/pango/pango-utils.h +44 -0
- data/vendor/local/include/pango-1.0/pango/pangocairo.h +14 -0
- data/vendor/local/include/pango-1.0/pango/pangofc-fontmap.h +2 -2
- data/vendor/local/include/pango-1.0/pango/pangoft2.h +13 -0
- data/vendor/local/include/pango-1.0/pango/pangowin32.h +6 -0
- data/vendor/local/lib/girepository-1.0/Pango-1.0.typelib +0 -0
- data/vendor/local/lib/girepository-1.0/PangoCairo-1.0.typelib +0 -0
- data/vendor/local/lib/libharfbuzz.dll.a +0 -0
- data/vendor/local/lib/libharfbuzz.la +5 -5
- data/vendor/local/lib/libpango-1.0.dll.a +0 -0
- data/vendor/local/lib/libpango-1.0.la +2 -2
- data/vendor/local/lib/libpangocairo-1.0.dll.a +0 -0
- data/vendor/local/lib/libpangocairo-1.0.la +4 -4
- data/vendor/local/lib/libpangoft2-1.0.dll.a +0 -0
- data/vendor/local/lib/libpangoft2-1.0.la +3 -3
- data/vendor/local/lib/libpangowin32-1.0.dll.a +0 -0
- data/vendor/local/lib/libpangowin32-1.0.la +2 -2
- data/vendor/local/lib/pango/1.8.0/modules/pango-arabic-lang.dll +0 -0
- data/vendor/local/lib/pango/1.8.0/modules/pango-arabic-lang.dll.a +0 -0
- data/vendor/local/lib/pango/1.8.0/modules/pango-basic-fc.dll +0 -0
- data/vendor/local/lib/pango/1.8.0/modules/pango-basic-fc.dll.a +0 -0
- data/vendor/local/lib/pango/1.8.0/modules/pango-basic-fc.la +1 -1
- data/vendor/local/lib/pango/1.8.0/modules/pango-basic-win32.dll +0 -0
- data/vendor/local/lib/pango/1.8.0/modules/pango-basic-win32.dll.a +0 -0
- data/vendor/local/lib/pango/1.8.0/modules/pango-indic-lang.dll +0 -0
- data/vendor/local/lib/pango/1.8.0/modules/pango-indic-lang.dll.a +0 -0
- data/vendor/local/lib/pkgconfig/harfbuzz.pc +5 -5
- data/vendor/local/lib/pkgconfig/pango.pc +1 -1
- data/vendor/local/lib/pkgconfig/pangocairo.pc +1 -1
- data/vendor/local/lib/pkgconfig/pangoft2.pc +1 -1
- data/vendor/local/lib/pkgconfig/pangowin32.pc +1 -1
- data/vendor/local/share/gir-1.0/Pango-1.0.gir +1824 -1434
- data/vendor/local/share/gir-1.0/PangoCairo-1.0.gir +109 -103
- data/vendor/local/share/gir-1.0/PangoFT2-1.0.gir +18 -15
- data/vendor/local/share/gtk-doc/html/harfbuzz/annotation-glossary.html +71 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/api-index-full.html +1419 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/ch01.html +98 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/deprecated-api-index.html +48 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-blob.html +415 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-buffer.html +1045 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-common.html +1073 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-coretext.html +67 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-deprecated.html +90 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-face.html +344 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-font.html +1617 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-ft.html +130 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-glib.html +75 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-gobject.html +52 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-graphite2.html +76 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-icu.html +75 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-ot-layout.html +544 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-ot-tag.html +105 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-ot.html +67 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-set.html +540 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-shape-plan.html +264 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-shape.html +194 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-unicode.html +1180 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-uniscribe.html +67 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-version.html +156 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb.html +52 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz.devhelp2 +591 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/home.png +0 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/index.html +105 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/index.sgml +650 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/left-insensitive.png +0 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/left.png +0 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/object-tree.html +32 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/right-insensitive.png +0 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/right.png +0 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/style.css +321 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/up-insensitive.png +0 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/up.png +0 -0
- data/vendor/local/share/gtk-doc/html/pango/PangoEngineLang.html +3 -4
- data/vendor/local/share/gtk-doc/html/pango/PangoEngineShape.html +3 -4
- data/vendor/local/share/gtk-doc/html/pango/PangoFcDecoder.html +2 -2
- data/vendor/local/share/gtk-doc/html/pango/PangoFcFont.html +4 -9
- data/vendor/local/share/gtk-doc/html/pango/PangoFcFontMap.html +8 -13
- data/vendor/local/share/gtk-doc/html/pango/PangoMarkupFormat.html +2 -2
- data/vendor/local/share/gtk-doc/html/pango/{pango-pango-renderer.html → PangoRenderer.html} +99 -102
- data/vendor/local/share/gtk-doc/html/pango/annotation-glossary.html +20 -29
- data/vendor/local/share/gtk-doc/html/pango/api-index-1-10.html +2 -2
- data/vendor/local/share/gtk-doc/html/pango/api-index-1-12.html +2 -2
- data/vendor/local/share/gtk-doc/html/pango/api-index-1-14.html +2 -2
- data/vendor/local/share/gtk-doc/html/pango/api-index-1-16.html +6 -2
- data/vendor/local/share/gtk-doc/html/pango/api-index-1-18.html +2 -2
- data/vendor/local/share/gtk-doc/html/pango/api-index-1-2.html +2 -2
- data/vendor/local/share/gtk-doc/html/pango/api-index-1-20.html +4 -11
- data/vendor/local/share/gtk-doc/html/pango/api-index-1-22.html +3 -3
- data/vendor/local/share/gtk-doc/html/pango/api-index-1-24.html +15 -4
- data/vendor/local/share/gtk-doc/html/pango/api-index-1-26.html +4 -4
- data/vendor/local/share/gtk-doc/html/pango/api-index-1-30.html +6 -6
- data/vendor/local/share/gtk-doc/html/pango/api-index-1-31-0.html +42 -0
- data/vendor/local/share/gtk-doc/html/pango/api-index-1-32-4.html +58 -0
- data/vendor/local/share/gtk-doc/html/pango/api-index-1-32.html +6 -5
- data/vendor/local/share/gtk-doc/html/pango/api-index-1-34.html +41 -0
- data/vendor/local/share/gtk-doc/html/pango/api-index-1-4.html +2 -2
- data/vendor/local/share/gtk-doc/html/pango/api-index-1-6.html +2 -2
- data/vendor/local/share/gtk-doc/html/pango/api-index-1-8.html +19 -19
- data/vendor/local/share/gtk-doc/html/pango/api-index-deprecated.html +2 -2
- data/vendor/local/share/gtk-doc/html/pango/api-index-full.html +31 -27
- data/vendor/local/share/gtk-doc/html/pango/index.html +7 -5
- data/vendor/local/share/gtk-doc/html/pango/index.sgml +38 -38
- data/vendor/local/share/gtk-doc/html/pango/lowlevel.html +5 -5
- data/vendor/local/share/gtk-doc/html/pango/pango-Bidirectional-Text.html +6 -9
- data/vendor/local/share/gtk-doc/html/pango/pango-Cairo-Rendering.html +113 -66
- data/vendor/local/share/gtk-doc/html/pango/pango-CoreText-Fonts.html +2 -2
- data/vendor/local/share/gtk-doc/html/pango/pango-Coverage-Maps.html +8 -12
- data/vendor/local/share/gtk-doc/html/pango/pango-Engines.html +5 -8
- data/vendor/local/share/gtk-doc/html/pango/pango-Fonts.html +90 -53
- data/vendor/local/share/gtk-doc/html/pango/pango-FreeType-Fonts-and-Rendering.html +10 -10
- data/vendor/local/share/gtk-doc/html/pango/pango-Glyph-Storage.html +21 -8
- data/vendor/local/share/gtk-doc/html/pango/pango-Layout-Objects.html +44 -15
- data/vendor/local/share/gtk-doc/html/pango/pango-Miscellaneous-Utilities.html +2 -2
- data/vendor/local/share/gtk-doc/html/pango/pango-Modules.html +2 -2
- data/vendor/local/share/gtk-doc/html/pango/pango-OpenType-Font-Handling.html +12 -12
- data/vendor/local/share/gtk-doc/html/pango/pango-Scripts-and-Languages.html +87 -90
- data/vendor/local/share/gtk-doc/html/pango/pango-Tab-Stops.html +2 -5
- data/vendor/local/share/gtk-doc/html/pango/pango-Text-Attributes.html +38 -31
- data/vendor/local/share/gtk-doc/html/pango/pango-Text-Processing.html +10 -18
- data/vendor/local/share/gtk-doc/html/pango/pango-Version-Checking.html +10 -11
- data/vendor/local/share/gtk-doc/html/pango/pango-Vertical-Text.html +4 -6
- data/vendor/local/share/gtk-doc/html/pango/pango-Win32-Fonts-and-Rendering.html +3 -4
- data/vendor/local/share/gtk-doc/html/pango/pango-Xft-Fonts-and-Rendering.html +12 -12
- data/vendor/local/share/gtk-doc/html/pango/pango-hierarchy.html +4 -4
- data/vendor/local/share/gtk-doc/html/pango/pango-querymodules.html +2 -2
- data/vendor/local/share/gtk-doc/html/pango/pango.devhelp2 +34 -31
- data/vendor/local/share/gtk-doc/html/pango/pango.html +2 -2
- data/vendor/local/share/gtk-doc/html/pango/rendering.html +2 -2
- data/vendor/local/share/gtk-doc/html/pango/tools.html +2 -2
- data/vendor/local/share/man/man1/pango-querymodules.1 +2 -2
- data/vendor/local/share/man/man1/pango-view.1 +2 -2
- metadata +57 -24
- data/vendor/local/bin/libgcc_s_sjlj-1.dll +0 -0
- data/vendor/local/include/harfbuzz/hb-gobject.h +0 -69
- 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
|
-
|
70
|
-
*
|
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)
|