--- old/src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-var.h 2019-02-28 12:04:10.450502771 -0800 +++ new/src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ot-var.h 2019-02-28 12:04:10.350502773 -0800 @@ -47,45 +47,86 @@ * fvar / avar */ +HB_EXTERN hb_bool_t +hb_ot_var_has_data (hb_face_t *face); + + +/* + * Variation axes. + */ + + +HB_EXTERN unsigned int +hb_ot_var_get_axis_count (hb_face_t *face); + /** - * hb_ot_var_axis_t: + * hb_ot_var_axis_flags_t: + * @HB_OT_VAR_AXIS_FLAG_HIDDEN: The axis should not be exposed directly in user interfaces. * - * Since: 1.4.2 + * Since: 2.2.0 */ -typedef struct hb_ot_var_axis_t { - hb_tag_t tag; - unsigned int name_id; - float min_value; - float default_value; - float max_value; -} hb_ot_var_axis_t; +typedef enum { /*< flags >*/ + HB_OT_VAR_AXIS_FLAG_HIDDEN = 0x00000001u, -HB_EXTERN hb_bool_t -hb_ot_var_has_data (hb_face_t *face); + _HB_OT_VAR_AXIS_FLAG_MAX_VALUE= 0x7FFFFFFFu /*< skip >*/ +} hb_ot_var_axis_flags_t; /** - * HB_OT_VAR_NO_AXIS_INDEX: + * hb_ot_var_axis_info_t: * - * Since: 1.4.2 + * Since: 2.2.0 */ -#define HB_OT_VAR_NO_AXIS_INDEX 0xFFFFFFFFu +typedef struct hb_ot_var_axis_info_t +{ + unsigned int axis_index; + hb_tag_t tag; + hb_ot_name_id_t name_id; + hb_ot_var_axis_flags_t flags; + float min_value; + float default_value; + float max_value; + /*< private >*/ + unsigned int reserved; +} hb_ot_var_axis_info_t; HB_EXTERN unsigned int -hb_ot_var_get_axis_count (hb_face_t *face); +hb_ot_var_get_axis_infos (hb_face_t *face, + unsigned int start_offset, + unsigned int *axes_count /* IN/OUT */, + hb_ot_var_axis_info_t *axes_array /* OUT */); + +HB_EXTERN hb_bool_t +hb_ot_var_find_axis_info (hb_face_t *face, + hb_tag_t axis_tag, + hb_ot_var_axis_info_t *axis_info); + + +/* + * Named instances. + */ HB_EXTERN unsigned int -hb_ot_var_get_axes (hb_face_t *face, - unsigned int start_offset, - unsigned int *axes_count /* IN/OUT */, - hb_ot_var_axis_t *axes_array /* OUT */); +hb_ot_var_get_named_instance_count (hb_face_t *face); -HB_EXTERN hb_bool_t -hb_ot_var_find_axis (hb_face_t *face, - hb_tag_t axis_tag, - unsigned int *axis_index, - hb_ot_var_axis_t *axis_info); +HB_EXTERN hb_ot_name_id_t +hb_ot_var_named_instance_get_subfamily_name_id (hb_face_t *face, + unsigned int instance_index); + +HB_EXTERN hb_ot_name_id_t +hb_ot_var_named_instance_get_postscript_name_id (hb_face_t *face, + unsigned int instance_index); + +HB_EXTERN unsigned int +hb_ot_var_named_instance_get_design_coords (hb_face_t *face, + unsigned int instance_index, + unsigned int *coords_length, /* IN/OUT */ + float *coords /* OUT */); +/* + * Conversions. + */ + HB_EXTERN void hb_ot_var_normalize_variations (hb_face_t *face, const hb_variation_t *variations, /* IN */