Github User Fetcher 1.0.0
C Application with Server and GUI
Loading...
Searching...
No Matches
hb-common.h File Reference
#include <inttypes.h>

Go to the source code of this file.

Data Structures

union  _hb_var_int_t
 
union  _hb_var_num_t
 
struct  hb_user_data_key_t
 
struct  hb_feature_t
 
struct  hb_variation_t
 
struct  hb_glyph_extents_t
 

Macros

#define HB_EXTERN   extern
 
#define HB_BEGIN_DECLS
 
#define HB_END_DECLS
 
#define HB_DEPRECATED
 
#define HB_DEPRECATED_FOR(f)   HB_DEPRECATED
 
#define HB_CODEPOINT_INVALID   ((hb_codepoint_t) -1)
 
#define HB_TAG(c1, c2, c3, c4)   ((hb_tag_t)((((uint32_t)(c1)&0xFF)<<24)|(((uint32_t)(c2)&0xFF)<<16)|(((uint32_t)(c3)&0xFF)<<8)|((uint32_t)(c4)&0xFF)))
 
#define HB_UNTAG(tag)   (uint8_t)(((tag)>>24)&0xFF), (uint8_t)(((tag)>>16)&0xFF), (uint8_t)(((tag)>>8)&0xFF), (uint8_t)((tag)&0xFF)
 
#define HB_TAG_NONE   HB_TAG(0,0,0,0)
 
#define HB_TAG_MAX   HB_TAG(0xff,0xff,0xff,0xff)
 
#define HB_TAG_MAX_SIGNED   HB_TAG(0x7f,0xff,0xff,0xff)
 
#define HB_DIRECTION_IS_VALID(dir)   ((((unsigned int) (dir)) & ~3U) == 4)
 
#define HB_DIRECTION_IS_HORIZONTAL(dir)   ((((unsigned int) (dir)) & ~1U) == 4)
 
#define HB_DIRECTION_IS_VERTICAL(dir)   ((((unsigned int) (dir)) & ~1U) == 6)
 
#define HB_DIRECTION_IS_FORWARD(dir)   ((((unsigned int) (dir)) & ~2U) == 4)
 
#define HB_DIRECTION_IS_BACKWARD(dir)   ((((unsigned int) (dir)) & ~2U) == 5)
 
#define HB_DIRECTION_REVERSE(dir)   ((hb_direction_t) (((unsigned int) (dir)) ^ 1))
 
#define HB_LANGUAGE_INVALID   ((hb_language_t) 0)
 
#define HB_FEATURE_GLOBAL_START   0
 
#define HB_FEATURE_GLOBAL_END   ((unsigned int) -1)
 
#define HB_COLOR(b, g, r, a)   ((hb_color_t) HB_TAG ((b),(g),(r),(a)))
 
#define hb_color_get_alpha(color)   ((color) & 0xFF)
 
#define hb_color_get_red(color)   (((color) >> 8) & 0xFF)
 
#define hb_color_get_green(color)   (((color) >> 16) & 0xFF)
 
#define hb_color_get_blue(color)   (((color) >> 24) & 0xFF)
 

Typedefs

typedef uint32_t hb_codepoint_t
 
typedef int32_t hb_position_t
 
typedef uint32_t hb_mask_t
 
typedef union _hb_var_int_t hb_var_int_t
 
typedef union _hb_var_num_t hb_var_num_t
 
typedef uint32_t hb_tag_t
 
typedef const struct hb_language_impl_t * hb_language_t
 
typedef struct hb_user_data_key_t hb_user_data_key_t
 
typedef void(* hb_destroy_func_t) (void *user_data)
 
typedef struct hb_feature_t hb_feature_t
 
typedef struct hb_variation_t hb_variation_t
 
typedef uint32_t hb_color_t
 
typedef struct hb_glyph_extents_t hb_glyph_extents_t
 
typedef struct hb_font_t hb_font_t
 

Enumerations

enum  hb_direction_t {
  HB_DIRECTION_INVALID = 0 , HB_DIRECTION_LTR = 4 , HB_DIRECTION_RTL , HB_DIRECTION_TTB ,
  HB_DIRECTION_BTT
}
 
