Top Description Interfaces Classes
module lwjgl.harfbuzz

Package org.lwjgl.util.harfbuzz

Annotations
@NonnullDefault

Contains bindings to the HarfBuzz, a text shaping library.

Using the HarfBuzz library allows programs to convert a sequence of Unicode input into properly formatted and positioned glyph output — for any writing system and language.

Interface Summary

Modifier and TypeInterface and Description
public interface
hb_buffer_message_func_tI

Type


hb_bool_t (*invoke) (
    hb_buffer_t *buffer,
    hb_font_t *font,
    char const *message,
    void *user_data
)
public interface
hb_color_line_get_color_stops_func_tI

Type


unsigned int (*invoke) (
    hb_color_line_t *color_line,
    void *color_line_data,
    unsigned int start,
    unsigned int *count,
    hb_color_stop_t *color_stops,
    void *user_data
)
public interface
hb_color_line_get_extend_func_tI

Type


hb_paint_extend_t (*invoke) (
    hb_color_line_t *color_line,
    void *color_line_data,
    void *user_data
)
public interface
hb_destroy_func_tI

Type


void (*invoke) (
    void *user_data
)
public interface
hb_draw_close_path_func_tI

Type


void (*invoke) (
    hb_draw_funcs_t *dfuncs,
    void *draw_data,
    hb_draw_state_t *st,
    void *user_data
)
public interface
hb_draw_cubic_to_func_tI

Type


void (*invoke) (
    hb_draw_funcs_t *dfuncs,
    void *draw_data,
    hb_draw_state_t *st,
    float control1_x,
    float control1_y,
    float control2_x,
    float control2_y,
    float to_x,
    float to_y,
    void *user_data
)
public interface
hb_draw_line_to_func_tI

Type


void (*invoke) (
    hb_draw_funcs_t *dfuncs,
    void *draw_data,
    hb_draw_state_t *st,
    float to_x,
    float to_y,
    void *user_data
)
public interface
hb_draw_move_to_func_tI

Type


void (*invoke) (
    hb_draw_funcs_t *dfuncs,
    void *draw_data,
    hb_draw_state_t *st,
    float to_x,
    float to_y,
    void *user_data
)
public interface
hb_draw_quadratic_to_func_tI

Type


void (*invoke) (
    hb_draw_funcs_t *dfuncs,
    void *draw_data,
    hb_draw_state_t *st,
    float control_x,
    float control_y,
    float to_x,
    float to_y,
    void *user_data
)
public interface
hb_font_draw_glyph_func_tI

Type


void (*invoke) (
    hb_font_t *font,
    void *font_data,
    hb_codepoint_t glyph,
    hb_draw_funcs_t *draw_funcs,
    void *draw_data,
    void *user_data
)
public interface
hb_font_get_font_extents_func_tI

Type


hb_bool_t (*invoke) (
    hb_font_t *font,
    void *font_data,
    hb_font_extents_t *extents,
    void *user_data
)
public interface
hb_font_get_glyph_advance_func_tI

Type


hb_position_t (*invoke) (
    hb_font_t *font,
    void *font_data,
    hb_codepoint_t glyph,
    void *user_data
)
public interface
hb_font_get_glyph_advances_func_tI

Type


void (*invoke) (
    hb_font_t *font,
    void *font_data,
    unsigned int count,
    hb_codepoint_t const *first_glyph,
    unsigned int glyph_stride,
    hb_position_t *first_advance,
    unsigned int advance_stride,
    void *user_data
)
public interface
hb_font_get_glyph_contour_point_func_tI

Type


hb_bool_t (*invoke) (
    hb_font_t *font,
    void *font_data,
    hb_codepoint_t glyph,
    unsigned int point_index,
    hb_position_t *x,
    hb_position_t *y,
    void *user_data
)
public interface
hb_font_get_glyph_extents_func_tI

Type


hb_bool_t (*invoke) (
    hb_font_t *font,
    void *font_data,
    hb_codepoint_t glyph,
    hb_glyph_extents_t *extents,
    void *user_data
)
public interface
hb_font_get_glyph_from_name_func_tI

Type


