OLD | NEW |
1 /* | 1 /* |
2 * Copyright © 1998-2004 David Turner and Werner Lemberg | 2 * Copyright © 1998-2004 David Turner and Werner Lemberg |
3 * Copyright © 2004,2007,2009 Red Hat, Inc. | 3 * Copyright © 2004,2007,2009 Red Hat, Inc. |
4 * Copyright © 2011,2012 Google, Inc. | 4 * Copyright © 2011,2012 Google, Inc. |
5 * | 5 * |
6 * This is part of HarfBuzz, a text shaping library. | 6 * This is part of HarfBuzz, a text shaping library. |
7 * | 7 * |
8 * Permission is hereby granted, without written agreement and without | 8 * Permission is hereby granted, without written agreement and without |
9 * license or royalty fees, to use, copy, modify, and distribute this | 9 * license or royalty fees, to use, copy, modify, and distribute this |
10 * software and its documentation for any purpose, provided that the | 10 * software and its documentation for any purpose, provided that the |
(...skipping 153 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
164 const hb_segment_properties_t *props); | 164 const hb_segment_properties_t *props); |
165 | 165 |
166 void | 166 void |
167 hb_buffer_get_segment_properties (hb_buffer_t *buffer, | 167 hb_buffer_get_segment_properties (hb_buffer_t *buffer, |
168 hb_segment_properties_t *props); | 168 hb_segment_properties_t *props); |
169 | 169 |
170 void | 170 void |
171 hb_buffer_guess_segment_properties (hb_buffer_t *buffer); | 171 hb_buffer_guess_segment_properties (hb_buffer_t *buffer); |
172 | 172 |
173 | 173 |
| 174 /* |
| 175 * Since: 0.9.20 |
| 176 */ |
174 typedef enum { /*< flags >*/ | 177 typedef enum { /*< flags >*/ |
175 HB_BUFFER_FLAG_DEFAULT = 0x00000000u, | 178 HB_BUFFER_FLAG_DEFAULT = 0x00000000u, |
176 HB_BUFFER_FLAG_BOT = 0x00000001u, /* Beginning-of-t
ext */ | 179 HB_BUFFER_FLAG_BOT = 0x00000001u, /* Beginning-of-t
ext */ |
177 HB_BUFFER_FLAG_EOT = 0x00000002u, /* End-of-text */ | 180 HB_BUFFER_FLAG_EOT = 0x00000002u, /* End-of-text */ |
178 HB_BUFFER_FLAG_PRESERVE_DEFAULT_IGNORABLES = 0x00000004u | 181 HB_BUFFER_FLAG_PRESERVE_DEFAULT_IGNORABLES = 0x00000004u |
179 } hb_buffer_flags_t; | 182 } hb_buffer_flags_t; |
180 | 183 |
181 void | 184 void |
182 hb_buffer_set_flags (hb_buffer_t *buffer, | 185 hb_buffer_set_flags (hb_buffer_t *buffer, |
183 hb_buffer_flags_t flags); | 186 hb_buffer_flags_t flags); |
184 | 187 |
185 hb_buffer_flags_t | 188 hb_buffer_flags_t |
186 hb_buffer_get_flags (hb_buffer_t *buffer); | 189 hb_buffer_get_flags (hb_buffer_t *buffer); |
187 | 190 |
| 191 /* |
| 192 * Since: 0.9.42 |
| 193 */ |
188 typedef enum { | 194 typedef enum { |
189 HB_BUFFER_CLUSTER_LEVEL_MONOTONE_GRAPHEMES = 0, | 195 HB_BUFFER_CLUSTER_LEVEL_MONOTONE_GRAPHEMES = 0, |
190 HB_BUFFER_CLUSTER_LEVEL_MONOTONE_CHARACTERS = 1, | 196 HB_BUFFER_CLUSTER_LEVEL_MONOTONE_CHARACTERS = 1, |
191 HB_BUFFER_CLUSTER_LEVEL_CHARACTERS = 2, | 197 HB_BUFFER_CLUSTER_LEVEL_CHARACTERS = 2, |
192 HB_BUFFER_CLUSTER_LEVEL_DEFAULT = HB_BUFFER_CLUSTER_LEVEL_MONOTONE_GRAPHEMES | 198 HB_BUFFER_CLUSTER_LEVEL_DEFAULT = HB_BUFFER_CLUSTER_LEVEL_MONOTONE_GRAPHEMES |
193 } hb_buffer_cluster_level_t; | 199 } hb_buffer_cluster_level_t; |
194 | 200 |
195 void | 201 void |
196 hb_buffer_set_cluster_level (hb_buffer_t *buffer, | 202 hb_buffer_set_cluster_level (hb_buffer_t *buffer, |
197 hb_buffer_cluster_level_t cluster_level); | 203 hb_buffer_cluster_level_t cluster_level); |
(...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
312 * The resulting clusters should behave identical to pre-reordering clusters. | 318 * The resulting clusters should behave identical to pre-reordering clusters. |
313 * NOTE: This has nothing to do with Unicode normalization. */ | 319 * NOTE: This has nothing to do with Unicode normalization. */ |
314 void | 320 void |
315 hb_buffer_normalize_glyphs (hb_buffer_t *buffer); | 321 hb_buffer_normalize_glyphs (hb_buffer_t *buffer); |
316 | 322 |
317 | 323 |
318 /* | 324 /* |
319 * Serialize | 325 * Serialize |
320 */ | 326 */ |
321 | 327 |
| 328 /* |
| 329 * Since: 0.9.20 |
| 330 */ |
322 typedef enum { /*< flags >*/ | 331 typedef enum { /*< flags >*/ |
323 HB_BUFFER_SERIALIZE_FLAG_DEFAULT = 0x00000000u, | 332 HB_BUFFER_SERIALIZE_FLAG_DEFAULT = 0x00000000u, |
324 HB_BUFFER_SERIALIZE_FLAG_NO_CLUSTERS = 0x00000001u, | 333 HB_BUFFER_SERIALIZE_FLAG_NO_CLUSTERS = 0x00000001u, |
325 HB_BUFFER_SERIALIZE_FLAG_NO_POSITIONS = 0x00000002u, | 334 HB_BUFFER_SERIALIZE_FLAG_NO_POSITIONS = 0x00000002u, |
326 HB_BUFFER_SERIALIZE_FLAG_NO_GLYPH_NAMES» = 0x00000004u | 335 HB_BUFFER_SERIALIZE_FLAG_NO_GLYPH_NAMES» = 0x00000004u, |
| 336 HB_BUFFER_SERIALIZE_FLAG_GLYPH_EXTENTS» = 0x00000008u |
327 } hb_buffer_serialize_flags_t; | 337 } hb_buffer_serialize_flags_t; |
328 | 338 |
329 typedef enum { | 339 typedef enum { |
330 HB_BUFFER_SERIALIZE_FORMAT_TEXT = HB_TAG('T','E','X','T'), | 340 HB_BUFFER_SERIALIZE_FORMAT_TEXT = HB_TAG('T','E','X','T'), |
331 HB_BUFFER_SERIALIZE_FORMAT_JSON = HB_TAG('J','S','O','N'), | 341 HB_BUFFER_SERIALIZE_FORMAT_JSON = HB_TAG('J','S','O','N'), |
332 HB_BUFFER_SERIALIZE_FORMAT_INVALID = HB_TAG_NONE | 342 HB_BUFFER_SERIALIZE_FORMAT_INVALID = HB_TAG_NONE |
333 } hb_buffer_serialize_format_t; | 343 } hb_buffer_serialize_format_t; |
334 | 344 |
335 /* len=-1 means str is NUL-terminated. */ | 345 /* len=-1 means str is NUL-terminated. */ |
336 hb_buffer_serialize_format_t | 346 hb_buffer_serialize_format_t |
(...skipping 22 matching lines...) Expand all Loading... |
359 const char *buf, | 369 const char *buf, |
360 int buf_len, /* -1 means nul-terminated */ | 370 int buf_len, /* -1 means nul-terminated */ |
361 const char **end_ptr, /* May be NULL */ | 371 const char **end_ptr, /* May be NULL */ |
362 hb_font_t *font, /* May be NULL */ | 372 hb_font_t *font, /* May be NULL */ |
363 hb_buffer_serialize_format_t format); | 373 hb_buffer_serialize_format_t format); |
364 | 374 |
365 | 375 |
366 HB_END_DECLS | 376 HB_END_DECLS |
367 | 377 |
368 #endif /* HB_BUFFER_H */ | 378 #endif /* HB_BUFFER_H */ |
OLD | NEW |