enum  hb_script_t {
  HB_SCRIPT_COMMON = HB_TAG ('Z','y','y','y') , HB_SCRIPT_INHERITED = HB_TAG ('Z','i','n','h') , HB_SCRIPT_UNKNOWN = HB_TAG ('Z','z','z','z') , HB_SCRIPT_ARABIC = HB_TAG ('A','r','a','b') ,
  HB_SCRIPT_ARMENIAN = HB_TAG ('A','r','m','n') , HB_SCRIPT_BENGALI = HB_TAG ('B','e','n','g') , HB_SCRIPT_CYRILLIC = HB_TAG ('C','y','r','l') , HB_SCRIPT_DEVANAGARI = HB_TAG ('D','e','v','a') ,
  HB_SCRIPT_GEORGIAN = HB_TAG ('G','e','o','r') , HB_SCRIPT_GREEK = HB_TAG ('G','r','e','k') , HB_SCRIPT_GUJARATI = HB_TAG ('G','u','j','r') , HB_SCRIPT_GURMUKHI = HB_TAG ('G','u','r','u') ,
  HB_SCRIPT_HANGUL = HB_TAG ('H','a','n','g') , HB_SCRIPT_HAN = HB_TAG ('H','a','n','i') , HB_SCRIPT_HEBREW = HB_TAG ('H','e','b','r') , HB_SCRIPT_HIRAGANA = HB_TAG ('H','i','r','a') ,
  HB_SCRIPT_KANNADA = HB_TAG ('K','n','d','a') , HB_SCRIPT_KATAKANA = HB_TAG ('K','a','n','a') , HB_SCRIPT_LAO = HB_TAG ('L','a','o','o') , HB_SCRIPT_LATIN = HB_TAG ('L','a','t','n') ,
  HB_SCRIPT_MALAYALAM = HB_TAG ('M','l','y','m') , HB_SCRIPT_ORIYA = HB_TAG ('O','r','y','a') , HB_SCRIPT_TAMIL = HB_TAG ('T','a','m','l') , HB_SCRIPT_TELUGU = HB_TAG ('T','e','l','u') ,
  HB_SCRIPT_THAI = HB_TAG ('T','h','a','i') , HB_SCRIPT_TIBETAN = HB_TAG ('T','i','b','t') , HB_SCRIPT_BOPOMOFO = HB_TAG ('B','o','p','o') , HB_SCRIPT_BRAILLE = HB_TAG ('B','r','a','i') ,
  HB_SCRIPT_CANADIAN_SYLLABICS = HB_TAG ('C','a','n','s') , HB_SCRIPT_CHEROKEE = HB_TAG ('C','h','e','r') , HB_SCRIPT_ETHIOPIC = HB_TAG ('E','t','h','i') , HB_SCRIPT_KHMER = HB_TAG ('K','h','m','r') ,
  HB_SCRIPT_MONGOLIAN = HB_TAG ('M','o','n','g') , HB_SCRIPT_MYANMAR = HB_TAG ('M','y','m','r') , HB_SCRIPT_OGHAM = HB_TAG ('O','g','a','m') , HB_SCRIPT_RUNIC = HB_TAG ('R','u','n','r') ,
  HB_SCRIPT_SINHALA = HB_TAG ('S','i','n','h') , HB_SCRIPT_SYRIAC = HB_TAG ('S','y','r','c') , HB_SCRIPT_THAANA = HB_TAG ('T','h','a','a') , HB_SCRIPT_YI = HB_TAG ('Y','i','i','i') ,
  HB_SCRIPT_DESERET = HB_TAG ('D','s','r','t') , HB_SCRIPT_GOTHIC = HB_TAG ('G','o','t','h') , HB_SCRIPT_OLD_ITALIC = HB_TAG ('I','t','a','l') , HB_SCRIPT_BUHID = HB_TAG ('B','u','h','d') ,
  HB_SCRIPT_HANUNOO = HB_TAG ('H','a','n','o') , HB_SCRIPT_TAGALOG = HB_TAG ('T','g','l','g') , HB_SCRIPT_TAGBANWA = HB_TAG ('T','a','g','b') , HB_SCRIPT_CYPRIOT = HB_TAG ('C','p','r','t') ,
  HB_SCRIPT_LIMBU = HB_TAG ('L','i','m','b') , HB_SCRIPT_LINEAR_B = HB_TAG ('L','i','n','b') , HB_SCRIPT_OSMANYA = HB_TAG ('O','s','m','a') , HB_SCRIPT_SHAVIAN = HB_TAG ('S','h','a','w') ,
  HB_SCRIPT_TAI_LE = HB_TAG ('T','a','l','e') , HB_SCRIPT_UGARITIC = HB_TAG ('U','g','a','r') , HB_SCRIPT_BUGINESE = HB_TAG ('B','u','g','i') , HB_SCRIPT_COPTIC = HB_TAG ('C','o','p','t') ,
  HB_SCRIPT_GLAGOLITIC = HB_TAG ('G','l','a','g') , HB_SCRIPT_KHAROSHTHI = HB_TAG ('K','h','a','r') , HB_SCRIPT_NEW_TAI_LUE = HB_TAG ('T','a','l','u') , HB_SCRIPT_OLD_PERSIAN = HB_TAG ('X','p','e','o') ,
  HB_SCRIPT_SYLOTI_NAGRI = HB_TAG ('S','y','l','o') , HB_SCRIPT_TIFINAGH = HB_TAG ('T','f','n','g') , HB_SCRIPT_BALINESE = HB_TAG ('B','a','l','i') , HB_SCRIPT_CUNEIFORM = HB_TAG ('X','s','u','x') ,
  HB_SCRIPT_NKO = HB_TAG ('N','k','o','o') , HB_SCRIPT_PHAGS_PA = HB_TAG ('P','h','a','g') , HB_SCRIPT_PHOENICIAN = HB_TAG ('P','h','n','x') , HB_SCRIPT_CARIAN = HB_TAG ('C','a','r','i') ,
  HB_SCRIPT_CHAM = HB_TAG ('C','h','a','m') , HB_SCRIPT_KAYAH_LI = HB_TAG ('K','a','l','i') , HB_SCRIPT_LEPCHA = HB_TAG ('L','e','p','c') , HB_SCRIPT_LYCIAN = HB_TAG ('L','y','c','i') ,
  HB_SCRIPT_LYDIAN = HB_TAG ('L','y','d','i') , HB_SCRIPT_OL_CHIKI = HB_TAG ('O','l','c','k') , HB_SCRIPT_REJANG = HB_TAG ('R','j','n','g') , HB_SCRIPT_SAURASHTRA = HB_TAG ('S','a','u','r') ,
  HB_SCRIPT_SUNDANESE = HB_TAG ('S','u','n','d') , HB_SCRIPT_VAI = HB_TAG ('V','a','i','i') , HB_SCRIPT_AVESTAN = HB_TAG ('A','v','s','t') , HB_SCRIPT_BAMUM = HB_TAG ('B','a','m','u') ,
  HB_SCRIPT_EGYPTIAN_HIEROGLYPHS = HB_TAG ('E','g','y','p') , HB_SCRIPT_IMPERIAL_ARAMAIC = HB_TAG ('A','r','m','i') , HB_SCRIPT_INSCRIPTIONAL_PAHLAVI = HB_TAG ('P','h','l','i') , HB_SCRIPT_INSCRIPTIONAL_PARTHIAN = HB_TAG ('P','r','t','i') ,
  HB_SCRIPT_JAVANESE = HB_TAG ('J','a','v','a') , HB_SCRIPT_KAITHI = HB_TAG ('K','t','h','i') , HB_SCRIPT_LISU = HB_TAG ('L','i','s','u') , HB_SCRIPT_MEETEI_MAYEK = HB_TAG ('M','t','e','i') ,
  HB_SCRIPT_OLD_SOUTH_ARABIAN = HB_TAG ('S','a','r','b') , HB_SCRIPT_OLD_TURKIC = HB_TAG ('O','r','k','h') , HB_SCRIPT_SAMARITAN = HB_TAG ('S','a','m','r') , HB_SCRIPT_TAI_THAM = HB_TAG ('L','a','n','a') ,
  HB_SCRIPT_TAI_VIET = HB_TAG ('T','a','v','t') , HB_SCRIPT_BATAK = HB_TAG ('B','a','t','k') , HB_SCRIPT_BRAHMI = HB_TAG ('B','r','a','h') , HB_SCRIPT_MANDAIC = HB_TAG ('M','a','n','d') ,
  HB_SCRIPT_CHAKMA = HB_TAG ('C','a','k','m') , HB_SCRIPT_MEROITIC_CURSIVE = HB_TAG ('M','e','r','c') , HB_SCRIPT_MEROITIC_HIEROGLYPHS = HB_TAG ('M','e','r','o') , HB_SCRIPT_MIAO = HB_TAG ('P','l','r','d') ,
  HB_SCRIPT_SHARADA = HB_TAG ('S','h','r','d') , HB_SCRIPT_SORA_SOMPENG = HB_TAG ('S','o','r','a') , HB_SCRIPT_TAKRI = HB_TAG ('T','a','k','r') , HB_SCRIPT_BASSA_VAH = HB_TAG ('B','a','s','s') ,
  HB_SCRIPT_CAUCASIAN_ALBANIAN = HB_TAG ('A','g','h','b') , HB_SCRIPT_DUPLOYAN = HB_TAG ('D','u','p','l') , HB_SCRIPT_ELBASAN = HB_TAG ('E','l','b','a') , HB_SCRIPT_GRANTHA = HB_TAG ('G','r','a','n') ,
  HB_SCRIPT_KHOJKI = HB_TAG ('K','h','o','j') , HB_SCRIPT_KHUDAWADI = HB_TAG ('S','i','n','d') , HB_SCRIPT_LINEAR_A = HB_TAG ('L','i','n','a') , HB_SCRIPT_MAHAJANI = HB_TAG ('M','a','h','j') ,
  HB_SCRIPT_MANICHAEAN = HB_TAG ('M','a','n','i') , HB_SCRIPT_MENDE_KIKAKUI = HB_TAG ('M','e','n','d') , HB_SCRIPT_MODI = HB_TAG ('M','o','d','i') , HB_SCRIPT_MRO = HB_TAG ('M','r','o','o') ,
  HB_SCRIPT_NABATAEAN = HB_TAG ('N','b','a','t') , HB_SCRIPT_OLD_NORTH_ARABIAN = HB_TAG ('N','a','r','b') , HB_SCRIPT_OLD_PERMIC = HB_TAG ('P','e','r','m') , HB_SCRIPT_PAHAWH_HMONG = HB_TAG ('H','m','n','g') ,
  HB_SCRIPT_PALMYRENE = HB_TAG ('P','a','l','m') , HB_SCRIPT_PAU_CIN_HAU = HB_TAG ('P','a','u','c') , HB_SCRIPT_PSALTER_PAHLAVI = HB_TAG ('P','h','l','p') , HB_SCRIPT_SIDDHAM = HB_TAG ('S','i','d','d') ,
  HB_SCRIPT_TIRHUTA = HB_TAG ('T','i','r','h') , HB_SCRIPT_WARANG_CITI = HB_TAG ('W','a','r','a') , HB_SCRIPT_AHOM = HB_TAG ('A','h','o','m') , HB_SCRIPT_ANATOLIAN_HIEROGLYPHS = HB_TAG ('H','l','u','w') ,
  HB_SCRIPT_HATRAN = HB_TAG ('H','a','t','r') , HB_SCRIPT_MULTANI = HB_TAG ('M','u','l','t') , HB_SCRIPT_OLD_HUNGARIAN = HB_TAG ('H','u','n','g') , HB_SCRIPT_SIGNWRITING = HB_TAG ('S','g','n','w') ,
  HB_SCRIPT_ADLAM = HB_TAG ('A','d','l','m') , HB_SCRIPT_BHAIKSUKI = HB_TAG ('B','h','k','s') , HB_SCRIPT_MARCHEN = HB_TAG ('M','a','r','c') , HB_SCRIPT_OSAGE = HB_TAG ('O','s','g','e') ,
  HB_SCRIPT_TANGUT = HB_TAG ('T','a','n','g') , HB_SCRIPT_NEWA = HB_TAG ('N','e','w','a') , HB_SCRIPT_MASARAM_GONDI = HB_TAG ('G','o','n','m') , HB_SCRIPT_NUSHU = HB_TAG ('N','s','h','u') ,
  HB_SCRIPT_SOYOMBO = HB_TAG ('S','o','y','o') , HB_SCRIPT_ZANABAZAR_SQUARE = HB_TAG ('Z','a','n','b') , HB_SCRIPT_DOGRA = HB_TAG ('D','o','g','r') , HB_SCRIPT_GUNJALA_GONDI = HB_TAG ('G','o','n','g') ,
  HB_SCRIPT_HANIFI_ROHINGYA = HB_TAG ('R','o','h','g') , HB_SCRIPT_MAKASAR = HB_TAG ('M','a','k','a') , HB_SCRIPT_MEDEFAIDRIN = HB_TAG ('M','e','d','f') , HB_SCRIPT_OLD_SOGDIAN = HB_TAG ('S','o','g','o') ,
  HB_SCRIPT_SOGDIAN = HB_TAG ('S','o','g','d') , HB_SCRIPT_ELYMAIC = HB_TAG ('E','l','y','m') , HB_SCRIPT_NANDINAGARI = HB_TAG ('N','a','n','d') , HB_SCRIPT_NYIAKENG_PUACHUE_HMONG = HB_TAG ('H','m','n','p') ,
  HB_SCRIPT_WANCHO = HB_TAG ('W','c','h','o') , HB_SCRIPT_CHORASMIAN = HB_TAG ('C','h','r','s') , HB_SCRIPT_DIVES_AKURU = HB_TAG ('D','i','a','k') , HB_SCRIPT_KHITAN_SMALL_SCRIPT = HB_TAG ('K','i','t','s') ,
  HB_SCRIPT_YEZIDI = HB_TAG ('Y','e','z','i') , HB_SCRIPT_CYPRO_MINOAN = HB_TAG ('C','p','m','n') , HB_SCRIPT_OLD_UYGHUR = HB_TAG ('O','u','g','r') , HB_SCRIPT_TANGSA = HB_TAG ('T','n','s','a') ,
  HB_SCRIPT_TOTO = HB_TAG ('T','o','t','o') , HB_SCRIPT_VITHKUQI = HB_TAG ('V','i','t','h') , HB_SCRIPT_MATH = HB_TAG ('Z','m','t','h') , HB_SCRIPT_KAWI = HB_TAG ('K','a','w','i') ,
  HB_SCRIPT_NAG_MUNDARI = HB_TAG ('N','a','g','m') , HB_SCRIPT_GARAY = HB_TAG ('G','a','r','a') , HB_SCRIPT_GURUNG_KHEMA = HB_TAG ('G','u','k','h') , HB_SCRIPT_KIRAT_RAI = HB_TAG ('K','r','a','i') ,
  HB_SCRIPT_OL_ONAL = HB_TAG ('O','n','a','o') , HB_SCRIPT_SUNUWAR = HB_TAG ('S','u','n','u') , HB_SCRIPT_TODHRI = HB_TAG ('T','o','d','r') , HB_SCRIPT_TULU_TIGALARI = HB_TAG ('T','u','t','g') ,
  HB_SCRIPT_INVALID = HB_TAG_NONE , _HB_SCRIPT_MAX_VALUE = HB_TAG_MAX_SIGNED , _HB_SCRIPT_MAX_VALUE_SIGNED = HB_TAG_MAX_SIGNED
}
 

Functions

HB_EXTERN hb_tag_t hb_tag_from_string (const char *str, int len)
 
HB_EXTERN void hb_tag_to_string (hb_tag_t tag, char *buf)
 
HB_EXTERN hb_direction_t hb_direction_from_string (const char *str, int len)
 
HB_EXTERN const char * hb_direction_to_string (hb_direction_t direction)
 
HB_EXTERN hb_language_t hb_language_from_string (const char *str, int len)
 
HB_EXTERN const char * hb_language_to_string (hb_language_t language)
 
HB_EXTERN hb_language_t hb_language_get_default (void)
 
HB_EXTERN hb_bool_t hb_language_matches (hb_language_t language, hb_language_t specific)
 
HB_EXTERN hb_script_t hb_script_from_iso15924_tag (hb_tag_t tag)
 
HB_EXTERN hb_script_t hb_script_from_string (const char *str, int len)
 
HB_EXTERN hb_tag_t hb_script_to_iso15924_tag (hb_script_t script)
 
HB_EXTERN hb_direction_t hb_script_get_horizontal_direction (hb_script_t script)
 
HB_EXTERN hb_bool_t hb_feature_from_string (const char *str, int len, hb_feature_t *feature)
 
HB_EXTERN void hb_feature_to_string (hb_feature_t *feature, char *buf, unsigned int size)
 
HB_EXTERN hb_bool_t hb_variation_from_string (const char *str, int len, hb_variation_t *variation)
 
HB_EXTERN void hb_variation_to_string (hb_variation_t *variation, char *buf, unsigned int size)
 
HB_EXTERN uint8_t hb_color_get_alpha (hb_color_t color)
 
HB_EXTERN uint8_t hb_color_get_red (hb_color_t color)
 
HB_EXTERN uint8_t hb_color_get_green (hb_color_t color)
 
HB_EXTERN uint8_t hb_color_get_blue (hb_color_t color)
 

Variables

HB_BEGIN_DECLS typedef int hb_bool_t
 

Macro Definition Documentation

◆ HB_BEGIN_DECLS

#define HB_BEGIN_DECLS

Definition at line 45 of file hb-common.h.

◆ HB_CODEPOINT_INVALID

#define HB_CODEPOINT_INVALID   ((hb_codepoint_t) -1)

HB_CODEPOINT_INVALID:

Unused hb_codepoint_t value.

Since: 8.0.0

Definition at line 112 of file hb-common.h.

◆ HB_COLOR

#define HB_COLOR ( b,
g,
r,
a )   ((hb_color_t) HB_TAG ((b),(g),(r),(a)))

HB_COLOR: : blue channel value @g: green channel value @r: red channel value : alpha channel value

Constructs an hb_color_t from four integers.

Since: 2.1.0

Definition at line 907 of file hb-common.h.

◆ hb_color_get_alpha

#define hb_color_get_alpha ( color)    ((color) & 0xFF)

Definition at line 911 of file hb-common.h.