hb_bool_t (*invoke) (
    hb_font_t *font,
    void *font_data,
    char const *name,
    int len,
    hb_codepoint_t *glyph,
    void *user_data
)
public interface
hb_font_get_glyph_kerning_func_tI

Type


hb_position_t (*invoke) (
    hb_font_t *font,
    void *font_data,
    hb_codepoint_t first_glyph,
    hb_codepoint_t second_glyph,
    void *user_data
)
public interface
hb_font_get_glyph_name_func_tI

Type


hb_bool_t (*invoke) (
    hb_font_t *font,
    void *font_data,
    hb_codepoint_t glyph,
    char *name,
    unsigned int size,
    void *user_data
)
public interface
hb_font_get_glyph_origin_func_tI

Type


hb_bool_t (*invoke) (
    hb_font_t *font,
    void *font_data,
    hb_codepoint_t glyph,
    hb_position_t *x,
    hb_position_t *y,
    void *user_data
)
public interface
hb_font_get_nominal_glyph_func_tI

Type


hb_bool_t (*invoke) (
    hb_font_t *font,
    void *font_data,
    hb_codepoint_t unicode,
    hb_codepoint_t *glyph,
    void *user_data
)
public interface
hb_font_get_nominal_glyphs_func_tI

Type


unsigned int (*invoke) (
    hb_font_t *font,
    void *font_data,
    unsigned int count,
    hb_codepoint_t const *first_unicode,
    unsigned int unicode_stride,
    hb_codepoint_t *first_glyph,
    unsigned int glyph_stride,
    void *user_data
)
public interface
hb_font_get_variation_glyph_func_tI

Type


hb_bool_t (*invoke) (
    hb_font_t *font,
    void *font_data,
    hb_codepoint_t unicode,
    hb_codepoint_t variation_selector,
    hb_codepoint_t *glyph,
    void *user_data
)
public interface
hb_font_paint_glyph_func_tI

Type


void (*invoke) (
    hb_font_t *font,
    void *font_data,
    hb_codepoint_t glyph,
    hb_paint_funcs_t *paint_funcs,
    void *paint_data,
    unsigned int palette_index,
    hb_color_t foreground,
    void *user_data
)
public interface
hb_paint_color_func_tI

Type


void (*invoke) (
    hb_paint_funcs_t *funcs,
    void *paint_data,
    hb_bool_t is_foreground,
    hb_color_t color,
    void *user_data
)
public interface
hb_paint_color_glyph_func_tI

Type


void (*invoke) (
    hb_paint_funcs_t *funcs,
    void *paint_data,
    hb_codepoint_t glyph,
    hb_font_t *font,
    void *user_data
)
public interface
hb_paint_custom_palette_color_func_tI

Type


void (*invoke) (
    hb_paint_funcs_t *funcs,
    void *paint_data,
    unsigned int color_index,
    hb_color_t *color,
    void *user_data
)
public interface
hb_paint_image_func_tI

Type


hb_bool_t (*invoke) (
    hb_paint_funcs_t *funcs,
    void *paint_data,
    hb_blob_t *image,
    unsigned int width,
    unsigned int height,
    hb_tag_t format,
    float slant,
    hb_glyph_extents_t *extents,
    void *user_data
)
public interface
hb_paint_linear_gradient_func_tI

Type


void (*invoke) (
    hb_paint_funcs_t *funcs,
    void *paint_data,
    hb_color_line_t *color_line,
    float x0,
    float y0,
    float x1,
    float y1,
    float x2,
    float y2,
    void *user_data
)
public interface
hb_paint_pop_clip_func_tI

Type


void (*invoke) (
    hb_paint_funcs_t *funcs,
    void *paint_data,
    void *user_data
)
public interface
hb_paint_pop_group_func_tI

Type


void (*invoke) (
    hb_paint_funcs_t *funcs,
    void *paint_data,
    hb_paint_composite_mode_t mode,
    void *user_data
)
public interface
hb_paint_pop_transform_func_tI

Type


void (*invoke) (
    hb_paint_funcs_t *funcs,
    void *paint_data,
    void *user_data
)
public interface
hb_paint_push_clip_glyph_func_tI

Type


