pango 2.0.0-x86-mingw32 → 2.0.1-x86-mingw32
Sign up to get free protection for your applications and to get access to all the features.
- data/Rakefile +29 -3
- data/ext/pango/extconf.rb +7 -0
- data/ext/pango/rbpangocairo.c +12 -0
- data/ext/pango/rbpangofontmap.c +22 -3
- data/lib/1.9/pango.so +0 -0
- data/lib/2.0/pango.so +0 -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/libgcc_s_sjlj-1.dll +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/etc/pango/pango.modules +1 -0
- data/vendor/local/include/harfbuzz/hb-blob.h +127 -0
- data/vendor/local/include/harfbuzz/hb-buffer.h +323 -0
- data/vendor/local/include/harfbuzz/hb-common.h +317 -0
- data/vendor/local/include/harfbuzz/hb-font.h +454 -0
- data/vendor/local/include/harfbuzz/hb-ft.h +62 -0
- data/vendor/local/include/harfbuzz/hb-glib.h +52 -0
- data/vendor/local/include/harfbuzz/hb-gobject.h +69 -0
- data/vendor/local/include/harfbuzz/hb-ot-layout.h +293 -0
- data/vendor/local/include/harfbuzz/hb-ot-tag.h +59 -0
- data/vendor/local/include/harfbuzz/hb-ot.h +49 -0
- data/vendor/local/include/harfbuzz/hb-set.h +152 -0
- data/vendor/local/include/harfbuzz/hb-shape-plan.h +89 -0
- data/vendor/local/include/harfbuzz/hb-shape.h +81 -0
- data/vendor/local/include/harfbuzz/hb-unicode.h +357 -0
- data/vendor/local/include/harfbuzz/hb-uniscribe.h +49 -0
- data/vendor/local/include/harfbuzz/hb-version.h +66 -0
- data/vendor/local/include/harfbuzz/hb.h +45 -0
- data/vendor/local/include/pango-1.0/pango/pango-attributes.h +2 -2
- data/vendor/local/include/pango-1.0/pango/pango-features.h +2 -2
- data/vendor/local/include/pango-1.0/pango/pango-ot.h +242 -0
- data/vendor/local/include/pango-1.0/pango/pangofc-decoder.h +110 -0
- data/vendor/local/include/pango-1.0/pango/pangofc-font.h +153 -0
- data/vendor/local/include/pango-1.0/pango/pangofc-fontmap.h +289 -0
- data/vendor/local/include/pango-1.0/pango/pangoft2.h +120 -0
- data/vendor/local/lib/girepository-1.0/PangoCairo-1.0.typelib +0 -0
- data/vendor/local/lib/girepository-1.0/PangoFT2-1.0.typelib +0 -0
- data/vendor/local/lib/libharfbuzz.dll.a +0 -0
- data/vendor/local/lib/libharfbuzz.la +41 -0
- data/vendor/local/lib/libpango-1.0.dll.a +0 -0
- data/vendor/local/lib/libpango-1.0.la +1 -1
- data/vendor/local/lib/libpangocairo-1.0.dll.a +0 -0
- data/vendor/local/lib/libpangocairo-1.0.la +2 -2
- data/vendor/local/lib/libpangoft2-1.0.dll.a +0 -0
- data/vendor/local/lib/libpangoft2-1.0.la +41 -0
- data/vendor/local/lib/libpangowin32-1.0.dll.a +0 -0
- data/vendor/local/lib/libpangowin32-1.0.la +1 -1
- 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 +41 -0
- 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 +11 -0
- data/vendor/local/lib/pkgconfig/pango.pc +1 -1
- data/vendor/local/lib/pkgconfig/pangocairo.pc +2 -2
- data/vendor/local/lib/pkgconfig/pangoft2.pc +12 -0
- data/vendor/local/lib/pkgconfig/pangowin32.pc +1 -1
- data/vendor/local/share/gir-1.0/Pango-1.0.gir +1 -1
- data/vendor/local/share/gir-1.0/PangoCairo-1.0.gir +22 -1
- data/vendor/local/share/gir-1.0/PangoFT2-1.0.gir +349 -0
- data/vendor/local/share/gtk-doc/html/pango/PangoEngineLang.html +5 -5
- data/vendor/local/share/gtk-doc/html/pango/PangoEngineShape.html +4 -4
- data/vendor/local/share/gtk-doc/html/pango/PangoFcDecoder.html +3 -3
- data/vendor/local/share/gtk-doc/html/pango/PangoFcFont.html +17 -17
- data/vendor/local/share/gtk-doc/html/pango/PangoFcFontMap.html +22 -22
- data/vendor/local/share/gtk-doc/html/pango/index.html +1 -1
- data/vendor/local/share/gtk-doc/html/pango/pango-Bidirectional-Text.html +15 -15
- data/vendor/local/share/gtk-doc/html/pango/pango-Cairo-Rendering.html +30 -30
- data/vendor/local/share/gtk-doc/html/pango/pango-CoreText-Fonts.html +1 -1
- data/vendor/local/share/gtk-doc/html/pango/pango-Coverage-Maps.html +7 -7
- data/vendor/local/share/gtk-doc/html/pango/pango-Engines.html +11 -11
- data/vendor/local/share/gtk-doc/html/pango/pango-Fonts.html +123 -123
- data/vendor/local/share/gtk-doc/html/pango/pango-FreeType-Fonts-and-Rendering.html +15 -15
- data/vendor/local/share/gtk-doc/html/pango/pango-Glyph-Storage.html +56 -56
- data/vendor/local/share/gtk-doc/html/pango/pango-Layout-Objects.html +130 -130
- data/vendor/local/share/gtk-doc/html/pango/pango-Miscellaneous-Utilities.html +76 -76
- data/vendor/local/share/gtk-doc/html/pango/pango-Modules.html +9 -9
- data/vendor/local/share/gtk-doc/html/pango/pango-OpenType-Font-Handling.html +101 -101
- data/vendor/local/share/gtk-doc/html/pango/pango-Scripts-and-Languages.html +38 -38
- data/vendor/local/share/gtk-doc/html/pango/pango-Tab-Stops.html +35 -35
- data/vendor/local/share/gtk-doc/html/pango/pango-Text-Attributes.html +135 -135
- data/vendor/local/share/gtk-doc/html/pango/pango-Text-Processing.html +75 -75
- data/vendor/local/share/gtk-doc/html/pango/pango-Version-Checking.html +3 -3
- data/vendor/local/share/gtk-doc/html/pango/pango-Vertical-Text.html +8 -8
- data/vendor/local/share/gtk-doc/html/pango/pango-Win32-Fonts-and-Rendering.html +22 -22
- data/vendor/local/share/gtk-doc/html/pango/pango-Xft-Fonts-and-Rendering.html +35 -35
- data/vendor/local/share/gtk-doc/html/pango/pango-hierarchy.html +1 -1
- data/vendor/local/share/gtk-doc/html/pango/pango-pango-renderer.html +11 -11
- data/vendor/local/share/license/harfbuzz/AUTHORS +8 -0
- data/vendor/local/share/license/harfbuzz/COPYING +36 -0
- data/vendor/local/share/man/man1/pango-querymodules.1 +2 -2
- data/vendor/local/share/man/man1/pango-view.1 +1 -1
- metadata +50 -8
@@ -0,0 +1,454 @@
|
|
1
|
+
/*
|
2
|
+
* Copyright © 2009 Red Hat, Inc.
|
3
|
+
*
|
4
|
+
* This is part of HarfBuzz, a text shaping library.
|
5
|
+
*
|
6
|
+
* Permission is hereby granted, without written agreement and without
|
7
|
+
* license or royalty fees, to use, copy, modify, and distribute this
|
8
|
+
* software and its documentation for any purpose, provided that the
|
9
|
+
* above copyright notice and the following two paragraphs appear in
|
10
|
+
* all copies of this software.
|
11
|
+
*
|
12
|
+
* IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR
|
13
|
+
* DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
|
14
|
+
* ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN
|
15
|
+
* IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
|
16
|
+
* DAMAGE.
|
17
|
+
*
|
18
|
+
* THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING,
|
19
|
+
* BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
|
20
|
+
* FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
|
21
|
+
* ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO
|
22
|
+
* PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
|
23
|
+
*
|
24
|
+
* Red Hat Author(s): Behdad Esfahbod
|
25
|
+
*/
|
26
|
+
|
27
|
+
#ifndef HB_H_IN
|
28
|
+
#error "Include <hb.h> instead."
|
29
|
+
#endif
|
30
|
+
|
31
|
+
#ifndef HB_FONT_H
|
32
|
+
#define HB_FONT_H
|
33
|
+
|
34
|
+
#include "hb-common.h"
|
35
|
+
#include "hb-blob.h"
|
36
|
+
|
37
|
+
HB_BEGIN_DECLS
|
38
|
+
|
39
|
+
|
40
|
+
typedef struct hb_face_t hb_face_t;
|
41
|
+
typedef struct hb_font_t hb_font_t;
|
42
|
+
|
43
|
+
/*
|
44
|
+
* hb_face_t
|
45
|
+
*/
|
46
|
+
|
47
|
+
hb_face_t *
|
48
|
+
hb_face_create (hb_blob_t *blob,
|
49
|
+
unsigned int index);
|
50
|
+
|
51
|
+
typedef hb_blob_t * (*hb_reference_table_func_t) (hb_face_t *face, hb_tag_t tag, void *user_data);
|
52
|
+
|
53
|
+
/* calls destroy() when not needing user_data anymore */
|
54
|
+
hb_face_t *
|
55
|
+
hb_face_create_for_tables (hb_reference_table_func_t reference_table_func,
|
56
|
+
void *user_data,
|
57
|
+
hb_destroy_func_t destroy);
|
58
|
+
|
59
|
+
hb_face_t *
|
60
|
+
hb_face_get_empty (void);
|
61
|
+
|
62
|
+
hb_face_t *
|
63
|
+
hb_face_reference (hb_face_t *face);
|
64
|
+
|
65
|
+
void
|
66
|
+
hb_face_destroy (hb_face_t *face);
|
67
|
+
|
68
|
+
hb_bool_t
|
69
|
+
hb_face_set_user_data (hb_face_t *face,
|
70
|
+
hb_user_data_key_t *key,
|
71
|
+
void * data,
|
72
|
+
hb_destroy_func_t destroy,
|
73
|
+
hb_bool_t replace);
|
74
|
+
|
75
|
+
|
76
|
+
void *
|
77
|
+
hb_face_get_user_data (hb_face_t *face,
|
78
|
+
hb_user_data_key_t *key);
|
79
|
+
|
80
|
+
void
|
81
|
+
hb_face_make_immutable (hb_face_t *face);
|
82
|
+
|
83
|
+
hb_bool_t
|
84
|
+
hb_face_is_immutable (hb_face_t *face);
|
85
|
+
|
86
|
+
|
87
|
+
hb_blob_t *
|
88
|
+
hb_face_reference_table (hb_face_t *face,
|
89
|
+
hb_tag_t tag);
|
90
|
+
|
91
|
+
hb_blob_t *
|
92
|
+
hb_face_reference_blob (hb_face_t *face);
|
93
|
+
|
94
|
+
void
|
95
|
+
hb_face_set_index (hb_face_t *face,
|
96
|
+
unsigned int index);
|
97
|
+
|
98
|
+
unsigned int
|
99
|
+
hb_face_get_index (hb_face_t *face);
|
100
|
+
|
101
|
+
void
|
102
|
+
hb_face_set_upem (hb_face_t *face,
|
103
|
+
unsigned int upem);
|
104
|
+
|
105
|
+
unsigned int
|
106
|
+
hb_face_get_upem (hb_face_t *face);
|
107
|
+
|
108
|
+
void
|
109
|
+
hb_face_set_glyph_count (hb_face_t *face,
|
110
|
+
unsigned int glyph_count);
|
111
|
+
|
112
|
+
unsigned int
|
113
|
+
hb_face_get_glyph_count (hb_face_t *face);
|
114
|
+
|
115
|
+
|
116
|
+
/*
|
117
|
+
* hb_font_funcs_t
|
118
|
+
*/
|
119
|
+
|
120
|
+
typedef struct hb_font_funcs_t hb_font_funcs_t;
|
121
|
+
|
122
|
+
hb_font_funcs_t *
|
123
|
+
hb_font_funcs_create (void);
|
124
|
+
|
125
|
+
hb_font_funcs_t *
|
126
|
+
hb_font_funcs_get_empty (void);
|
127
|
+
|
128
|
+
hb_font_funcs_t *
|
129
|
+
hb_font_funcs_reference (hb_font_funcs_t *ffuncs);
|
130
|
+
|
131
|
+
void
|
132
|
+
hb_font_funcs_destroy (hb_font_funcs_t *ffuncs);
|
133
|
+
|
134
|
+
hb_bool_t
|
135
|
+
hb_font_funcs_set_user_data (hb_font_funcs_t *ffuncs,
|
136
|
+
hb_user_data_key_t *key,
|
137
|
+
void * data,
|
138
|
+
hb_destroy_func_t destroy,
|
139
|
+
hb_bool_t replace);
|
140
|
+
|
141
|
+
|
142
|
+
void *
|
143
|
+
hb_font_funcs_get_user_data (hb_font_funcs_t *ffuncs,
|
144
|
+
hb_user_data_key_t *key);
|
145
|
+
|
146
|
+
|
147
|
+
void
|
148
|
+
hb_font_funcs_make_immutable (hb_font_funcs_t *ffuncs);
|
149
|
+
|
150
|
+
hb_bool_t
|
151
|
+
hb_font_funcs_is_immutable (hb_font_funcs_t *ffuncs);
|
152
|
+
|
153
|
+
|
154
|
+
/* glyph extents */
|
155
|
+
|
156
|
+
typedef struct hb_glyph_extents_t
|
157
|
+
{
|
158
|
+
hb_position_t x_bearing;
|
159
|
+
hb_position_t y_bearing;
|
160
|
+
hb_position_t width;
|
161
|
+
hb_position_t height;
|
162
|
+
} hb_glyph_extents_t;
|
163
|
+
|
164
|
+
|
165
|
+
/* func types */
|
166
|
+
|
167
|
+
typedef hb_bool_t (*hb_font_get_glyph_func_t) (hb_font_t *font, void *font_data,
|
168
|
+
hb_codepoint_t unicode, hb_codepoint_t variation_selector,
|
169
|
+
hb_codepoint_t *glyph,
|
170
|
+
void *user_data);
|
171
|
+
|
172
|
+
|
173
|
+
typedef hb_position_t (*hb_font_get_glyph_advance_func_t) (hb_font_t *font, void *font_data,
|
174
|
+
hb_codepoint_t glyph,
|
175
|
+
void *user_data);
|
176
|
+
typedef hb_font_get_glyph_advance_func_t hb_font_get_glyph_h_advance_func_t;
|
177
|
+
typedef hb_font_get_glyph_advance_func_t hb_font_get_glyph_v_advance_func_t;
|
178
|
+
|
179
|
+
typedef hb_bool_t (*hb_font_get_glyph_origin_func_t) (hb_font_t *font, void *font_data,
|
180
|
+
hb_codepoint_t glyph,
|
181
|
+
hb_position_t *x, hb_position_t *y,
|
182
|
+
void *user_data);
|
183
|
+
typedef hb_font_get_glyph_origin_func_t hb_font_get_glyph_h_origin_func_t;
|
184
|
+
typedef hb_font_get_glyph_origin_func_t hb_font_get_glyph_v_origin_func_t;
|
185
|
+
|
186
|
+
typedef hb_position_t (*hb_font_get_glyph_kerning_func_t) (hb_font_t *font, void *font_data,
|
187
|
+
hb_codepoint_t first_glyph, hb_codepoint_t second_glyph,
|
188
|
+
void *user_data);
|
189
|
+
typedef hb_font_get_glyph_kerning_func_t hb_font_get_glyph_h_kerning_func_t;
|
190
|
+
typedef hb_font_get_glyph_kerning_func_t hb_font_get_glyph_v_kerning_func_t;
|
191
|
+
|
192
|
+
|
193
|
+
typedef hb_bool_t (*hb_font_get_glyph_extents_func_t) (hb_font_t *font, void *font_data,
|
194
|
+
hb_codepoint_t glyph,
|
195
|
+
hb_glyph_extents_t *extents,
|
196
|
+
void *user_data);
|
197
|
+
typedef hb_bool_t (*hb_font_get_glyph_contour_point_func_t) (hb_font_t *font, void *font_data,
|
198
|
+
hb_codepoint_t glyph, unsigned int point_index,
|
199
|
+
hb_position_t *x, hb_position_t *y,
|
200
|
+
void *user_data);
|
201
|
+
|
202
|
+
|
203
|
+
typedef hb_bool_t (*hb_font_get_glyph_name_func_t) (hb_font_t *font, void *font_data,
|
204
|
+
hb_codepoint_t glyph,
|
205
|
+
char *name, unsigned int size,
|
206
|
+
void *user_data);
|
207
|
+
typedef hb_bool_t (*hb_font_get_glyph_from_name_func_t) (hb_font_t *font, void *font_data,
|
208
|
+
const char *name, int len, /* -1 means nul-terminated */
|
209
|
+
hb_codepoint_t *glyph,
|
210
|
+
void *user_data);
|
211
|
+
|
212
|
+
|
213
|
+
/* func setters */
|
214
|
+
|
215
|
+
void
|
216
|
+
hb_font_funcs_set_glyph_func (hb_font_funcs_t *ffuncs,
|
217
|
+
hb_font_get_glyph_func_t glyph_func,
|
218
|
+
void *user_data, hb_destroy_func_t destroy);
|
219
|
+
|
220
|
+
void
|
221
|
+
hb_font_funcs_set_glyph_h_advance_func (hb_font_funcs_t *ffuncs,
|
222
|
+
hb_font_get_glyph_h_advance_func_t func,
|
223
|
+
void *user_data, hb_destroy_func_t destroy);
|
224
|
+
void
|
225
|
+
hb_font_funcs_set_glyph_v_advance_func (hb_font_funcs_t *ffuncs,
|
226
|
+
hb_font_get_glyph_v_advance_func_t func,
|
227
|
+
void *user_data, hb_destroy_func_t destroy);
|
228
|
+
|
229
|
+
void
|
230
|
+
hb_font_funcs_set_glyph_h_origin_func (hb_font_funcs_t *ffuncs,
|
231
|
+
hb_font_get_glyph_h_origin_func_t func,
|
232
|
+
void *user_data, hb_destroy_func_t destroy);
|
233
|
+
void
|
234
|
+
hb_font_funcs_set_glyph_v_origin_func (hb_font_funcs_t *ffuncs,
|
235
|
+
hb_font_get_glyph_v_origin_func_t func,
|
236
|
+
void *user_data, hb_destroy_func_t destroy);
|
237
|
+
|
238
|
+
void
|
239
|
+
hb_font_funcs_set_glyph_h_kerning_func (hb_font_funcs_t *ffuncs,
|
240
|
+
hb_font_get_glyph_h_kerning_func_t func,
|
241
|
+
void *user_data, hb_destroy_func_t destroy);
|
242
|
+
void
|
243
|
+
hb_font_funcs_set_glyph_v_kerning_func (hb_font_funcs_t *ffuncs,
|
244
|
+
hb_font_get_glyph_v_kerning_func_t func,
|
245
|
+
void *user_data, hb_destroy_func_t destroy);
|
246
|
+
|
247
|
+
void
|
248
|
+
hb_font_funcs_set_glyph_extents_func (hb_font_funcs_t *ffuncs,
|
249
|
+
hb_font_get_glyph_extents_func_t func,
|
250
|
+
void *user_data, hb_destroy_func_t destroy);
|
251
|
+
void
|
252
|
+
hb_font_funcs_set_glyph_contour_point_func (hb_font_funcs_t *ffuncs,
|
253
|
+
hb_font_get_glyph_contour_point_func_t func,
|
254
|
+
void *user_data, hb_destroy_func_t destroy);
|
255
|
+
|
256
|
+
void
|
257
|
+
hb_font_funcs_set_glyph_name_func (hb_font_funcs_t *ffuncs,
|
258
|
+
hb_font_get_glyph_name_func_t glyph_func,
|
259
|
+
void *user_data, hb_destroy_func_t destroy);
|
260
|
+
void
|
261
|
+
hb_font_funcs_set_glyph_from_name_func (hb_font_funcs_t *ffuncs,
|
262
|
+
hb_font_get_glyph_from_name_func_t glyph_func,
|
263
|
+
void *user_data, hb_destroy_func_t destroy);
|
264
|
+
|
265
|
+
|
266
|
+
/* func dispatch */
|
267
|
+
|
268
|
+
hb_bool_t
|
269
|
+
hb_font_get_glyph (hb_font_t *font,
|
270
|
+
hb_codepoint_t unicode, hb_codepoint_t variation_selector,
|
271
|
+
hb_codepoint_t *glyph);
|
272
|
+
|
273
|
+
hb_position_t
|
274
|
+
hb_font_get_glyph_h_advance (hb_font_t *font,
|
275
|
+
hb_codepoint_t glyph);
|
276
|
+
hb_position_t
|
277
|
+
hb_font_get_glyph_v_advance (hb_font_t *font,
|
278
|
+
hb_codepoint_t glyph);
|
279
|
+
|
280
|
+
hb_bool_t
|
281
|
+
hb_font_get_glyph_h_origin (hb_font_t *font,
|
282
|
+
hb_codepoint_t glyph,
|
283
|
+
hb_position_t *x, hb_position_t *y);
|
284
|
+
hb_bool_t
|
285
|
+
hb_font_get_glyph_v_origin (hb_font_t *font,
|
286
|
+
hb_codepoint_t glyph,
|
287
|
+
hb_position_t *x, hb_position_t *y);
|
288
|
+
|
289
|
+
hb_position_t
|
290
|
+
hb_font_get_glyph_h_kerning (hb_font_t *font,
|
291
|
+
hb_codepoint_t left_glyph, hb_codepoint_t right_glyph);
|
292
|
+
hb_position_t
|
293
|
+
hb_font_get_glyph_v_kerning (hb_font_t *font,
|
294
|
+
hb_codepoint_t top_glyph, hb_codepoint_t bottom_glyph);
|
295
|
+
|
296
|
+
hb_bool_t
|
297
|
+
hb_font_get_glyph_extents (hb_font_t *font,
|
298
|
+
hb_codepoint_t glyph,
|
299
|
+
hb_glyph_extents_t *extents);
|
300
|
+
|
301
|
+
hb_bool_t
|
302
|
+
hb_font_get_glyph_contour_point (hb_font_t *font,
|
303
|
+
hb_codepoint_t glyph, unsigned int point_index,
|
304
|
+
hb_position_t *x, hb_position_t *y);
|
305
|
+
|
306
|
+
hb_bool_t
|
307
|
+
hb_font_get_glyph_name (hb_font_t *font,
|
308
|
+
hb_codepoint_t glyph,
|
309
|
+
char *name, unsigned int size);
|
310
|
+
hb_bool_t
|
311
|
+
hb_font_get_glyph_from_name (hb_font_t *font,
|
312
|
+
const char *name, int len, /* -1 means nul-terminated */
|
313
|
+
hb_codepoint_t *glyph);
|
314
|
+
|
315
|
+
|
316
|
+
/* high-level funcs, with fallback */
|
317
|
+
|
318
|
+
void
|
319
|
+
hb_font_get_glyph_advance_for_direction (hb_font_t *font,
|
320
|
+
hb_codepoint_t glyph,
|
321
|
+
hb_direction_t direction,
|
322
|
+
hb_position_t *x, hb_position_t *y);
|
323
|
+
void
|
324
|
+
hb_font_get_glyph_origin_for_direction (hb_font_t *font,
|
325
|
+
hb_codepoint_t glyph,
|
326
|
+
hb_direction_t direction,
|
327
|
+
hb_position_t *x, hb_position_t *y);
|
328
|
+
void
|
329
|
+
hb_font_add_glyph_origin_for_direction (hb_font_t *font,
|
330
|
+
hb_codepoint_t glyph,
|
331
|
+
hb_direction_t direction,
|
332
|
+
hb_position_t *x, hb_position_t *y);
|
333
|
+
void
|
334
|
+
hb_font_subtract_glyph_origin_for_direction (hb_font_t *font,
|
335
|
+
hb_codepoint_t glyph,
|
336
|
+
hb_direction_t direction,
|
337
|
+
hb_position_t *x, hb_position_t *y);
|
338
|
+
|
339
|
+
void
|
340
|
+
hb_font_get_glyph_kerning_for_direction (hb_font_t *font,
|
341
|
+
hb_codepoint_t first_glyph, hb_codepoint_t second_glyph,
|
342
|
+
hb_direction_t direction,
|
343
|
+
hb_position_t *x, hb_position_t *y);
|
344
|
+
|
345
|
+
hb_bool_t
|
346
|
+
hb_font_get_glyph_extents_for_origin (hb_font_t *font,
|
347
|
+
hb_codepoint_t glyph,
|
348
|
+
hb_direction_t direction,
|
349
|
+
hb_glyph_extents_t *extents);
|
350
|
+
|
351
|
+
hb_bool_t
|
352
|
+
hb_font_get_glyph_contour_point_for_origin (hb_font_t *font,
|
353
|
+
hb_codepoint_t glyph, unsigned int point_index,
|
354
|
+
hb_direction_t direction,
|
355
|
+
hb_position_t *x, hb_position_t *y);
|
356
|
+
|
357
|
+
/* Generates gidDDD if glyph has no name. */
|
358
|
+
void
|
359
|
+
hb_font_glyph_to_string (hb_font_t *font,
|
360
|
+
hb_codepoint_t glyph,
|
361
|
+
char *s, unsigned int size);
|
362
|
+
/* Parses gidDDD and uniUUUU strings automatically. */
|
363
|
+
hb_bool_t
|
364
|
+
hb_font_glyph_from_string (hb_font_t *font,
|
365
|
+
const char *s, int len, /* -1 means nul-terminated */
|
366
|
+
hb_codepoint_t *glyph);
|
367
|
+
|
368
|
+
|
369
|
+
/*
|
370
|
+
* hb_font_t
|
371
|
+
*/
|
372
|
+
|
373
|
+
/* Fonts are very light-weight objects */
|
374
|
+
|
375
|
+
hb_font_t *
|
376
|
+
hb_font_create (hb_face_t *face);
|
377
|
+
|
378
|
+
hb_font_t *
|
379
|
+
hb_font_create_sub_font (hb_font_t *parent);
|
380
|
+
|
381
|
+
hb_font_t *
|
382
|
+
hb_font_get_empty (void);
|
383
|
+
|
384
|
+
hb_font_t *
|
385
|
+
hb_font_reference (hb_font_t *font);
|
386
|
+
|
387
|
+
void
|
388
|
+
hb_font_destroy (hb_font_t *font);
|
389
|
+
|
390
|
+
hb_bool_t
|
391
|
+
hb_font_set_user_data (hb_font_t *font,
|
392
|
+
hb_user_data_key_t *key,
|
393
|
+
void * data,
|
394
|
+
hb_destroy_func_t destroy,
|
395
|
+
hb_bool_t replace);
|
396
|
+
|
397
|
+
|
398
|
+
void *
|
399
|
+
hb_font_get_user_data (hb_font_t *font,
|
400
|
+
hb_user_data_key_t *key);
|
401
|
+
|
402
|
+
void
|
403
|
+
hb_font_make_immutable (hb_font_t *font);
|
404
|
+
|
405
|
+
hb_bool_t
|
406
|
+
hb_font_is_immutable (hb_font_t *font);
|
407
|
+
|
408
|
+
hb_font_t *
|
409
|
+
hb_font_get_parent (hb_font_t *font);
|
410
|
+
|
411
|
+
hb_face_t *
|
412
|
+
hb_font_get_face (hb_font_t *font);
|
413
|
+
|
414
|
+
|
415
|
+
void
|
416
|
+
hb_font_set_funcs (hb_font_t *font,
|
417
|
+
hb_font_funcs_t *klass,
|
418
|
+
void *font_data,
|
419
|
+
hb_destroy_func_t destroy);
|
420
|
+
|
421
|
+
/* Be *very* careful with this function! */
|
422
|
+
void
|
423
|
+
hb_font_set_funcs_data (hb_font_t *font,
|
424
|
+
void *font_data,
|
425
|
+
hb_destroy_func_t destroy);
|
426
|
+
|
427
|
+
|
428
|
+
void
|
429
|
+
hb_font_set_scale (hb_font_t *font,
|
430
|
+
int x_scale,
|
431
|
+
int y_scale);
|
432
|
+
|
433
|
+
void
|
434
|
+
hb_font_get_scale (hb_font_t *font,
|
435
|
+
int *x_scale,
|
436
|
+
int *y_scale);
|
437
|
+
|
438
|
+
/*
|
439
|
+
* A zero value means "no hinting in that direction"
|
440
|
+
*/
|
441
|
+
void
|
442
|
+
hb_font_set_ppem (hb_font_t *font,
|
443
|
+
unsigned int x_ppem,
|
444
|
+
unsigned int y_ppem);
|
445
|
+
|
446
|
+
void
|
447
|
+
hb_font_get_ppem (hb_font_t *font,
|
448
|
+
unsigned int *x_ppem,
|
449
|
+
unsigned int *y_ppem);
|
450
|
+
|
451
|
+
|
452
|
+
HB_END_DECLS
|
453
|
+
|
454
|
+
#endif /* HB_FONT_H */
|
@@ -0,0 +1,62 @@
|
|
1
|
+
/*
|
2
|
+
* Copyright © 2009 Red Hat, Inc.
|
3
|
+
*
|
4
|
+
* This is part of HarfBuzz, a text shaping library.
|
5
|
+
*
|
6
|
+
* Permission is hereby granted, without written agreement and without
|
7
|
+
* license or royalty fees, to use, copy, modify, and distribute this
|
8
|
+
* software and its documentation for any purpose, provided that the
|
9
|
+
* above copyright notice and the following two paragraphs appear in
|
10
|
+
* all copies of this software.
|
11
|
+
*
|
12
|
+
* IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR
|
13
|
+
* DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
|
14
|
+
* ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN
|
15
|
+
* IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
|
16
|
+
* DAMAGE.
|
17
|
+
*
|
18
|
+
* THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING,
|
19
|
+
* BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
|
20
|
+
* FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
|
21
|
+
* ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO
|
22
|
+
* PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
|
23
|
+
*
|
24
|
+
* Red Hat Author(s): Behdad Esfahbod
|
25
|
+
*/
|
26
|
+
|
27
|
+
#ifndef HB_FT_H
|
28
|
+
#define HB_FT_H
|
29
|
+
|
30
|
+
#include "hb.h"
|
31
|
+
|
32
|
+
#include <ft2build.h>
|
33
|
+
#include FT_FREETYPE_H
|
34
|
+
|
35
|
+
HB_BEGIN_DECLS
|
36
|
+
|
37
|
+
/* Note: FreeType is not thread-safe. Hence, these functions are not either. */
|
38
|
+
|
39
|
+
hb_face_t *
|
40
|
+
hb_ft_face_create (FT_Face ft_face,
|
41
|
+
hb_destroy_func_t destroy);
|
42
|
+
|
43
|
+
hb_face_t *
|
44
|
+
hb_ft_face_create_cached (FT_Face ft_face);
|
45
|
+
|
46
|
+
hb_font_t *
|
47
|
+
hb_ft_font_create (FT_Face ft_face,
|
48
|
+
hb_destroy_func_t destroy);
|
49
|
+
|
50
|
+
|
51
|
+
|
52
|
+
/* Makes an hb_font_t use FreeType internally to implement font functions. */
|
53
|
+
void
|
54
|
+
hb_ft_font_set_funcs (hb_font_t *font);
|
55
|
+
|
56
|
+
FT_Face
|
57
|
+
hb_ft_font_get_face (hb_font_t *font);
|
58
|
+
|
59
|
+
|
60
|
+
HB_END_DECLS
|
61
|
+
|
62
|
+
#endif /* HB_FT_H */
|
@@ -0,0 +1,52 @@
|
|
1
|
+
/*
|
2
|
+
* Copyright © 2009 Red Hat, Inc.
|
3
|
+
* Copyright © 2011 Google, Inc.
|
4
|
+
*
|
5
|
+
* This is part of HarfBuzz, a text shaping library.
|
6
|
+
*
|
7
|
+
* Permission is hereby granted, without written agreement and without
|
8
|
+
* license or royalty fees, to use, copy, modify, and distribute this
|
9
|
+
* software and its documentation for any purpose, provided that the
|
10
|
+
* above copyright notice and the following two paragraphs appear in
|
11
|
+
* all copies of this software.
|
12
|
+
*
|
13
|
+
* IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR
|
14
|
+
* DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
|
15
|
+
* ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN
|
16
|
+
* IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
|
17
|
+
* DAMAGE.
|
18
|
+
*
|
19
|
+
* THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING,
|
20
|
+
* BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
|
21
|
+
* FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
|
22
|
+
* ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO
|
23
|
+
* PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
|
24
|
+
*
|
25
|
+
* Red Hat Author(s): Behdad Esfahbod
|
26
|
+
* Google Author(s): Behdad Esfahbod
|
27
|
+
*/
|
28
|
+
|
29
|
+
#ifndef HB_GLIB_H
|
30
|
+
#define HB_GLIB_H
|
31
|
+
|
32
|
+
#include "hb.h"
|
33
|
+
|
34
|
+
#include <glib.h>
|
35
|
+
|
36
|
+
HB_BEGIN_DECLS
|
37
|
+
|
38
|
+
|
39
|
+
hb_script_t
|
40
|
+
hb_glib_script_to_script (GUnicodeScript script);
|
41
|
+
|
42
|
+
GUnicodeScript
|
43
|
+
hb_glib_script_from_script (hb_script_t script);
|
44
|
+
|
45
|
+
|
46
|
+
hb_unicode_funcs_t *
|
47
|
+
hb_glib_get_unicode_funcs (void);
|
48
|
+
|
49
|
+
|
50
|
+
HB_END_DECLS
|
51
|
+
|
52
|
+
#endif /* HB_GLIB_H */
|
@@ -0,0 +1,69 @@
|
|
1
|
+
/*
|
2
|
+
* Copyright © 2011 Google, Inc.
|
3
|
+
*
|
4
|
+
* This is part of HarfBuzz, a text shaping library.
|
5
|
+
*
|
6
|
+
* Permission is hereby granted, without written agreement and without
|
7
|
+
* license or royalty fees, to use, copy, modify, and distribute this
|
8
|
+
* software and its documentation for any purpose, provided that the
|
9
|
+
* above copyright notice and the following two paragraphs appear in
|
10
|
+
* all copies of this software.
|
11
|
+
*
|
12
|
+
* IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR
|
13
|
+
* DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
|
14
|
+
* ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN
|
15
|
+
* IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
|
16
|
+
* DAMAGE.
|
17
|
+
*
|
18
|
+
* THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING,
|
19
|
+
* BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
|
20
|
+
* FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
|
21
|
+
* ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO
|
22
|
+
* PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
|
23
|
+
*
|
24
|
+
* Google Author(s): Behdad Esfahbod
|
25
|
+
*/
|
26
|
+
|
27
|
+
#ifndef HB_GOBJECT_H
|
28
|
+
#define HB_GOBJECT_H
|
29
|
+
|
30
|
+
#include "hb.h"
|
31
|
+
|
32
|
+
#include <glib-object.h>
|
33
|
+
|
34
|
+
HB_BEGIN_DECLS
|
35
|
+
|
36
|
+
|
37
|
+
/* Objects */
|
38
|
+
|
39
|
+
#define HB_GOBJECT_TYPE_BLOB hb_gobject_blob_get_type ()
|
40
|
+
GType
|
41
|
+
hb_gobject_blob_get_type (void);
|
42
|
+
|
43
|
+
#define HB_GOBJECT_TYPE_BUFFER hb_gobject_buffer_get_type ()
|
44
|
+
GType
|
45
|
+
hb_gobject_buffer_get_type (void);
|
46
|
+
|
47
|
+
#define HB_GOBJECT_TYPE_FACE hb_gobject_face_get_type ()
|
48
|
+
GType
|
49
|
+
hb_gobject_face_get_type (void);
|
50
|
+
|
51
|
+
#define HB_GOBJECT_TYPE_FONT hb_gobject_font_get_type ()
|
52
|
+
GType
|
53
|
+
hb_gobject_font_get_type (void);
|
54
|
+
|
55
|
+
#define HB_GOBJECT_TYPE_FONT_FUNCS hb_gobject_font_funcs_get_type ()
|
56
|
+
GType
|
57
|
+
hb_gobject_font_funcs_get_type (void);
|
58
|
+
|
59
|
+
#define HB_GOBJECT_TYPE_UNICODE_FUNCS hb_gobject_unicode_funcs_get_type ()
|
60
|
+
GType
|
61
|
+
hb_gobject_unicode_funcs_get_type (void);
|
62
|
+
|
63
|
+
|
64
|
+
/* Enums */
|
65
|
+
|
66
|
+
|
67
|
+
HB_END_DECLS
|
68
|
+
|
69
|
+
#endif /* HB_GOBJECT_H */
|