◆ hb_color_get_blue

#define hb_color_get_blue ( color)    (((color) >> 24) & 0xFF)

Definition at line 923 of file hb-common.h.

◆ hb_color_get_green

#define hb_color_get_green ( color)    (((color) >> 16) & 0xFF)

Definition at line 919 of file hb-common.h.

◆ hb_color_get_red

#define hb_color_get_red ( color)    (((color) >> 8) & 0xFF)

Definition at line 915 of file hb-common.h.

◆ HB_DEPRECATED

#define HB_DEPRECATED

Definition at line 74 of file hb-common.h.

◆ HB_DEPRECATED_FOR

#define HB_DEPRECATED_FOR ( f)    HB_DEPRECATED

Definition at line 82 of file hb-common.h.

◆ HB_DIRECTION_IS_BACKWARD

#define HB_DIRECTION_IS_BACKWARD ( dir)    ((((unsigned int) (dir)) & ~2U) == 5)

Definition at line 295 of file hb-common.h.

◆ HB_DIRECTION_IS_FORWARD

#define HB_DIRECTION_IS_FORWARD ( dir)    ((((unsigned int) (dir)) & ~2U) == 4)

Definition at line 286 of file hb-common.h.

◆ HB_DIRECTION_IS_HORIZONTAL

#define HB_DIRECTION_IS_HORIZONTAL ( dir)    ((((unsigned int) (dir)) & ~1U) == 4)

Definition at line 268 of file hb-common.h.

◆ HB_DIRECTION_IS_VALID

#define HB_DIRECTION_IS_VALID ( dir)    ((((unsigned int) (dir)) & ~3U) == 4)

Definition at line 258 of file hb-common.h.

◆ HB_DIRECTION_IS_VERTICAL

#define HB_DIRECTION_IS_VERTICAL ( dir)    ((((unsigned int) (dir)) & ~1U) == 6)

Definition at line 277 of file hb-common.h.

◆ HB_DIRECTION_REVERSE

#define HB_DIRECTION_REVERSE ( dir)    ((hb_direction_t) (((unsigned int) (dir)) ^ 1))

Definition at line 304 of file hb-common.h.

◆ HB_END_DECLS

#define HB_END_DECLS

Definition at line 46 of file hb-common.h.

◆ HB_EXTERN

#define HB_EXTERN   extern

Definition at line 37 of file hb-common.h.

◆ HB_FEATURE_GLOBAL_END

#define HB_FEATURE_GLOBAL_END   ((unsigned int) -1)

HB_FEATURE_GLOBAL_END:

Special setting for hb_feature_t.end to apply the feature from to the end of the buffer.

Since: 2.0.0

Definition at line 830 of file hb-common.h.

◆ HB_FEATURE_GLOBAL_START

#define HB_FEATURE_GLOBAL_START   0

HB_FEATURE_GLOBAL_START:

Special setting for hb_feature_t.start to apply the feature from the start of the buffer.

Since: 2.0.0

Definition at line 820 of file hb-common.h.

◆ HB_LANGUAGE_INVALID

#define HB_LANGUAGE_INVALID   ((hb_language_t) 0)

HB_LANGUAGE_INVALID:

An unset hb_language_t.

Since: 0.6.0

Definition at line 331 of file hb-common.h.

◆ HB_TAG

#define HB_TAG ( c1,
c2,
c3,
c4 )   ((hb_tag_t)((((uint32_t)(c1)&0xFF)<<24)|(((uint32_t)(c2)&0xFF)<<16)|(((uint32_t)(c3)&0xFF)<<8)|((uint32_t)(c4)&0xFF)))

HB_TAG: @c1: 1st character of the tag @c2: 2nd character of the tag @c3: 3rd character of the tag @c4: 4th character of the tag

Constructs an hb_tag_t from four character literals.

Definition at line 176 of file hb-common.h.

◆ HB_TAG_MAX

#define HB_TAG_MAX   HB_TAG(0xff,0xff,0xff,0xff)

HB_TAG_MAX:

Maximum possible unsigned hb_tag_t.

Since: 0.9.26

Definition at line 202 of file hb-common.h.

◆ HB_TAG_MAX_SIGNED

#define HB_TAG_MAX_SIGNED   HB_TAG(0x7f,0xff,0xff,0xff)

HB_TAG_MAX_SIGNED:

Maximum possible signed hb_tag_t.

Since: 0.9.33

Definition at line 210 of file hb-common.h.

◆ HB_TAG_NONE

#define HB_TAG_NONE   HB_TAG(0,0,0,0)

HB_TAG_NONE:

Unset hb_tag_t.

Definition at line 194 of file hb-common.h.

◆ HB_UNTAG

#define HB_UNTAG ( tag)    (uint8_t)(((tag)>>24)&0xFF), (uint8_t)(((tag)>>16)&0xFF), (uint8_t)(((tag)>>8)&0xFF), (uint8_t)((tag)&0xFF)

HB_UNTAG: @tag: an hb_tag_t

Extracts four character literals from an hb_tag_t.

Since: 0.6.0

Definition at line 187 of file hb-common.h.

Typedef Documentation

◆ hb_codepoint_t

typedef uint32_t hb_codepoint_t

hb_codepoint_t:

Data type for holding Unicode codepoints. Also used to hold glyph IDs.

Definition at line 103 of file hb-common.h.

◆ hb_color_t

typedef uint32_t hb_color_t

hb_color_t:

Data type for holding color values. Colors are eight bits per channel RGB plus alpha transparency.

Since: 2.1.0

Definition at line 894 of file hb-common.h.

◆ hb_destroy_func_t

typedef void(* hb_destroy_func_t) (void *user_data)

hb_destroy_func_t: @user_data: the data to be destroyed

A virtual method for destroy user-data callbacks.

Definition at line 807 of file hb-common.h.

◆ hb_feature_t

typedef struct hb_feature_t hb_feature_t

hb_feature_t: @tag: The hb_tag_t tag of the feature @value: The value of the feature. 0 disables the feature, non-zero (usually 1) enables the feature. For features implemented as lookup type 3 (like 'salt') the @value is a one based index into the alternates. @start: the cluster to start applying this feature setting (inclusive). @end: the cluster to end applying this feature setting (exclusive).

The hb_feature_t is the structure that holds information about requested feature application. The feature will be applied with the given value to all glyphs which are in clusters between @start (inclusive) and @end (exclusive). Setting start to HB_FEATURE_GLOBAL_START and end to HB_FEATURE_GLOBAL_END specifies that the feature always applies to the entire buffer.

◆ hb_font_t

typedef struct hb_font_t hb_font_t

hb_font_t:

Data type for holding fonts.

Definition at line 949 of file hb-common.h.

◆ hb_glyph_extents_t

typedef struct hb_glyph_extents_t hb_glyph_extents_t

hb_glyph_extents_t: @x_bearing: Distance from the x-origin to the left extremum of the glyph. @y_bearing: Distance from the top extremum of the glyph to the y-origin. @width: Distance from the left extremum of the glyph to the right extremum. @height: Distance from the top extremum of the glyph to the bottom extremum.

Glyph extent values, measured in font units.

Note that @height is negative, in coordinate systems that grow up.

◆ hb_language_t

typedef const struct hb_language_impl_t* hb_language_t

hb_language_t:

Data type for languages. Each hb_language_t corresponds to a BCP 47 language tag.

Definition at line 316 of file hb-common.h.

◆ hb_mask_t

typedef uint32_t hb_mask_t

hb_mask_t:

Data type for bitmasks.

Definition at line 129 of file hb-common.h.

◆ hb_position_t

typedef int32_t hb_position_t

hb_position_t:

Data type for holding a single coordinate value. Contour points and other multi-dimensional data are stored as tuples of hb_position_t's.

Definition at line 122 of file hb-common.h.

◆ hb_tag_t

typedef uint32_t hb_tag_t

hb_tag_t:

Data type for tag identifiers. Tags are four byte integers, each byte representing a character.

Tags are used to identify tables, design-variation axes, scripts, languages, font features, and baselines with human-readable names.

Definition at line 164 of file hb-common.h.

◆ hb_user_data_key_t

typedef struct hb_user_data_key_t hb_user_data_key_t

hb_user_data_key_t:

Data structure for holding user-data keys.

◆ hb_var_int_t

typedef union _hb_var_int_t hb_var_int_t

◆ hb_var_num_t

typedef union _hb_var_num_t hb_var_num_t

◆ hb_variation_t

typedef struct hb_variation_t hb_variation_t

hb_variation_t: @tag: The hb_tag_t tag of the variation-axis name @value: The value of the variation axis

Data type for holding variation data. Registered OpenType variation-axis tags are listed in OpenType Axis Tag Registry.

Since: 1.4.2

Enumeration Type Documentation

◆ hb_direction_t

hb_direction_t: @HB_DIRECTION_INVALID: Initial, unset direction. @HB_DIRECTION_LTR: Text is set horizontally from left to right. @HB_DIRECTION_RTL: Text is set horizontally from right to left. @HB_DIRECTION_TTB: Text is set vertically from top to bottom. @HB_DIRECTION_BTT: Text is set vertically from bottom to top.

The direction of a text segment or buffer.

A segment can also be tested for horizontal or vertical orientation (irrespective of specific direction) with HB_DIRECTION_IS_HORIZONTAL() or HB_DIRECTION_IS_VERTICAL().

Enumerator
HB_DIRECTION_INVALID 
HB_DIRECTION_LTR 
HB_DIRECTION_RTL 
HB_DIRECTION_TTB 
HB_DIRECTION_BTT 

Definition at line 236 of file hb-common.h.