void (*invoke) (
    hb_paint_funcs_t *funcs,
    void *paint_data,
    hb_codepoint_t glyph,
    hb_font_t *font,
    void *user_data
)
public interface
hb_paint_push_clip_rectangle_func_tI

Type


void (*invoke) (
    hb_paint_funcs_t *funcs,
    void *paint_data,
    float xmin,
    float ymin,
    float xmax,
    float ymax,
    void *user_data
)
public interface
hb_paint_push_group_func_tI

Type


void (*invoke) (
    hb_paint_funcs_t *funcs,
    void *paint_data,
    void *user_data
)
public interface
hb_paint_push_transform_func_tI

Type


void (*invoke) (
    hb_paint_funcs_t *funcs,
    void *paint_data,
    float xx,
    float yx,
    float xy,
    float yy,
    float dx,
    float dy,
    void *user_data
)
public interface
hb_paint_radial_gradient_func_tI

Type


void (*invoke) (
    hb_paint_funcs_t *funcs,
    void *paint_data,
    hb_color_line_t *color_line,
    float x0,
    float y0,
    float r0,
    float x1,
    float y1,
    float r1,
    void *user_data
)
public interface
hb_paint_sweep_gradient_func_tI

Type


void (*invoke) (
    hb_paint_funcs_t *funcs,
    void *paint_data,
    hb_color_line_t *color_line,
    float x0,
    float y0,
    float start_angle,
    float end_angle,
    void *user_data
)
public interface
hb_reference_table_func_tI

Type


hb_blob_t * (*invoke) (
    hb_face_t *face,
    hb_tag_t tag,
    void *user_data
)
public interface
hb_unicode_combining_class_func_tI

Type


hb_unicode_combining_class_t (*invoke) (
    hb_unicode_funcs_t *ufuncs,
    hb_codepoint_t unicode,
    void *user_data
)
public interface
hb_unicode_compose_func_tI

Type


hb_bool_t (*invoke) (
    hb_unicode_funcs_t *ufuncs,
    hb_codepoint_t a,
    hb_codepoint_t b,
    hb_codepoint_t *ab,
    void *user_data
)
public interface
hb_unicode_decompose_func_tI

Type


hb_bool_t (*invoke) (
    hb_unicode_funcs_t *ufuncs,
    hb_codepoint_t ab,
    hb_codepoint_t *a,
    hb_codepoint_t *b,
    void *user_data
)
public interface
hb_unicode_general_category_func_tI

Type


hb_unicode_general_category_t (*invoke) (
    hb_unicode_funcs_t *ufuncs,
    hb_codepoint_t unicode,
    void *user_data
)
public interface
hb_unicode_mirroring_func_tI

Type


hb_codepoint_t (*invoke) (
    hb_unicode_funcs_t *ufuncs,
    hb_codepoint_t unicode,
    void *user_data
)
public interface
hb_unicode_script_func_tI

Type


hb_script_t (*invoke) (
    hb_unicode_funcs_t *ufuncs,
    hb_codepoint_t unicode,
    void *user_data
)

Class Summary

Modifier and TypeClass and Description
public class
AAT

Native bindings to the Apple Advanced Typography Layout API of the HarfBuzz library.

public class
HarfBuzz

Native bindings to HarfBuzz, a text shaping library.

public class
hb_aat_layout_feature_selector_info_t

Structure representing a setting for an hb_aat_layout_feature_type_t.

public abstract class
hb_buffer_message_func_t

Type


hb_bool_t (*invoke) (
    hb_buffer_t *buffer,
    hb_font_t *font,
    char const *message,
    void *user_data
)
public abstract class
hb_color_line_get_color_stops_func_t

Type


unsigned int (*invoke) (
    hb_color_line_t *color_line,
    void *color_line_data,
    unsigned int start,
    unsigned int *count,
    hb_color_stop_t *color_stops,
    void *user_data
)
public abstract class
hb_color_line_get_extend_func_t

Type


hb_paint_extend_t (*invoke) (
    hb_color_line_t *color_line,
    void *color_line_data,
    void *user_data
)
public class
hb_color_line_t

Layout


struct hb_color_line_t {
    void * data;
    hb_color_line_get_color_stops_func_t get_color_stops;
    void * get_color_stops_user_data;
    hb_color_line_get_extend_func_t get_extend;
    void * get_extend_user_data;
    void * reserved0;
    void * reserved1;
    void * reserved2;
    void * reserved3;
    void * reserved4;
    void * reserved5;
    void * reserved6;
    void * reserved7;
    void * reserved8;
}
public class
hb_color_stop_t

Layout


struct hb_color_stop_t {
    float offset;
    hb_bool_t is_foreground;
    hb_color_t color;
}
public abstract class
hb_destroy_func_t

Type


void (*invoke) (
    void *user_data
)
public abstract class
hb_draw_close_path_func_t

Type


void (*invoke) (
    hb_draw_funcs_t *dfuncs,
    void *draw_data,
    hb_draw_state_t *st,
    void *user_data
)
public abstract class
hb_draw_cubic_to_func_t

Type


void (*invoke) (
    hb_draw_funcs_t *dfuncs,
    void *draw_data,
    hb_draw_state_t *st,
    float control1_x,
    float control1_y,
    float control2_x,
    float control2_y,
    float to_x,
    float to_y,
    void *user_data
)
public abstract class
hb_draw_line_to_func_t

Type


void (*invoke) (
    hb_draw_funcs_t *dfuncs,
    void *draw_data,
    hb_draw_state_t *st,
    float to_x,
    float to_y,
    void *user_data
)
public abstract class
hb_draw_move_to_func_t

Type


void (*invoke) (
    hb_draw_funcs_t *dfuncs,
    void *draw_data,
    hb_draw_state_t *st,
    float to_x,
    float to_y,
    void *user_data
)
public abstract class
hb_draw_quadratic_to_func_t

Type


void (*invoke) (
    hb_draw_funcs_t *dfuncs,
    void *draw_data,
    hb_draw_state_t *st,
    float control_x,
    float control_y,
    float to_x,
    float to_y,
    void *user_data
)
public class
hb_draw_state_t

Current drawing state.

public class
hb_feature_t

The structure that holds information about requested feature application.

public abstract class
hb_font_draw_glyph_func_t

Type


void (*invoke) (
    hb_font_t *font,
    void *font_data,
    hb_codepoint_t glyph,
    hb_draw_funcs_t *draw_funcs,
    void *draw_data,
    void *user_data
)
public class
hb_font_extents_t

Font-wide extent values, measured in font units.

public abstract class
hb_font_get_font_extents_func_t

Type


hb_bool_t (*invoke) (
    hb_font_t *font,
    void *font_data,
    hb_font_extents_t *extents,
    void *user_data
)
public abstract class
hb_font_get_glyph_advance_func_t

Type


hb_position_t (*invoke) (
    hb_font_t *font,
    void *font_data,
    hb_codepoint_t glyph,
    void *user_data
)
public abstract class
hb_font_get_glyph_advances_func_t

Type


void (*invoke) (
    hb_font_t *font,
    void *font_data,
    unsigned int count,
    hb_codepoint_t const *first_glyph,
    unsigned int glyph_stride,
    hb_position_t *first_advance,
    unsigned int advance_stride,
    void *user_data
)
public abstract class
hb_font_get_glyph_contour_point_func_t

Type


hb_bool_t (*invoke) (
    hb_font_t *font,
    void *font_data,
    hb_codepoint_t glyph,
    unsigned int point_index,
    hb_position_t *x,
    hb_position_t *y,
    void *user_data
)
public abstract class
hb_font_get_glyph_extents_func_t

Type


hb_bool_t (*invoke) (
    hb_font_t *font,
    void *font_data,
    hb_codepoint_t glyph,
    hb_glyph_extents_t *extents,
    void *user_data
)
public abstract class
hb_font_get_glyph_from_name_func_t

Type


hb_bool_t (*invoke) (
    hb_font_t *font,
    void *font_data,
    char const *name,
    int len,
    hb_codepoint_t *glyph,
    void *user_data
)
public abstract class
hb_font_get_glyph_kerning_func_t

Type


hb_position_t (*invoke) (
    hb_font_t *font,
    void *font_data,
    hb_codepoint_t first_glyph,
    hb_codepoint_t second_glyph,
    void *user_data
)
public abstract class
hb_font_get_glyph_name_func_t