236 {
hb_direction_t
Definition hb-common.h:236
@ HB_DIRECTION_BTT
Definition hb-common.h:241
@ HB_DIRECTION_TTB
Definition hb-common.h:240
@ HB_DIRECTION_INVALID
Definition hb-common.h:237
@ HB_DIRECTION_RTL
Definition hb-common.h:239
@ HB_DIRECTION_LTR
Definition hb-common.h:238

◆ hb_script_t

hb_script_t: @HB_SCRIPT_COMMON: Zyyy @HB_SCRIPT_INHERITED: Zinh @HB_SCRIPT_UNKNOWN: Zzzz @HB_SCRIPT_ARABIC: Arab @HB_SCRIPT_ARMENIAN: Armn @HB_SCRIPT_BENGALI: Beng @HB_SCRIPT_CYRILLIC: Cyrl @HB_SCRIPT_DEVANAGARI: Deva @HB_SCRIPT_GEORGIAN: Geor @HB_SCRIPT_GREEK: Grek @HB_SCRIPT_GUJARATI: Gujr @HB_SCRIPT_GURMUKHI: Guru @HB_SCRIPT_HANGUL: Hang @HB_SCRIPT_HAN: Hani @HB_SCRIPT_HEBREW: Hebr @HB_SCRIPT_HIRAGANA: Hira @HB_SCRIPT_KANNADA: Knda @HB_SCRIPT_KATAKANA: Kana @HB_SCRIPT_LAO: Laoo @HB_SCRIPT_LATIN: Latn @HB_SCRIPT_MALAYALAM: Mlym @HB_SCRIPT_ORIYA: Orya @HB_SCRIPT_TAMIL: Taml @HB_SCRIPT_TELUGU: Telu @HB_SCRIPT_THAI: Thai @HB_SCRIPT_TIBETAN: Tibt @HB_SCRIPT_BOPOMOFO: Bopo @HB_SCRIPT_BRAILLE: Brai @HB_SCRIPT_CANADIAN_SYLLABICS: Cans @HB_SCRIPT_CHEROKEE: Cher @HB_SCRIPT_ETHIOPIC: Ethi @HB_SCRIPT_KHMER: Khmr @HB_SCRIPT_MONGOLIAN: Mong @HB_SCRIPT_MYANMAR: Mymr @HB_SCRIPT_OGHAM: Ogam @HB_SCRIPT_RUNIC: Runr @HB_SCRIPT_SINHALA: Sinh @HB_SCRIPT_SYRIAC: Syrc @HB_SCRIPT_THAANA: Thaa @HB_SCRIPT_YI: Yiii @HB_SCRIPT_DESERET: Dsrt @HB_SCRIPT_GOTHIC: Goth @HB_SCRIPT_OLD_ITALIC: Ital @HB_SCRIPT_BUHID: Buhd @HB_SCRIPT_HANUNOO: Hano @HB_SCRIPT_TAGALOG: Tglg @HB_SCRIPT_TAGBANWA: Tagb @HB_SCRIPT_CYPRIOT: Cprt @HB_SCRIPT_LIMBU: Limb @HB_SCRIPT_LINEAR_B: Linb @HB_SCRIPT_OSMANYA: Osma @HB_SCRIPT_SHAVIAN: Shaw @HB_SCRIPT_TAI_LE: Tale @HB_SCRIPT_UGARITIC: Ugar @HB_SCRIPT_BUGINESE: Bugi @HB_SCRIPT_COPTIC: Copt @HB_SCRIPT_GLAGOLITIC: Glag @HB_SCRIPT_KHAROSHTHI: Khar @HB_SCRIPT_NEW_TAI_LUE: Talu @HB_SCRIPT_OLD_PERSIAN: Xpeo @HB_SCRIPT_SYLOTI_NAGRI: Sylo @HB_SCRIPT_TIFINAGH: Tfng @HB_SCRIPT_BALINESE: Bali @HB_SCRIPT_CUNEIFORM: Xsux @HB_SCRIPT_NKO: Nkoo @HB_SCRIPT_PHAGS_PA: Phag @HB_SCRIPT_PHOENICIAN: Phnx @HB_SCRIPT_CARIAN: Cari @HB_SCRIPT_CHAM: Cham @HB_SCRIPT_KAYAH_LI: Kali @HB_SCRIPT_LEPCHA: Lepc @HB_SCRIPT_LYCIAN: Lyci @HB_SCRIPT_LYDIAN: Lydi @HB_SCRIPT_OL_CHIKI: Olck @HB_SCRIPT_REJANG: Rjng @HB_SCRIPT_SAURASHTRA: Saur @HB_SCRIPT_SUNDANESE: Sund @HB_SCRIPT_VAI: Vaii @HB_SCRIPT_AVESTAN: Avst @HB_SCRIPT_BAMUM: Bamu @HB_SCRIPT_EGYPTIAN_HIEROGLYPHS: Egyp @HB_SCRIPT_IMPERIAL_ARAMAIC: Armi @HB_SCRIPT_INSCRIPTIONAL_PAHLAVI: Phli @HB_SCRIPT_INSCRIPTIONAL_PARTHIAN: Prti @HB_SCRIPT_JAVANESE: Java @HB_SCRIPT_KAITHI: Kthi @HB_SCRIPT_LISU: Lisu @HB_SCRIPT_MEETEI_MAYEK: Mtei @HB_SCRIPT_OLD_SOUTH_ARABIAN: Sarb @HB_SCRIPT_OLD_TURKIC: Orkh @HB_SCRIPT_SAMARITAN: Samr @HB_SCRIPT_TAI_THAM: Lana @HB_SCRIPT_TAI_VIET: Tavt @HB_SCRIPT_BATAK: Batk @HB_SCRIPT_BRAHMI: Brah @HB_SCRIPT_MANDAIC: Mand @HB_SCRIPT_CHAKMA: Cakm @HB_SCRIPT_MEROITIC_CURSIVE: Merc @HB_SCRIPT_MEROITIC_HIEROGLYPHS: Mero @HB_SCRIPT_MIAO: Plrd @HB_SCRIPT_SHARADA: Shrd @HB_SCRIPT_SORA_SOMPENG: Sora @HB_SCRIPT_TAKRI: Takr @HB_SCRIPT_BASSA_VAH: Bass, Since: 0.9.30 @HB_SCRIPT_CAUCASIAN_ALBANIAN: Aghb, Since: 0.9.30 @HB_SCRIPT_DUPLOYAN: Dupl, Since: 0.9.30 @HB_SCRIPT_ELBASAN: Elba, Since: 0.9.30 @HB_SCRIPT_GRANTHA: Gran, Since: 0.9.30 @HB_SCRIPT_KHOJKI: Khoj, Since: 0.9.30 @HB_SCRIPT_KHUDAWADI: Sind, Since: 0.9.30 @HB_SCRIPT_LINEAR_A: Lina, Since: 0.9.30 @HB_SCRIPT_MAHAJANI: Mahj, Since: 0.9.30 @HB_SCRIPT_MANICHAEAN: Mani, Since: 0.9.30 @HB_SCRIPT_MENDE_KIKAKUI: Mend, Since: 0.9.30 @HB_SCRIPT_MODI: Modi, Since: 0.9.30 @HB_SCRIPT_MRO: Mroo, Since: 0.9.30 @HB_SCRIPT_NABATAEAN: Nbat, Since: 0.9.30 @HB_SCRIPT_OLD_NORTH_ARABIAN: Narb, Since: 0.9.30 @HB_SCRIPT_OLD_PERMIC: Perm, Since: 0.9.30 @HB_SCRIPT_PAHAWH_HMONG: Hmng, Since: 0.9.30 @HB_SCRIPT_PALMYRENE: Palm, Since: 0.9.30 @HB_SCRIPT_PAU_CIN_HAU: Pauc, Since: 0.9.30 @HB_SCRIPT_PSALTER_PAHLAVI: Phlp, Since: 0.9.30 @HB_SCRIPT_SIDDHAM: Sidd, Since: 0.9.30 @HB_SCRIPT_TIRHUTA: Tirh, Since: 0.9.30 @HB_SCRIPT_WARANG_CITI: Wara, Since: 0.9.30 @HB_SCRIPT_AHOM: Ahom, Since: 0.9.30 @HB_SCRIPT_ANATOLIAN_HIEROGLYPHS: Hluw, Since: 0.9.30 @HB_SCRIPT_HATRAN: Hatr, Since: 0.9.30 @HB_SCRIPT_MULTANI: Mult, Since: 0.9.30 @HB_SCRIPT_OLD_HUNGARIAN: Hung, Since: 0.9.30 @HB_SCRIPT_SIGNWRITING: Sgnw, Since: 0.9.30 @HB_SCRIPT_ADLAM: Adlm, Since: 1.3.0 @HB_SCRIPT_BHAIKSUKI: Bhks, Since: 1.3.0 @HB_SCRIPT_MARCHEN: Marc, Since: 1.3.0 @HB_SCRIPT_OSAGE: Osge, Since: 1.3.0 @HB_SCRIPT_TANGUT: Tang, Since: 1.3.0 @HB_SCRIPT_NEWA: Newa, Since: 1.3.0 @HB_SCRIPT_MASARAM_GONDI: Gonm, Since: 1.6.0 @HB_SCRIPT_NUSHU: Nshu, Since: 1.6.0 @HB_SCRIPT_SOYOMBO: Soyo, Since: 1.6.0 @HB_SCRIPT_ZANABAZAR_SQUARE: Zanb, Since: 1.6.0 @HB_SCRIPT_DOGRA: Dogr, Since: 1.8.0 @HB_SCRIPT_GUNJALA_GONDI: Gong, Since: 1.8.0 @HB_SCRIPT_HANIFI_ROHINGYA: Rohg, Since: 1.8.0 @HB_SCRIPT_MAKASAR: Maka, Since: 1.8.0 @HB_SCRIPT_MEDEFAIDRIN: Medf, Since: 1.8.0 @HB_SCRIPT_OLD_SOGDIAN: Sogo, Since: 1.8.0 @HB_SCRIPT_SOGDIAN: Sogd, Since: 1.8.0 @HB_SCRIPT_ELYMAIC: Elym, Since: 2.4.0 @HB_SCRIPT_NANDINAGARI: Nand, Since: 2.4.0 @HB_SCRIPT_NYIAKENG_PUACHUE_HMONG: Hmnp, Since: 2.4.0 @HB_SCRIPT_WANCHO: Wcho, Since: 2.4.0 @HB_SCRIPT_CHORASMIAN: Chrs, Since: 2.6.7 @HB_SCRIPT_DIVES_AKURU: Diak, Since: 2.6.7 @HB_SCRIPT_KHITAN_SMALL_SCRIPT: Kits, Since: 2.6.7 @HB_SCRIPT_YEZIDI: Yezi, Since: 2.6.7 @HB_SCRIPT_CYPRO_MINOAN: Cpmn, Since: 3.0.0 @HB_SCRIPT_OLD_UYGHUR: Ougr, Since: 3.0.0 @HB_SCRIPT_TANGSA: Tnsa, Since: 3.0.0 @HB_SCRIPT_TOTO: Toto, Since: 3.0.0 @HB_SCRIPT_VITHKUQI: Vith, Since: 3.0.0 @HB_SCRIPT_MATH: Zmth, Since: 3.4.0 @HB_SCRIPT_KAWI: Kawi, Since: 5.2.0 @HB_SCRIPT_NAG_MUNDARI: Nagm, Since: 5.2.0 @HB_SCRIPT_GARAY: Gara, Since: 10.0.0 @HB_SCRIPT_GURUNG_KHEMA: Gukh, Since: 10.0.0 @HB_SCRIPT_KIRAT_RAI: Krai, Since: 10.0.0 @HB_SCRIPT_OL_ONAL: Onao, Since: 10.0.0 @HB_SCRIPT_SUNUWAR: Sunu, Since: 10.0.0 @HB_SCRIPT_TODHRI: Todr, Since: 10.0.0 @HB_SCRIPT_TULU_TIGALARI: Tutg, Since: 10.0.0 @HB_SCRIPT_INVALID: No script set

Data type for scripts. Each hb_script_t's value is an hb_tag_t corresponding to the four-letter values defined by ISO 15924.

See also the Script (sc) property of the Unicode Character Database.

Enumerator
HB_SCRIPT_COMMON 
HB_SCRIPT_INHERITED 
HB_SCRIPT_UNKNOWN 
HB_SCRIPT_ARABIC 
HB_SCRIPT_ARMENIAN 
HB_SCRIPT_BENGALI 
HB_SCRIPT_CYRILLIC 
HB_SCRIPT_DEVANAGARI 
HB_SCRIPT_GEORGIAN 
HB_SCRIPT_GREEK 
HB_SCRIPT_GUJARATI 
HB_SCRIPT_GURMUKHI 
HB_SCRIPT_HANGUL 
HB_SCRIPT_HAN 
HB_SCRIPT_HEBREW 
HB_SCRIPT_HIRAGANA 
HB_SCRIPT_KANNADA 
HB_SCRIPT_KATAKANA 
HB_SCRIPT_LAO 
HB_SCRIPT_LATIN 
HB_SCRIPT_MALAYALAM 
HB_SCRIPT_ORIYA 
HB_SCRIPT_TAMIL 
HB_SCRIPT_TELUGU 
HB_SCRIPT_THAI 
HB_SCRIPT_TIBETAN 
HB_SCRIPT_BOPOMOFO 
HB_SCRIPT_BRAILLE 
HB_SCRIPT_CANADIAN_SYLLABICS 
HB_SCRIPT_CHEROKEE 
HB_SCRIPT_ETHIOPIC 
HB_SCRIPT_KHMER 
HB_SCRIPT_MONGOLIAN 
HB_SCRIPT_MYANMAR 
HB_SCRIPT_OGHAM 
HB_SCRIPT_RUNIC 
HB_SCRIPT_SINHALA 
HB_SCRIPT_SYRIAC 
HB_SCRIPT_THAANA 
HB_SCRIPT_YI 
HB_SCRIPT_DESERET 
HB_SCRIPT_GOTHIC 
HB_SCRIPT_OLD_ITALIC 
HB_SCRIPT_BUHID 
HB_SCRIPT_HANUNOO 
HB_SCRIPT_TAGALOG 
HB_SCRIPT_TAGBANWA 
HB_SCRIPT_CYPRIOT 
HB_SCRIPT_LIMBU 
HB_SCRIPT_LINEAR_B 
HB_SCRIPT_OSMANYA 
HB_SCRIPT_SHAVIAN 
HB_SCRIPT_TAI_LE 
HB_SCRIPT_UGARITIC 
HB_SCRIPT_BUGINESE 
HB_SCRIPT_COPTIC 
HB_SCRIPT_GLAGOLITIC 
HB_SCRIPT_KHAROSHTHI 
HB_SCRIPT_NEW_TAI_LUE 
HB_SCRIPT_OLD_PERSIAN 
HB_SCRIPT_SYLOTI_NAGRI 
HB_SCRIPT_TIFINAGH 
HB_SCRIPT_BALINESE 
HB_SCRIPT_CUNEIFORM 
HB_SCRIPT_NKO 
HB_SCRIPT_PHAGS_PA 
HB_SCRIPT_PHOENICIAN 
HB_SCRIPT_CARIAN 
HB_SCRIPT_CHAM 
HB_SCRIPT_KAYAH_LI 
HB_SCRIPT_LEPCHA 
HB_SCRIPT_LYCIAN 
HB_SCRIPT_LYDIAN 
HB_SCRIPT_OL_CHIKI 
HB_SCRIPT_REJANG 
HB_SCRIPT_SAURASHTRA 
HB_SCRIPT_SUNDANESE 
HB_SCRIPT_VAI 
HB_SCRIPT_AVESTAN 
HB_SCRIPT_BAMUM 
HB_SCRIPT_EGYPTIAN_HIEROGLYPHS 
HB_SCRIPT_IMPERIAL_ARAMAIC 
HB_SCRIPT_INSCRIPTIONAL_PAHLAVI 
HB_SCRIPT_INSCRIPTIONAL_PARTHIAN 
HB_SCRIPT_JAVANESE 
HB_SCRIPT_KAITHI 
HB_SCRIPT_LISU 
HB_SCRIPT_MEETEI_MAYEK 
HB_SCRIPT_OLD_SOUTH_ARABIAN 
HB_SCRIPT_OLD_TURKIC 
HB_SCRIPT_SAMARITAN 
HB_SCRIPT_TAI_THAM 
HB_SCRIPT_TAI_VIET 
HB_SCRIPT_BATAK 
HB_SCRIPT_BRAHMI 
HB_SCRIPT_MANDAIC 
HB_SCRIPT_CHAKMA 
HB_SCRIPT_MEROITIC_CURSIVE 
HB_SCRIPT_MEROITIC_HIEROGLYPHS 
HB_SCRIPT_MIAO 
HB_SCRIPT_SHARADA 
HB_SCRIPT_SORA_SOMPENG 
HB_SCRIPT_TAKRI 
HB_SCRIPT_BASSA_VAH 
HB_SCRIPT_CAUCASIAN_ALBANIAN 
HB_SCRIPT_DUPLOYAN 
HB_SCRIPT_ELBASAN 
HB_SCRIPT_GRANTHA 
HB_SCRIPT_KHOJKI 
HB_SCRIPT_KHUDAWADI 
HB_SCRIPT_LINEAR_A 
HB_SCRIPT_MAHAJANI 
HB_SCRIPT_MANICHAEAN 
HB_SCRIPT_MENDE_KIKAKUI 
HB_SCRIPT_MODI 
HB_SCRIPT_MRO 
HB_SCRIPT_NABATAEAN 
HB_SCRIPT_OLD_NORTH_ARABIAN 
HB_SCRIPT_OLD_PERMIC 
HB_SCRIPT_PAHAWH_HMONG 
HB_SCRIPT_PALMYRENE 
HB_SCRIPT_PAU_CIN_HAU 
HB_SCRIPT_PSALTER_PAHLAVI 
HB_SCRIPT_SIDDHAM 
HB_SCRIPT_TIRHUTA 
HB_SCRIPT_WARANG_CITI 
HB_SCRIPT_AHOM 
HB_SCRIPT_ANATOLIAN_HIEROGLYPHS 
HB_SCRIPT_HATRAN 
HB_SCRIPT_MULTANI 
HB_SCRIPT_OLD_HUNGARIAN 
HB_SCRIPT_SIGNWRITING 
HB_SCRIPT_ADLAM 
HB_SCRIPT_BHAIKSUKI 
HB_SCRIPT_MARCHEN 
HB_SCRIPT_OSAGE 
HB_SCRIPT_TANGUT 
HB_SCRIPT_NEWA 
HB_SCRIPT_MASARAM_GONDI 
HB_SCRIPT_NUSHU 
HB_SCRIPT_SOYOMBO 
HB_SCRIPT_ZANABAZAR_SQUARE 
HB_SCRIPT_DOGRA 
HB_SCRIPT_GUNJALA_GONDI 
HB_SCRIPT_HANIFI_ROHINGYA 
HB_SCRIPT_MAKASAR 
HB_SCRIPT_MEDEFAIDRIN 
HB_SCRIPT_OLD_SOGDIAN 
HB_SCRIPT_SOGDIAN 
HB_SCRIPT_ELYMAIC 
HB_SCRIPT_NANDINAGARI 
HB_SCRIPT_NYIAKENG_PUACHUE_HMONG 
HB_SCRIPT_WANCHO 
HB_SCRIPT_CHORASMIAN 
HB_SCRIPT_DIVES_AKURU 
HB_SCRIPT_KHITAN_SMALL_SCRIPT 
HB_SCRIPT_YEZIDI 
HB_SCRIPT_CYPRO_MINOAN 
HB_SCRIPT_OLD_UYGHUR 
HB_SCRIPT_TANGSA 
HB_SCRIPT_TOTO 
HB_SCRIPT_VITHKUQI 
HB_SCRIPT_MATH 
HB_SCRIPT_KAWI 
HB_SCRIPT_NAG_MUNDARI 
HB_SCRIPT_GARAY 
HB_SCRIPT_GURUNG_KHEMA 
HB_SCRIPT_KIRAT_RAI 
HB_SCRIPT_OL_ONAL 
HB_SCRIPT_SUNUWAR 
HB_SCRIPT_TODHRI 
HB_SCRIPT_TULU_TIGALARI 
HB_SCRIPT_INVALID 
_HB_SCRIPT_MAX_VALUE 
_HB_SCRIPT_MAX_VALUE_SIGNED 

Definition at line 524 of file hb-common.h.

525{
526 HB_SCRIPT_COMMON = HB_TAG ('Z','y','y','y'), /*1.1*/
527 HB_SCRIPT_INHERITED = HB_TAG ('Z','i','n','h'), /*1.1*/
528 HB_SCRIPT_UNKNOWN = HB_TAG ('Z','z','z','z'), /*5.0*/
529
530 HB_SCRIPT_ARABIC = HB_TAG ('A','r','a','b'), /*1.1*/
531 HB_SCRIPT_ARMENIAN = HB_TAG ('A','r','m','n'), /*1.1*/
532 HB_SCRIPT_BENGALI = HB_TAG ('B','e','n','g'), /*1.1*/
533 HB_SCRIPT_CYRILLIC = HB_TAG ('C','y','r','l'), /*1.1*/
534 HB_SCRIPT_DEVANAGARI = HB_TAG ('D','e','v','a'), /*1.1*/
535 HB_SCRIPT_GEORGIAN = HB_TAG ('G','e','o','r'), /*1.1*/
536 HB_SCRIPT_GREEK = HB_TAG ('G','r','e','k'), /*1.1*/
537 HB_SCRIPT_GUJARATI = HB_TAG ('G','u','j','r'), /*1.1*/
538 HB_SCRIPT_GURMUKHI = HB_TAG ('G','u','r','u'), /*1.1*/
539 HB_SCRIPT_HANGUL = HB_TAG ('H','a','n','g'), /*1.1*/
540 HB_SCRIPT_HAN = HB_TAG ('H','a','n','i'), /*1.1*/
541 HB_SCRIPT_HEBREW = HB_TAG ('H','e','b','r'), /*1.1*/
542 HB_SCRIPT_HIRAGANA = HB_TAG ('H','i','r','a'), /*1.1*/
543 HB_SCRIPT_KANNADA = HB_TAG ('K','n','d','a'), /*1.1*/
544 HB_SCRIPT_KATAKANA = HB_TAG ('K','a','n','a'), /*1.1*/
545 HB_SCRIPT_LAO = HB_TAG ('L','a','o','o'), /*1.1*/
546 HB_SCRIPT_LATIN = HB_TAG ('L','a','t','n'), /*1.1*/
547 HB_SCRIPT_MALAYALAM = HB_TAG ('M','l','y','m'), /*1.1*/
548 HB_SCRIPT_ORIYA = HB_TAG ('O','r','y','a'), /*1.1*/
549 HB_SCRIPT_TAMIL = HB_TAG ('T','a','m','l'), /*1.1*/
550 HB_SCRIPT_TELUGU = HB_TAG ('T','e','l','u'), /*1.1*/
551 HB_SCRIPT_THAI = HB_TAG ('T','h','a','i'), /*1.1*/
552
553 HB_SCRIPT_TIBETAN = HB_TAG ('T','i','b','t'), /*2.0*/
554
555 HB_SCRIPT_BOPOMOFO = HB_TAG ('B','o','p','o'), /*3.0*/
556 HB_SCRIPT_BRAILLE = HB_TAG ('B','r','a','i'), /*3.0*/
557 HB_SCRIPT_CANADIAN_SYLLABICS = HB_TAG ('C','a','n','s'), /*3.0*/
558 HB_SCRIPT_CHEROKEE = HB_TAG ('C','h','e','r'), /*3.0*/
559 HB_SCRIPT_ETHIOPIC = HB_TAG ('E','t','h','i'), /*3.0*/
560 HB_SCRIPT_KHMER = HB_TAG ('K','h','m','r'), /*3.0*/
561 HB_SCRIPT_MONGOLIAN = HB_TAG ('M','o','n','g'), /*3.0*/
562 HB_SCRIPT_MYANMAR = HB_TAG ('M','y','m','r'), /*3.0*/
563 HB_SCRIPT_OGHAM = HB_TAG ('O','g','a','m'), /*3.0*/
564 HB_SCRIPT_RUNIC = HB_TAG ('R','u','n','r'), /*3.0*/
565 HB_SCRIPT_SINHALA = HB_TAG ('S','i','n','h'), /*3.0*/
566 HB_SCRIPT_SYRIAC = HB_TAG ('S','y','r','c'), /*3.0*/
567 HB_SCRIPT_THAANA = HB_TAG ('T','h','a','a'), /*3.0*/
568 HB_SCRIPT_YI = HB_TAG ('Y','i','i','i'), /*3.0*/
569
570 HB_SCRIPT_DESERET = HB_TAG ('D','s','r','t'), /*3.1*/
571 HB_SCRIPT_GOTHIC = HB_TAG ('G','o','t','h'), /*3.1*/
572 HB_SCRIPT_OLD_ITALIC = HB_TAG ('I','t','a','l'), /*3.1*/
573
574 HB_SCRIPT_BUHID = HB_TAG ('B','u','h','d'), /*3.2*/
575 HB_SCRIPT_HANUNOO = HB_TAG ('H','a','n','o'), /*3.2*/
576 HB_SCRIPT_TAGALOG = HB_TAG ('T','g','l','g'), /*3.2*/
577 HB_SCRIPT_TAGBANWA = HB_TAG ('T','a','g','b'), /*3.2*/
578
579 HB_SCRIPT_CYPRIOT = HB_TAG ('C','p','r','t'), /*4.0*/
580 HB_SCRIPT_LIMBU = HB_TAG ('L','i','m','b'), /*4.0*/
581 HB_SCRIPT_LINEAR_B = HB_TAG ('L','i','n','b'), /*4.0*/
582 HB_SCRIPT_OSMANYA = HB_TAG ('O','s','m','a'), /*4.0*/
583 HB_SCRIPT_SHAVIAN = HB_TAG ('S','h','a','w'), /*4.0*/
584 HB_SCRIPT_TAI_LE = HB_TAG ('T','a','l','e'), /*4.0*/
585 HB_SCRIPT_UGARITIC = HB_TAG ('U','g','a','r'), /*4.0*/
586
587 HB_SCRIPT_BUGINESE = HB_TAG ('B','u','g','i'), /*4.1*/
588 HB_SCRIPT_COPTIC = HB_TAG ('C','o','p','t'), /*4.1*/
589 HB_SCRIPT_GLAGOLITIC = HB_TAG ('G','l','a','g'), /*4.1*/
590 HB_SCRIPT_KHAROSHTHI = HB_TAG ('K','h','a','r'), /*4.1*/
591 HB_SCRIPT_NEW_TAI_LUE = HB_TAG ('T','a','l','u'), /*4.1*/
592 HB_SCRIPT_OLD_PERSIAN = HB_TAG ('X','p','e','o'), /*4.1*/
593 HB_SCRIPT_SYLOTI_NAGRI = HB_TAG ('S','y','l','o'), /*4.1*/
594 HB_SCRIPT_TIFINAGH = HB_TAG ('T','f','n','g'), /*4.1*/
595
596 HB_SCRIPT_BALINESE = HB_TAG ('B','a','l','i'), /*5.0*/
597 HB_SCRIPT_CUNEIFORM = HB_TAG ('X','s','u','x'), /*5.0*/
598 HB_SCRIPT_NKO = HB_TAG ('N','k','o','o'), /*5.0*/
599 HB_SCRIPT_PHAGS_PA = HB_TAG ('P','h','a','g'), /*5.0*/
600 HB_SCRIPT_PHOENICIAN = HB_TAG ('P','h','n','x'), /*5.0*/
601
602 HB_SCRIPT_CARIAN = HB_TAG ('C','a','r','i'), /*5.1*/
603 HB_SCRIPT_CHAM = HB_TAG ('C','h','a','m'), /*5.1*/
604 HB_SCRIPT_KAYAH_LI = HB_TAG ('K','a','l','i'), /*5.1*/
605 HB_SCRIPT_LEPCHA = HB_TAG ('L','e','p','c'), /*5.1*/
606 HB_SCRIPT_LYCIAN = HB_TAG ('L','y','c','i'), /*5.1*/
607 HB_SCRIPT_LYDIAN = HB_TAG ('L','y','d','i'), /*5.1*/
608 HB_SCRIPT_OL_CHIKI = HB_TAG ('O','l','c','k'), /*5.1*/
609 HB_SCRIPT_REJANG = HB_TAG ('R','j','n','g'), /*5.1*/
610 HB_SCRIPT_SAURASHTRA = HB_TAG ('S','a','u','r'), /*5.1*/
611 HB_SCRIPT_SUNDANESE = HB_TAG ('S','u','n','d'), /*5.1*/
612 HB_SCRIPT_VAI = HB_TAG ('V','a','i','i'), /*5.1*/
613
614 HB_SCRIPT_AVESTAN = HB_TAG ('A','v','s','t'), /*5.2*/
615 HB_SCRIPT_BAMUM = HB_TAG ('B','a','m','u'), /*5.2*/
616 HB_SCRIPT_EGYPTIAN_HIEROGLYPHS = HB_TAG ('E','g','y','p'), /*5.2*/
617 HB_SCRIPT_IMPERIAL_ARAMAIC = HB_TAG ('A','r','m','i'), /*5.2*/
618 HB_SCRIPT_INSCRIPTIONAL_PAHLAVI = HB_TAG ('P','h','l','i'), /*5.2*/
619 HB_SCRIPT_INSCRIPTIONAL_PARTHIAN = HB_TAG ('P','r','t','i'), /*5.2*/
620 HB_SCRIPT_JAVANESE = HB_TAG ('J','a','v','a'), /*5.2*/
621 HB_SCRIPT_KAITHI = HB_TAG ('K','t','h','i'), /*5.2*/
622 HB_SCRIPT_LISU = HB_TAG ('L','i','s','u'), /*5.2*/
623 HB_SCRIPT_MEETEI_MAYEK = HB_TAG ('M','t','e','i'), /*5.2*/
624 HB_SCRIPT_OLD_SOUTH_ARABIAN = HB_TAG ('S','a','r','b'), /*5.2*/
625 HB_SCRIPT_OLD_TURKIC = HB_TAG ('O','r','k','h'), /*5.2*/
626 HB_SCRIPT_SAMARITAN = HB_TAG ('S','a','m','r'), /*5.2*/
627 HB_SCRIPT_TAI_THAM = HB_TAG ('L','a','n','a'), /*5.2*/
628 HB_SCRIPT_TAI_VIET = HB_TAG ('T','a','v','t'), /*5.2*/
629
630 HB_SCRIPT_BATAK = HB_TAG ('B','a','t','k'), /*6.0*/
631 HB_SCRIPT_BRAHMI = HB_TAG ('B','r','a','h'), /*6.0*/
632 HB_SCRIPT_MANDAIC = HB_TAG ('M','a','n','d'), /*6.0*/
633
634 HB_SCRIPT_CHAKMA = HB_TAG ('C','a','k','m'), /*6.1*/
635 HB_SCRIPT_MEROITIC_CURSIVE = HB_TAG ('M','e','r','c'), /*6.1*/
636 HB_SCRIPT_MEROITIC_HIEROGLYPHS = HB_TAG ('M','e','r','o'), /*6.1*/
637 HB_SCRIPT_MIAO = HB_TAG ('P','l','r','d'), /*6.1*/
638 HB_SCRIPT_SHARADA = HB_TAG ('S','h','r','d'), /*6.1*/
639 HB_SCRIPT_SORA_SOMPENG = HB_TAG ('S','o','r','a'), /*6.1*/
640 HB_SCRIPT_TAKRI = HB_TAG ('T','a','k','r'), /*6.1*/
641
642 /*
643 * Since: 0.9.30
644 */
645 HB_SCRIPT_BASSA_VAH = HB_TAG ('B','a','s','s'), /*7.0*/
646 HB_SCRIPT_CAUCASIAN_ALBANIAN = HB_TAG ('A','g','h','b'), /*7.0*/
647 HB_SCRIPT_DUPLOYAN = HB_TAG ('D','u','p','l'), /*7.0*/
648 HB_SCRIPT_ELBASAN = HB_TAG ('E','l','b','a'), /*7.0*/
649 HB_SCRIPT_GRANTHA = HB_TAG ('G','r','a','n'), /*7.0*/
650 HB_SCRIPT_KHOJKI = HB_TAG ('K','h','o','j'), /*7.0*/
651 HB_SCRIPT_KHUDAWADI = HB_TAG ('S','i','n','d'), /*7.0*/
652 HB_SCRIPT_LINEAR_A = HB_TAG ('L','i','n','a'), /*7.0*/
653 HB_SCRIPT_MAHAJANI = HB_TAG ('M','a','h','j'), /*7.0*/
654 HB_SCRIPT_MANICHAEAN = HB_TAG ('M','a','n','i'), /*7.0*/
655 HB_SCRIPT_MENDE_KIKAKUI = HB_TAG ('M','e','n','d'), /*7.0*/
656 HB_SCRIPT_MODI = HB_TAG ('M','o','d','i'), /*7.0*/
657 HB_SCRIPT_MRO = HB_TAG ('M','r','o','o'), /*7.0*/
658 HB_SCRIPT_NABATAEAN = HB_TAG ('N','b','a','t'), /*7.0*/
659 HB_SCRIPT_OLD_NORTH_ARABIAN = HB_TAG ('N','a','r','b'), /*7.0*/
660 HB_SCRIPT_OLD_PERMIC = HB_TAG ('P','e','r','m'), /*7.0*/
661 HB_SCRIPT_PAHAWH_HMONG = HB_TAG ('H','m','n','g'), /*7.0*/
662 HB_SCRIPT_PALMYRENE = HB_TAG ('P','a','l','m'), /*7.0*/
663 HB_SCRIPT_PAU_CIN_HAU = HB_TAG ('P','a','u','c'), /*7.0*/
664 HB_SCRIPT_PSALTER_PAHLAVI = HB_TAG ('P','h','l','p'), /*7.0*/
665 HB_SCRIPT_SIDDHAM = HB_TAG ('S','i','d','d'), /*7.0*/
666 HB_SCRIPT_TIRHUTA = HB_TAG ('T','i','r','h'), /*7.0*/
667 HB_SCRIPT_WARANG_CITI = HB_TAG ('W','a','r','a'), /*7.0*/
668
669 HB_SCRIPT_AHOM = HB_TAG ('A','h','o','m'), /*8.0*/
670 HB_SCRIPT_ANATOLIAN_HIEROGLYPHS = HB_TAG ('H','l','u','w'), /*8.0*/
671 HB_SCRIPT_HATRAN = HB_TAG ('H','a','t','r'), /*8.0*/
672 HB_SCRIPT_MULTANI = HB_TAG ('M','u','l','t'), /*8.0*/
673 HB_SCRIPT_OLD_HUNGARIAN = HB_TAG ('H','u','n','g'), /*8.0*/
674 HB_SCRIPT_SIGNWRITING = HB_TAG ('S','g','n','w'), /*8.0*/
675
676 /*
677 * Since 1.3.0
678 */
679 HB_SCRIPT_ADLAM = HB_TAG ('A','d','l','m'), /*9.0*/
680 HB_SCRIPT_BHAIKSUKI = HB_TAG ('B','h','k','s'), /*9.0*/
681 HB_SCRIPT_MARCHEN = HB_TAG ('M','a','r','c'), /*9.0*/
682 HB_SCRIPT_OSAGE = HB_TAG ('O','s','g','e'), /*9.0*/
683 HB_SCRIPT_TANGUT = HB_TAG ('T','a','n','g'), /*9.0*/
684 HB_SCRIPT_NEWA = HB_TAG ('N','e','w','a'), /*9.0*/
685
686 /*
687 * Since 1.6.0
688 */
689 HB_SCRIPT_MASARAM_GONDI = HB_TAG ('G','o','n','m'), /*10.0*/
690 HB_SCRIPT_NUSHU = HB_TAG ('N','s','h','u'), /*10.0*/
691 HB_SCRIPT_SOYOMBO = HB_TAG ('S','o','y','o'), /*10.0*/
692 HB_SCRIPT_ZANABAZAR_SQUARE = HB_TAG ('Z','a','n','b'), /*10.0*/
693
694 /*
695 * Since 1.8.0
696 */
697 HB_SCRIPT_DOGRA = HB_TAG ('D','o','g','r'), /*11.0*/
698 HB_SCRIPT_GUNJALA_GONDI = HB_TAG ('G','o','n','g'), /*11.0*/
699 HB_SCRIPT_HANIFI_ROHINGYA = HB_TAG ('R','o','h','g'), /*11.0*/
700 HB_SCRIPT_MAKASAR = HB_TAG ('M','a','k','a'), /*11.0*/
701 HB_SCRIPT_MEDEFAIDRIN = HB_TAG ('M','e','d','f'), /*11.0*/
702 HB_SCRIPT_OLD_SOGDIAN = HB_TAG ('S','o','g','o'), /*11.0*/
703 HB_SCRIPT_SOGDIAN = HB_TAG ('S','o','g','d'), /*11.0*/
704
705 /*
706 * Since 2.4.0
707 */
708 HB_SCRIPT_ELYMAIC = HB_TAG ('E','l','y','m'), /*12.0*/
709 HB_SCRIPT_NANDINAGARI = HB_TAG ('N','a','n','d'), /*12.0*/
710 HB_SCRIPT_NYIAKENG_PUACHUE_HMONG = HB_TAG ('H','m','n','p'), /*12.0*/
711 HB_SCRIPT_WANCHO = HB_TAG ('W','c','h','o'), /*12.0*/
712
713 /*
714 * Since 2.6.7
715 */
716 HB_SCRIPT_CHORASMIAN = HB_TAG ('C','h','r','s'), /*13.0*/
717 HB_SCRIPT_DIVES_AKURU = HB_TAG ('D','i','a','k'), /*13.0*/
718 HB_SCRIPT_KHITAN_SMALL_SCRIPT = HB_TAG ('K','i','t','s'), /*13.0*/
719 HB_SCRIPT_YEZIDI = HB_TAG ('Y','e','z','i'), /*13.0*/
720
721 /*
722 * Since 3.0.0
723 */
724 HB_SCRIPT_CYPRO_MINOAN = HB_TAG ('C','p','m','n'), /*14.0*/
725 HB_SCRIPT_OLD_UYGHUR = HB_TAG ('O','u','g','r'), /*14.0*/
726 HB_SCRIPT_TANGSA = HB_TAG ('T','n','s','a'), /*14.0*/
727 HB_SCRIPT_TOTO = HB_TAG ('T','o','t','o'), /*14.0*/
728 HB_SCRIPT_VITHKUQI = HB_TAG ('V','i','t','h'), /*14.0*/
729
730 /*
731 * Since 3.4.0
732 */
733 HB_SCRIPT_MATH = HB_TAG ('Z','m','t','h'),
734
735 /*
736 * Since 5.2.0
737 */
738 HB_SCRIPT_KAWI = HB_TAG ('K','a','w','i'), /*15.0*/
739 HB_SCRIPT_NAG_MUNDARI = HB_TAG ('N','a','g','m'), /*15.0*/
740
741 /*
742 * Since 10.0.0
743 */
744 HB_SCRIPT_GARAY = HB_TAG ('G','a','r','a'), /*16.0*/
745 HB_SCRIPT_GURUNG_KHEMA = HB_TAG ('G','u','k','h'), /*16.0*/
746 HB_SCRIPT_KIRAT_RAI = HB_TAG ('K','r','a','i'), /*16.0*/
747 HB_SCRIPT_OL_ONAL = HB_TAG ('O','n','a','o'), /*16.0*/
748 HB_SCRIPT_SUNUWAR = HB_TAG ('S','u','n','u'), /*16.0*/
749 HB_SCRIPT_TODHRI = HB_TAG ('T','o','d','r'), /*16.0*/
750 HB_SCRIPT_TULU_TIGALARI = HB_TAG ('T','u','t','g'), /*16.0*/
751
752 /* No script set. */
754
755 /*< private >*/
756
757 /* Dummy values to ensure any hb_tag_t value can be passed/stored as hb_script_t
758 * without risking undefined behavior. We have two, for historical reasons.
759 * HB_TAG_MAX used to be unsigned, but that was invalid Ansi C, so was changed
760 * to _HB_SCRIPT_MAX_VALUE to be equal to HB_TAG_MAX_SIGNED as well.
761 *
762 * See this thread for technicalities:
763 *
764 * https://lists.freedesktop.org/archives/harfbuzz/2014-March/004150.html
765 */
768
#define HB_TAG(c1, c2, c3, c4)
Definition hb-common.h:176
#define HB_TAG_MAX_SIGNED
Definition hb-common.h:210
hb_script_t
Definition hb-common.h:525
@ HB_SCRIPT_GARAY
Definition hb-common.h:744
@ HB_SCRIPT_MEROITIC_CURSIVE
Definition hb-common.h:635
@ HB_SCRIPT_AVESTAN
Definition hb-common.h:614
@ HB_SCRIPT_TANGUT
Definition hb-common.h:683
@ HB_SCRIPT_KATAKANA
Definition hb-common.h:544
@ HB_SCRIPT_SORA_SOMPENG
Definition hb-common.h:639
@ HB_SCRIPT_CHEROKEE
Definition hb-common.h:558
@ HB_SCRIPT_MRO
Definition hb-common.h:657
@ HB_SCRIPT_TAKRI
Definition hb-common.h:640
@ HB_SCRIPT_WANCHO
Definition hb-common.h:711
@ HB_SCRIPT_MANDAIC
Definition hb-common.h:632
@ HB_SCRIPT_AHOM
Definition hb-common.h:669
@ HB_SCRIPT_ELBASAN
Definition hb-common.h:648
@ HB_SCRIPT_HAN
Definition hb-common.h:540
@ HB_SCRIPT_JAVANESE
Definition hb-common.h:620
@ HB_SCRIPT_DOGRA
Definition hb-common.h:697
@ HB_SCRIPT_CHAM
Definition hb-common.h:603
@ HB_SCRIPT_KIRAT_RAI
Definition hb-common.h:746
@ HB_SCRIPT_BRAHMI
Definition hb-common.h:631
@ HB_SCRIPT_WARANG_CITI
Definition hb-common.h:667
@ HB_SCRIPT_CARIAN
Definition hb-common.h:602
@ HB_SCRIPT_ETHIOPIC
Definition hb-common.h:559
@ HB_SCRIPT_CYPRIOT
Definition hb-common.h:579
@ HB_SCRIPT_ZANABAZAR_SQUARE
Definition hb-common.h:692
@ HB_SCRIPT_SIDDHAM
Definition hb-common.h:665
@ HB_SCRIPT_MATH
Definition hb-common.h:733
@ HB_SCRIPT_BHAIKSUKI
Definition hb-common.h:680
@ HB_SCRIPT_CAUCASIAN_ALBANIAN
Definition hb-common.h:646
@ HB_SCRIPT_DEVANAGARI
Definition hb-common.h:534
@ HB_SCRIPT_RUNIC
Definition hb-common.h:564
@ HB_SCRIPT_LIMBU
Definition hb-common.h:580
@ HB_SCRIPT_INSCRIPTIONAL_PARTHIAN
Definition hb-common.h:619
@ HB_SCRIPT_TAGBANWA
Definition hb-common.h:577
@ HB_SCRIPT_MEDEFAIDRIN
Definition hb-common.h:701
@ HB_SCRIPT_YEZIDI
Definition hb-common.h:719
@ HB_SCRIPT_KAYAH_LI
Definition hb-common.h:604
@ HB_SCRIPT_SIGNWRITING
Definition hb-common.h:674
@ HB_SCRIPT_ARABIC
Definition hb-common.h:530
@ HB_SCRIPT_UNKNOWN
Definition hb-common.h:528
@ HB_SCRIPT_OLD_NORTH_ARABIAN
Definition hb-common.h:659
@ HB_SCRIPT_BALINESE
Definition hb-common.h:596
@ HB_SCRIPT_OLD_UYGHUR
Definition hb-common.h:725
@ HB_SCRIPT_ARMENIAN
Definition hb-common.h:531
@ HB_SCRIPT_BATAK
Definition hb-common.h:630
@ HB_SCRIPT_TAI_LE
Definition hb-common.h:584
@ HB_SCRIPT_MANICHAEAN
Definition hb-common.h:654
@ HB_SCRIPT_OGHAM
Definition hb-common.h:563
@ HB_SCRIPT_TIFINAGH
Definition hb-common.h:594
@ HB_SCRIPT_MALAYALAM
Definition hb-common.h:547
@ HB_SCRIPT_HIRAGANA
Definition hb-common.h:542
@ HB_SCRIPT_DIVES_AKURU
Definition hb-common.h:717
@ HB_SCRIPT_VAI
Definition hb-common.h:612
@ HB_SCRIPT_LATIN
Definition hb-common.h:546
@ HB_SCRIPT_ADLAM
Definition hb-common.h:679
@ HB_SCRIPT_OLD_ITALIC
Definition hb-common.h:572
@ HB_SCRIPT_MONGOLIAN
Definition hb-common.h:561
@ HB_SCRIPT_HANGUL
Definition hb-common.h:539
@ HB_SCRIPT_KHMER
Definition hb-common.h:560
@ HB_SCRIPT_OLD_PERMIC
Definition hb-common.h:660
@ HB_SCRIPT_SUNDANESE
Definition hb-common.h:611
@ HB_SCRIPT_TIBETAN
Definition hb-common.h:553
@ HB_SCRIPT_TELUGU
Definition hb-common.h:550
@ HB_SCRIPT_TOTO
Definition hb-common.h:727
@ HB_SCRIPT_TULU_TIGALARI
Definition hb-common.h:750
@ HB_SCRIPT_COMMON
Definition hb-common.h:526
@ HB_SCRIPT_SYRIAC
Definition hb-common.h:566
@ HB_SCRIPT_MODI
Definition hb-common.h:656
@ HB_SCRIPT_SYLOTI_NAGRI
Definition hb-common.h:593
@ HB_SCRIPT_OLD_TURKIC
Definition hb-common.h:625
@ HB_SCRIPT_INHERITED
Definition hb-common.h:527
@ HB_SCRIPT_BAMUM
Definition hb-common.h:615
@ HB_SCRIPT_HEBREW
Definition hb-common.h:541
@ HB_SCRIPT_LYDIAN
Definition hb-common.h:607
@ HB_SCRIPT_VITHKUQI
Definition hb-common.h:728
@ HB_SCRIPT_OLD_SOGDIAN
Definition hb-common.h:702
@ HB_SCRIPT_BENGALI
Definition hb-common.h:532
@ HB_SCRIPT_KHUDAWADI
Definition hb-common.h:651
@ HB_SCRIPT_PHOENICIAN
Definition hb-common.h:600
@ HB_SCRIPT_CYRILLIC
Definition hb-common.h:533
@ HB_SCRIPT_NAG_MUNDARI
Definition hb-common.h:739
@ HB_SCRIPT_GOTHIC
Definition hb-common.h:571
@ HB_SCRIPT_ORIYA
Definition hb-common.h:548
@ HB_SCRIPT_PAHAWH_HMONG
Definition hb-common.h:661
@ HB_SCRIPT_TAI_VIET
Definition hb-common.h:628
@ HB_SCRIPT_NEWA
Definition hb-common.h:684
@ HB_SCRIPT_PHAGS_PA
Definition hb-common.h:599
@ HB_SCRIPT_DUPLOYAN
Definition hb-common.h:647
@ HB_SCRIPT_MENDE_KIKAKUI
Definition hb-common.h:655
@ HB_SCRIPT_GRANTHA
Definition hb-common.h:649
@ _HB_SCRIPT_MAX_VALUE
Definition hb-common.h:766
@ HB_SCRIPT_NANDINAGARI
Definition hb-common.h:709
@ HB_SCRIPT_NABATAEAN
Definition hb-common.h:658
@ HB_SCRIPT_GUJARATI
Definition hb-common.h:537
@ HB_SCRIPT_IMPERIAL_ARAMAIC
Definition hb-common.h:617
@ HB_SCRIPT_PAU_CIN_HAU
Definition hb-common.h:663
@ HB_SCRIPT_UGARITIC
Definition hb-common.h:585
@ HB_SCRIPT_COPTIC
Definition hb-common.h:588
@ HB_SCRIPT_TAMIL
Definition hb-common.h:549
@ HB_SCRIPT_GUNJALA_GONDI
Definition hb-common.h:698
@ HB_SCRIPT_BRAILLE
Definition hb-common.h:556
@ HB_SCRIPT_OSMANYA
Definition hb-common.h:582
@ HB_SCRIPT_MEROITIC_HIEROGLYPHS
Definition hb-common.h:636
@ HB_SCRIPT_HATRAN
Definition hb-common.h:671
@ HB_SCRIPT_MIAO
Definition hb-common.h:637
@ HB_SCRIPT_PSALTER_PAHLAVI
Definition hb-common.h:664
@ HB_SCRIPT_HANUNOO
Definition hb-common.h:575
@ HB_SCRIPT_GURMUKHI
Definition hb-common.h:538
@ HB_SCRIPT_SUNUWAR
Definition hb-common.h:748
@ HB_SCRIPT_OL_ONAL
Definition hb-common.h:747
@ HB_SCRIPT_BASSA_VAH
Definition hb-common.h:645
@ HB_SCRIPT_KAWI
Definition hb-common.h:738
@ HB_SCRIPT_LINEAR_B
Definition hb-common.h:581
@ HB_SCRIPT_OLD_HUNGARIAN
Definition hb-common.h:673
@ HB_SCRIPT_MARCHEN
Definition hb-common.h:681
@ HB_SCRIPT_NYIAKENG_PUACHUE_HMONG
Definition hb-common.h:710
@ HB_SCRIPT_TIRHUTA
Definition hb-common.h:666
@ HB_SCRIPT_CANADIAN_SYLLABICS
Definition hb-common.h:557
@ HB_SCRIPT_MEETEI_MAYEK
Definition hb-common.h:623
@ HB_SCRIPT_KHAROSHTHI
Definition hb-common.h:590
@ HB_SCRIPT_MAHAJANI
Definition hb-common.h:653
@ HB_SCRIPT_SHARADA
Definition hb-common.h:638
@ HB_SCRIPT_NKO
Definition hb-common.h:598
@ HB_SCRIPT_EGYPTIAN_HIEROGLYPHS
Definition hb-common.h:616
@ HB_SCRIPT_SOGDIAN
Definition hb-common.h:703
@ HB_SCRIPT_TODHRI
Definition hb-common.h:749
@ HB_SCRIPT_KHITAN_SMALL_SCRIPT
Definition hb-common.h:718
@ HB_SCRIPT_THAANA
Definition hb-common.h:567
@ HB_SCRIPT_MYANMAR
Definition hb-common.h:562
@ HB_SCRIPT_OLD_SOUTH_ARABIAN
Definition hb-common.h:624
@ HB_SCRIPT_BOPOMOFO
Definition hb-common.h:555
@ HB_SCRIPT_HANIFI_ROHINGYA
Definition hb-common.h:699
@ HB_SCRIPT_CYPRO_MINOAN
Definition hb-common.h:724
@ HB_SCRIPT_NUSHU
Definition hb-common.h:690
@ HB_SCRIPT_NEW_TAI_LUE
Definition hb-common.h:591
@ HB_SCRIPT_LYCIAN
Definition hb-common.h:606
@ HB_SCRIPT_LAO
Definition hb-common.h:545
@ HB_SCRIPT_TAGALOG
Definition hb-common.h:576
@ HB_SCRIPT_PALMYRENE
Definition hb-common.h:662
@ HB_SCRIPT_GEORGIAN
Definition hb-common.h:535
@ HB_SCRIPT_DESERET
Definition hb-common.h:570
@ HB_SCRIPT_ANATOLIAN_HIEROGLYPHS
Definition hb-common.h:670
@ HB_SCRIPT_OL_CHIKI
Definition hb-common.h:608
@ HB_SCRIPT_TAI_THAM
Definition hb-common.h:627
@ HB_SCRIPT_SHAVIAN
Definition hb-common.h:583
@ HB_SCRIPT_GLAGOLITIC
Definition hb-common.h:589
@ HB_SCRIPT_REJANG
Definition hb-common.h:609
@ HB_SCRIPT_ELYMAIC
Definition hb-common.h:708
@ HB_SCRIPT_LEPCHA
Definition hb-common.h:605
@ _HB_SCRIPT_MAX_VALUE_SIGNED
Definition hb-common.h:767
@ HB_SCRIPT_YI
Definition hb-common.h:568
@ HB_SCRIPT_SAMARITAN
Definition hb-common.h:626
@ HB_SCRIPT_MAKASAR
Definition hb-common.h:700
@ HB_SCRIPT_GREEK
Definition hb-common.h:536
@ HB_SCRIPT_BUGINESE
Definition hb-common.h:587
@ HB_SCRIPT_SOYOMBO
Definition hb-common.h:691
@ HB_SCRIPT_INSCRIPTIONAL_PAHLAVI
Definition hb-common.h:618
@ HB_SCRIPT_BUHID
Definition hb-common.h:574
@ HB_SCRIPT_SINHALA
Definition hb-common.h:565
@ HB_SCRIPT_KAITHI
Definition hb-common.h:621
@ HB_SCRIPT_TANGSA
Definition hb-common.h:726
@ HB_SCRIPT_LISU
Definition hb-common.h:622
@ HB_SCRIPT_MASARAM_GONDI
Definition hb-common.h:689
@ HB_SCRIPT_MULTANI
Definition hb-common.h:672
@ HB_SCRIPT_KANNADA
Definition hb-common.h:543
@ HB_SCRIPT_THAI
Definition hb-common.h:551
@ HB_SCRIPT_CHORASMIAN
Definition hb-common.h:716
@ HB_SCRIPT_KHOJKI
Definition hb-common.h:650
@ HB_SCRIPT_SAURASHTRA
Definition hb-common.h:610
@ HB_SCRIPT_CUNEIFORM
Definition hb-common.h:597
@ HB_SCRIPT_LINEAR_A
Definition hb-common.h:652
@ HB_SCRIPT_CHAKMA
Definition hb-common.h:634
@ HB_SCRIPT_OLD_PERSIAN
Definition hb-common.h:592
@ HB_SCRIPT_INVALID
Definition hb-common.h:753
@ HB_SCRIPT_OSAGE
Definition hb-common.h:682
@ HB_SCRIPT_GURUNG_KHEMA
Definition hb-common.h:745
#define HB_TAG_NONE
Definition hb-common.h:194

Function Documentation

◆ hb_color_get_alpha()

HB_EXTERN uint8_t hb_color_get_alpha ( hb_color_t color)

◆ hb_color_get_blue()

HB_EXTERN uint8_t hb_color_get_blue ( hb_color_t color)

◆ hb_color_get_green()

HB_EXTERN uint8_t hb_color_get_green ( hb_color_t color)

◆ hb_color_get_red()

HB_EXTERN uint8_t hb_color_get_red ( hb_color_t color)

◆ hb_direction_from_string()

HB_EXTERN hb_direction_t hb_direction_from_string ( const char * str,
int len )

◆ hb_direction_to_string()

HB_EXTERN const char * hb_direction_to_string ( hb_direction_t direction)

◆ hb_feature_from_string()

HB_EXTERN hb_bool_t hb_feature_from_string ( const char * str,
int len,
hb_feature_t * feature )

◆ hb_feature_to_string()

HB_EXTERN void hb_feature_to_string ( hb_feature_t * feature,
char * buf,
unsigned int size )

◆ hb_language_from_string()

HB_EXTERN hb_language_t hb_language_from_string ( const char * str,
int len )

◆ hb_language_get_default()

HB_EXTERN hb_language_t hb_language_get_default ( void )

◆ hb_language_matches()

HB_EXTERN hb_bool_t hb_language_matches ( hb_language_t language,
hb_language_t specific )

◆ hb_language_to_string()

HB_EXTERN const char * hb_language_to_string ( hb_language_t language)

◆ hb_script_from_iso15924_tag()

HB_EXTERN hb_script_t hb_script_from_iso15924_tag ( hb_tag_t tag)

◆ hb_script_from_string()

HB_EXTERN hb_script_t hb_script_from_string ( const char * str,
int len )

◆ hb_script_get_horizontal_direction()

HB_EXTERN hb_direction_t hb_script_get_horizontal_direction ( hb_script_t script)

◆ hb_script_to_iso15924_tag()

HB_EXTERN hb_tag_t hb_script_to_iso15924_tag ( hb_script_t script)

◆ hb_tag_from_string()

HB_EXTERN hb_tag_t hb_tag_from_string ( const char * str,
int len )

◆ hb_tag_to_string()

HB_EXTERN void hb_tag_to_string ( hb_tag_t tag,
char * buf )

◆ hb_variation_from_string()

HB_EXTERN hb_bool_t hb_variation_from_string ( const char * str,
int len,
hb_variation_t * variation )

◆ hb_variation_to_string()

HB_EXTERN void hb_variation_to_string ( hb_variation_t * variation,
char * buf,
unsigned int size )

Variable Documentation

◆ hb_bool_t

HB_BEGIN_DECLS typedef int hb_bool_t

hb_bool_t:

Data type for booleans.

Definition at line 94 of file hb-common.h.