Type


hb_bool_t (*invoke) (
    hb_font_t *font,
    void *font_data,
    hb_codepoint_t glyph,
    char *name,
    unsigned int size,
    void *user_data
)
public abstract class
hb_font_get_glyph_origin_func_t

Type


hb_bool_t (*invoke) (
    hb_font_t *font,
    void *font_data,
    hb_codepoint_t glyph,
    hb_position_t *x,
    hb_position_t *y,
    void *user_data
)
public abstract class
hb_font_get_nominal_glyph_func_t

Type


hb_bool_t (*invoke) (
    hb_font_t *font,
    void *font_data,
    hb_codepoint_t unicode,
    hb_codepoint_t *glyph,
    void *user_data
)
public abstract class
hb_font_get_nominal_glyphs_func_t

Type


unsigned int (*invoke) (
    hb_font_t *font,
    void *font_data,
    unsigned int count,
    hb_codepoint_t const *first_unicode,
    unsigned int unicode_stride,
    hb_codepoint_t *first_glyph,
    unsigned int glyph_stride,
    void *user_data
)
public abstract class
hb_font_get_variation_glyph_func_t

Type


hb_bool_t (*invoke) (
    hb_font_t *font,
    void *font_data,
    hb_codepoint_t unicode,
    hb_codepoint_t variation_selector,
    hb_codepoint_t *glyph,
    void *user_data
)
public abstract class
hb_font_paint_glyph_func_t

Type


void (*invoke) (
    hb_font_t *font,
    void *font_data,
    hb_codepoint_t glyph,
    hb_paint_funcs_t *paint_funcs,
    void *paint_data,
    unsigned int palette_index,
    hb_color_t foreground,
    void *user_data
)
public class
hb_glyph_extents_t

Glyph extent values, measured in font units.

public class
hb_glyph_info_t

The structure that holds information about the glyphs and their relation to input text.

public class
hb_glyph_position_t

The structure that holds the positions of the glyph in both horizontal and vertical directions.

public class
hb_ot_color_layer_t

Pairs of glyph and color index.

public class
hb_ot_math_glyph_part_t

Data type to hold information for a "part" component of a math-variant glyph.

public class
hb_ot_math_glyph_variant_t

Data type to hold math-variant information for a glyph.

public class
hb_ot_math_kern_entry_t

Data type to hold math kerning (cut-in) information for a glyph.

public class
hb_ot_name_entry_t

Structure representing a name ID in a particular language.

public class
hb_ot_var_axis_info_t

Data type for holding variation-axis values.

public abstract class
hb_paint_color_func_t

Type


void (*invoke) (
    hb_paint_funcs_t *funcs,
    void *paint_data,
    hb_bool_t is_foreground,
    hb_color_t color,
    void *user_data
)
public abstract class
hb_paint_color_glyph_func_t

Type


void (*invoke) (
    hb_paint_funcs_t *funcs,
    void *paint_data,
    hb_codepoint_t glyph,
    hb_font_t *font,
    void *user_data
)
public abstract class
hb_paint_custom_palette_color_func_t

Type


void (*invoke) (
    hb_paint_funcs_t *funcs,
    void *paint_data,
    unsigned int color_index,
    hb_color_t *color,
    void *user_data
)
public abstract class
hb_paint_image_func_t

Type


hb_bool_t (*invoke) (
    hb_paint_funcs_t *funcs,
    void *paint_data,
    hb_blob_t *image,
    unsigned int width,
    unsigned int height,
    hb_tag_t format,
    float slant,
    hb_glyph_extents_t *extents,
    void *user_data
)
public abstract class
hb_paint_linear_gradient_func_t

Type


void (*invoke) (
    hb_paint_funcs_t *funcs,
    void *paint_data,
    hb_color_line_t *color_line,
    float x0,
    float y0,
    float x1,
    float y1,
    float x2,
    float y2,
    void *user_data
)
public abstract class
hb_paint_pop_clip_func_t

Type


void (*invoke) (
    hb_paint_funcs_t *funcs,
    void *paint_data,
    void *user_data
)
public abstract class
hb_paint_pop_group_func_t

Type


void (*invoke) (
    hb_paint_funcs_t *funcs,
    void *paint_data,
    hb_paint_composite_mode_t mode,
    void *user_data
)
public abstract class
hb_paint_pop_transform_func_t

Type


void (*invoke) (
    hb_paint_funcs_t *funcs,
    void *paint_data,
    void *user_data
)
public abstract class
hb_paint_push_clip_glyph_func_t

Type


void (*invoke) (
    hb_paint_funcs_t *funcs,
    void *paint_data,
    hb_codepoint_t glyph,
    hb_font_t *font,
    void *user_data
)
public abstract class
hb_paint_push_clip_rectangle_func_t

Type


void (*invoke) (
    hb_paint_funcs_t *funcs,
    void *paint_data,
    float xmin,
    float ymin,
    float xmax,
    float ymax,
    void *user_data
)
public abstract class
hb_paint_push_group_func_t

Type


void (*invoke) (
    hb_paint_funcs_t *funcs,
    void *paint_data,
    void *user_data
)
public abstract class
hb_paint_push_transform_func_t

Type


void (*invoke) (
    hb_paint_funcs_t *funcs,
    void *paint_data,
    float xx,
    float yx,
    float xy,
    float yy,
    float dx,
    float dy,
    void *user_data
)
public abstract class
hb_paint_radial_gradient_func_t

Type


void (*invoke) (
    hb_paint_funcs_t *funcs,
    void *paint_data,
    hb_color_line_t *color_line,
    float x0,
    float y0,
    float r0,
    float x1,
    float y1,
    float r1,
    void *user_data
)
public abstract class
hb_paint_sweep_gradient_func_t

Type


void (*invoke) (
    hb_paint_funcs_t *funcs,
    void *paint_data,
    hb_color_line_t *color_line,
    float x0,
    float y0,
    float start_angle,
    float end_angle,
    void *user_data
)
public abstract class
hb_reference_table_func_t

Type


hb_blob_t * (*invoke) (
    hb_face_t *face,
    hb_tag_t tag,
    void *user_data
)
public class
hb_segment_properties_t

The structure that holds various text properties of an hb_buffer_t.

public abstract class
hb_unicode_combining_class_func_t

Type


hb_unicode_combining_class_t (*invoke) (
    hb_unicode_funcs_t *ufuncs,
    hb_codepoint_t unicode,
    void *user_data
)
public abstract class
hb_unicode_compose_func_t

Type


hb_bool_t (*invoke) (
    hb_unicode_funcs_t *ufuncs,
    hb_codepoint_t a,
    hb_codepoint_t b,
    hb_codepoint_t *ab,
    void *user_data
)
public abstract class
hb_unicode_decompose_func_t

Type


hb_bool_t (*invoke) (
    hb_unicode_funcs_t *ufuncs,
    hb_codepoint_t ab,
    hb_codepoint_t *a,
    hb_codepoint_t *b,
    void *user_data
)
public abstract class
hb_unicode_general_category_func_t

Type


hb_unicode_general_category_t (*invoke) (
    hb_unicode_funcs_t *ufuncs,
    hb_codepoint_t unicode,
    void *user_data
)
public abstract class
hb_unicode_mirroring_func_t

Type


hb_codepoint_t (*invoke) (
    hb_unicode_funcs_t *ufuncs,
    hb_codepoint_t unicode,
    void *user_data
)
public abstract class
hb_unicode_script_func_t

Type


hb_script_t (*invoke) (
    hb_unicode_funcs_t *ufuncs,
    hb_codepoint_t unicode,
    void *user_data
)
public class
hb_user_data_key_t

Data structure for holding user-data keys.

public class
hb_var_int_t

Layout


union hb_var_int_t {
    uint32_t u32;
    int32_t i32;
    uint16_t u16[2];
    int16_t i16[2];
    uint8_t u8[4];
    int8_t i8[4];
}
public class
hb_var_num_t

Layout


union hb_var_num_t {
    float f;
    uint32_t u32;
    int32_t i32;
    uint16_t u16[2];
    int16_t i16[2];
    uint8_t u8[4];
    int8_t i8[4];
}
public class
hb_variation_t

Data type for holding variation data.

public class
OpenType

Native bindings to the OpenType API of the HarfBuzz library.