QtBase  v6.3.1
Classes | Typedefs | Functions
hb-font.h File Reference
#include "hb-common.h"
#include "hb-face.h"
#include "hb-draw.h"
Include dependency graph for hb-font.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  hb_font_extents_t
 
struct  hb_glyph_extents_t
 

Typedefs

typedef typedefHB_BEGIN_DECLS struct hb_font_t hb_font_t
 
typedef struct hb_font_funcs_t hb_font_funcs_t
 
typedef struct hb_font_extents_t hb_font_extents_t
 
typedef struct hb_glyph_extents_t hb_glyph_extents_t
 
typedef hb_bool_t(* hb_font_get_font_extents_func_t) (hb_font_t *font, void *font_data, hb_font_extents_t *extents, void *user_data)
 
typedef hb_font_get_font_extents_func_t hb_font_get_font_h_extents_func_t
 
typedef hb_font_get_font_extents_func_t hb_font_get_font_v_extents_func_t
 
typedef hb_bool_t(* hb_font_get_nominal_glyph_func_t) (hb_font_t *font, void *font_data, hb_codepoint_t unicode, hb_codepoint_t *glyph, void *user_data)
 
typedef hb_bool_t(* hb_font_get_variation_glyph_func_t) (hb_font_t *font, void *font_data, hb_codepoint_t unicode, hb_codepoint_t variation_selector, hb_codepoint_t *glyph, void *user_data)
 
typedef unsigned int(* hb_font_get_nominal_glyphs_func_t) (hb_font_t *font, void *font_data, unsigned int count, const hb_codepoint_t *first_unicode, unsigned int unicode_stride, hb_codepoint_t *first_glyph, unsigned int glyph_stride, void *user_data)
 
typedef hb_position_t(* hb_font_get_glyph_advance_func_t) (hb_font_t *font, void *font_data, hb_codepoint_t glyph, void *user_data)
 
typedef hb_font_get_glyph_advance_func_t hb_font_get_glyph_h_advance_func_t
 
typedef hb_font_get_glyph_advance_func_t hb_font_get_glyph_v_advance_func_t
 
typedef void(* hb_font_get_glyph_advances_func_t) (hb_font_t *font, void *font_data, unsigned int count, const hb_codepoint_t *first_glyph, unsigned glyph_stride, hb_position_t *first_advance, unsigned advance_stride, void *user_data)
 
typedef hb_font_get_glyph_advances_func_t hb_font_get_glyph_h_advances_func_t
 
typedef hb_font_get_glyph_advances_func_t hb_font_get_glyph_v_advances_func_t
 
typedef hb_bool_t(* hb_font_get_glyph_origin_func_t) (hb_font_t *font, void *font_data, hb_codepoint_t glyph, hb_position_t *x, hb_position_t *y, void *user_data)
 
typedef hb_font_get_glyph_origin_func_t hb_font_get_glyph_h_origin_func_t
 
typedef hb_font_get_glyph_origin_func_t hb_font_get_glyph_v_origin_func_t
 
typedef hb_position_t(* hb_font_get_glyph_kerning_func_t) (hb_font_t *font, void *font_data, hb_codepoint_t first_glyph, hb_codepoint_t second_glyph, void *user_data)
 
typedef hb_font_get_glyph_kerning_func_t hb_font_get_glyph_h_kerning_func_t
 
typedef hb_bool_t(* hb_font_get_glyph_extents_func_t) (hb_font_t *font, void *font_data, hb_codepoint_t glyph, hb_glyph_extents_t *extents, void *user_data)
 
typedef hb_bool_t(* hb_font_get_glyph_contour_point_func_t) (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)
 
: (out) (array length=size): Name string retrieved for the glyph ID

hb_font_get_glyph_name_func_t: @font: hb_font_t to work upon @font_data: @font user data pointer @glyph: The glyph ID to query

@size: Length of the glyph-name string retrieved @user_data: User data pointer passed by the caller

A virtual method for the hb_font_funcs_t of an hb_font_t object.

This method should retrieve the glyph name that corresponds to a glyph ID. The name should be returned in a string output parameter.

Return value: true if data found, false otherwise

typedef hb_bool_t(* hb_font_get_glyph_name_func_t) (hb_font_t *font, void *font_data, hb_codepoint_t glyph, char *name, unsigned int size, void *user_data)
 

Functions

HB_EXTERN hb_font_funcs_thb_font_funcs_create (void)
 
HB_EXTERN hb_font_funcs_thb_font_funcs_get_empty (void)
 
HB_EXTERN hb_font_funcs_thb_font_funcs_reference (hb_font_funcs_t *ffuncs)
 
HB_EXTERN void hb_font_funcs_destroy (hb_font_funcs_t *ffuncs)
 
HB_EXTERN hb_bool_t hb_font_funcs_set_user_data (hb_font_funcs_t *ffuncs, hb_user_data_key_t *key, void *data, hb_destroy_func_t destroy, hb_bool_t replace)
 
HB_EXTERN voidhb_font_funcs_get_user_data (hb_font_funcs_t *ffuncs, hb_user_data_key_t *key)
 
HB_EXTERN void hb_font_funcs_make_immutable (hb_font_funcs_t *ffuncs)
 
HB_EXTERN hb_bool_t hb_font_funcs_is_immutable (hb_font_funcs_t *ffuncs)
 

: (array length=len): The name string to query

hb_font_get_glyph_from_name_func_t: @font: hb_font_t to work upon @font_data: @font user data pointer

@len: The length of the name queried @glyph: (out): The glyph ID retrieved @user_data: User data pointer passed by the caller

A virtual method for the hb_font_funcs_t of an hb_font_t object.

This method should retrieve the glyph ID that corresponds to a glyph-name string.

Return value: true if data found, false otherwise

typedef hb_bool_t(* hb_font_get_glyph_from_name_func_t) (hb_font_t *font, void *font_data, const char *name, int len, hb_codepoint_t *glyph, void *user_data)
 
typedef void(* hb_font_get_glyph_shape_func_t) (hb_font_t *font, void *font_data, hb_codepoint_t glyph, hb_draw_funcs_t *draw_funcs, void *draw_data, void *user_data)
 
HB_EXTERN void hb_font_funcs_set_font_h_extents_func (hb_font_funcs_t *ffuncs, hb_font_get_font_h_extents_func_t func, void *user_data, hb_destroy_func_t destroy)
 
HB_EXTERN void hb_font_funcs_set_font_v_extents_func (hb_font_funcs_t *ffuncs, hb_font_get_font_v_extents_func_t func, void *user_data, hb_destroy_func_t destroy)
 
HB_EXTERN void hb_font_funcs_set_nominal_glyph_func (hb_font_funcs_t *ffuncs, hb_font_get_nominal_glyph_func_t func, void *user_data, hb_destroy_func_t destroy)
 
HB_EXTERN void hb_font_funcs_set_nominal_glyphs_func (hb_font_funcs_t *ffuncs, hb_font_get_nominal_glyphs_func_t func, void *user_data, hb_destroy_func_t destroy)
 
HB_EXTERN void hb_font_funcs_set_variation_glyph_func (hb_font_funcs_t *ffuncs, hb_font_get_variation_glyph_func_t func, void *user_data, hb_destroy_func_t destroy)
 
HB_EXTERN void hb_font_funcs_set_glyph_h_advance_func (hb_font_funcs_t *ffuncs, hb_font_get_glyph_h_advance_func_t func, void *user_data, hb_destroy_func_t destroy)
 
HB_EXTERN void hb_font_funcs_set_glyph_v_advance_func (hb_font_funcs_t *ffuncs, hb_font_get_glyph_v_advance_func_t func, void *user_data, hb_destroy_func_t destroy)
 
HB_EXTERN void hb_font_funcs_set_glyph_h_advances_func (hb_font_funcs_t *ffuncs, hb_font_get_glyph_h_advances_func_t func, void *user_data, hb_destroy_func_t destroy)
 
HB_EXTERN void hb_font_funcs_set_glyph_v_advances_func (hb_font_funcs_t *ffuncs, hb_font_get_glyph_v_advances_func_t func, void *user_data, hb_destroy_func_t destroy)
 
HB_EXTERN void hb_font_funcs_set_glyph_h_origin_func (hb_font_funcs_t *ffuncs, hb_font_get_glyph_h_origin_func_t func, void *user_data, hb_destroy_func_t destroy)
 
HB_EXTERN void hb_font_funcs_set_glyph_v_origin_func (hb_font_funcs_t *ffuncs, hb_font_get_glyph_v_origin_func_t func, void *user_data, hb_destroy_func_t destroy)
 
HB_EXTERN void hb_font_funcs_set_glyph_h_kerning_func (hb_font_funcs_t *ffuncs, hb_font_get_glyph_h_kerning_func_t func, void *user_data, hb_destroy_func_t destroy)
 
HB_EXTERN void hb_font_funcs_set_glyph_extents_func (hb_font_funcs_t *ffuncs, hb_font_get_glyph_extents_func_t func, void *user_data, hb_destroy_func_t destroy)
 
HB_EXTERN void hb_font_funcs_set_glyph_contour_point_func (hb_font_funcs_t *ffuncs, hb_font_get_glyph_contour_point_func_t func, void *user_data, hb_destroy_func_t destroy)
 
HB_EXTERN void hb_font_funcs_set_glyph_name_func (hb_font_funcs_t *ffuncs, hb_font_get_glyph_name_func_t func, void *user_data, hb_destroy_func_t destroy)
 
HB_EXTERN void hb_font_funcs_set_glyph_from_name_func (hb_font_funcs_t *ffuncs, hb_font_get_glyph_from_name_func_t func, void *user_data, hb_destroy_func_t destroy)
 
HB_EXTERN void hb_font_funcs_set_glyph_shape_func (hb_font_funcs_t *ffuncs, hb_font_get_glyph_shape_func_t func, void *user_data, hb_destroy_func_t destroy)
 
HB_EXTERN hb_bool_t hb_font_get_h_extents (hb_font_t *font, hb_font_extents_t *extents)
 
HB_EXTERN hb_bool_t hb_font_get_v_extents (hb_font_t *font, hb_font_extents_t *extents)
 
HB_EXTERN hb_bool_t hb_font_get_nominal_glyph (hb_font_t *font, hb_codepoint_t unicode, hb_codepoint_t *glyph)
 
HB_EXTERN hb_bool_t hb_font_get_variation_glyph (hb_font_t *font, hb_codepoint_t unicode, hb_codepoint_t variation_selector, hb_codepoint_t *glyph)
 
HB_EXTERN unsigned int hb_font_get_nominal_glyphs (hb_font_t *font, unsigned int count, const hb_codepoint_t *first_unicode, unsigned int unicode_stride, hb_codepoint_t *first_glyph, unsigned int glyph_stride)
 
HB_EXTERN hb_position_t hb_font_get_glyph_h_advance (hb_font_t *font, hb_codepoint_t glyph)
 
HB_EXTERN hb_position_t hb_font_get_glyph_v_advance (hb_font_t *font, hb_codepoint_t glyph)
 
HB_EXTERN void hb_font_get_glyph_h_advances (hb_font_t *font, unsigned int count, const hb_codepoint_t *first_glyph, unsigned glyph_stride, hb_position_t *first_advance, unsigned advance_stride)
 
HB_EXTERN void hb_font_get_glyph_v_advances (hb_font_t *font, unsigned int count, const hb_codepoint_t *first_glyph, unsigned glyph_stride, hb_position_t *first_advance, unsigned advance_stride)
 
HB_EXTERN hb_bool_t hb_font_get_glyph_h_origin (hb_font_t *font, hb_codepoint_t glyph, hb_position_t *x, hb_position_t *y)
 
HB_EXTERN hb_bool_t hb_font_get_glyph_v_origin (hb_font_t *font, hb_codepoint_t glyph, hb_position_t *x, hb_position_t *y)
 
HB_EXTERN hb_position_t hb_font_get_glyph_h_kerning (hb_font_t *font, hb_codepoint_t left_glyph, hb_codepoint_t right_glyph)
 
HB_EXTERN hb_bool_t hb_font_get_glyph_extents (hb_font_t *font, hb_codepoint_t glyph, hb_glyph_extents_t *extents)
 
HB_EXTERN hb_bool_t hb_font_get_glyph_contour_point (hb_font_t *font, hb_codepoint_t glyph, unsigned int point_index, hb_position_t *x, hb_position_t *y)
 
HB_EXTERN hb_bool_t hb_font_get_glyph_name (hb_font_t *font, hb_codepoint_t glyph, char *name, unsigned int size)
 
HB_EXTERN hb_bool_t hb_font_get_glyph_from_name (hb_font_t *font, const char *name, int len, hb_codepoint_t *glyph)
 
HB_EXTERN void hb_font_get_glyph_shape (hb_font_t *font, hb_codepoint_t glyph, hb_draw_funcs_t *dfuncs, void *draw_data)
 
HB_EXTERN hb_bool_t hb_font_get_glyph (hb_font_t *font, hb_codepoint_t unicode, hb_codepoint_t variation_selector, hb_codepoint_t *glyph)
 
HB_EXTERN void hb_font_get_extents_for_direction (hb_font_t *font, hb_direction_t direction, hb_font_extents_t *extents)
 
HB_EXTERN void hb_font_get_glyph_advance_for_direction (hb_font_t *font, hb_codepoint_t glyph, hb_direction_t direction, hb_position_t *x, hb_position_t *y)
 
HB_EXTERN void hb_font_get_glyph_advances_for_direction (hb_font_t *font, hb_direction_t direction, unsigned int count, const hb_codepoint_t *first_glyph, unsigned glyph_stride, hb_position_t *first_advance, unsigned advance_stride)
 
HB_EXTERN void hb_font_get_glyph_origin_for_direction (hb_font_t *font, hb_codepoint_t glyph, hb_direction_t direction, hb_position_t *x, hb_position_t *y)
 
HB_EXTERN void hb_font_add_glyph_origin_for_direction (hb_font_t *font, hb_codepoint_t glyph, hb_direction_t direction, hb_position_t *x, hb_position_t *y)
 
HB_EXTERN void hb_font_subtract_glyph_origin_for_direction (hb_font_t *font, hb_codepoint_t glyph, hb_direction_t direction, hb_position_t *x, hb_position_t *y)
 
HB_EXTERN void hb_font_get_glyph_kerning_for_direction (hb_font_t *font, hb_codepoint_t first_glyph, hb_codepoint_t second_glyph, hb_direction_t direction, hb_position_t *x, hb_position_t *y)
 
HB_EXTERN hb_bool_t hb_font_get_glyph_extents_for_origin (hb_font_t *font, hb_codepoint_t glyph, hb_direction_t direction, hb_glyph_extents_t *extents)
 
HB_EXTERN hb_bool_t hb_font_get_glyph_contour_point_for_origin (hb_font_t *font, hb_codepoint_t glyph, unsigned int point_index, hb_direction_t direction, hb_position_t *x, hb_position_t *y)
 
HB_EXTERN void hb_font_glyph_to_string (hb_font_t *font, hb_codepoint_t glyph, char *s, unsigned int size)
 
HB_EXTERN hb_bool_t hb_font_glyph_from_string (hb_font_t *font, const char *s, int len, hb_codepoint_t *glyph)
 
HB_EXTERN hb_font_thb_font_create (hb_face_t *face)
 
HB_EXTERN hb_font_thb_font_create_sub_font (hb_font_t *parent)
 
HB_EXTERN hb_font_thb_font_get_empty (void)
 
HB_EXTERN hb_font_thb_font_reference (hb_font_t *font)
 
HB_EXTERN void hb_font_destroy (hb_font_t *font)
 
HB_EXTERN hb_bool_t hb_font_set_user_data (hb_font_t *font, hb_user_data_key_t *key, void *data, hb_destroy_func_t destroy, hb_bool_t replace)
 
HB_EXTERN voidhb_font_get_user_data (hb_font_t *font, hb_user_data_key_t *key)
 
HB_EXTERN void hb_font_make_immutable (hb_font_t *font)
 
HB_EXTERN hb_bool_t hb_font_is_immutable (hb_font_t *font)
 
HB_EXTERN void hb_font_set_parent (hb_font_t *font, hb_font_t *parent)
 
HB_EXTERN hb_font_thb_font_get_parent (hb_font_t *font)
 
HB_EXTERN void hb_font_set_face (hb_font_t *font, hb_face_t *face)
 
HB_EXTERN hb_face_thb_font_get_face (hb_font_t *font)
 
HB_EXTERN void hb_font_set_funcs (hb_font_t *font, hb_font_funcs_t *klass, void *font_data, hb_destroy_func_t destroy)
 
HB_EXTERN void hb_font_set_funcs_data (hb_font_t *font, void *font_data, hb_destroy_func_t destroy)
 
HB_EXTERN void hb_font_set_scale (hb_font_t *font, int x_scale, int y_scale)
 
HB_EXTERN void hb_font_get_scale (hb_font_t *font, int *x_scale, int *y_scale)
 
HB_EXTERN void hb_font_set_ppem (hb_font_t *font, unsigned int x_ppem, unsigned int y_ppem)
 
HB_EXTERN void hb_font_get_ppem (hb_font_t *font, unsigned int *x_ppem, unsigned int *y_ppem)
 
HB_EXTERN void hb_font_set_ptem (hb_font_t *font, float ptem)
 
HB_EXTERN float hb_font_get_ptem (hb_font_t *font)
 
HB_EXTERN void hb_font_set_synthetic_slant (hb_font_t *font, float slant)
 
HB_EXTERN float hb_font_get_synthetic_slant (hb_font_t *font)
 
HB_EXTERN void hb_font_set_variations (hb_font_t *font, const hb_variation_t *variations, unsigned int variations_length)
 
HB_EXTERN void hb_font_set_var_coords_design (hb_font_t *font, const float *coords, unsigned int coords_length)
 
HB_EXTERN const float * hb_font_get_var_coords_design (hb_font_t *font, unsigned int *length)
 
HB_EXTERN void hb_font_set_var_coords_normalized (hb_font_t *font, const int *coords, unsigned int coords_length)
 
HB_EXTERN const int * hb_font_get_var_coords_normalized (hb_font_t *font, unsigned int *length)
 
HB_EXTERN void hb_font_set_var_named_instance (hb_font_t *font, unsigned instance_index)
 

Typedef Documentation

◆ hb_font_extents_t

hb_font_extents_t: @ascender: The height of typographic ascenders. @descender: The depth of typographic descenders. @line_gap: The suggested line-spacing gap.

Font-wide extent values, measured in font units.

Note that typically @ascender is positive and @descender negative, in coordinate systems that grow up.

◆ hb_font_funcs_t

hb_font_funcs_t:

Data type containing a set of virtual methods used for working on hb_font_t font objects.

HarfBuzz provides a lightweight default function for each of the methods in hb_font_funcs_t. Client programs can implement their own replacements for the individual font functions, as needed, and replace the default by calling the setter for a method.

Definition at line 38 of file hb-font.h.

◆ hb_font_get_font_extents_func_t

typedef hb_bool_t(* hb_font_get_font_extents_func_t) (hb_font_t *font, void *font_data, hb_font_extents_t *extents, void *user_data)

hb_font_get_font_extents_func_t: @font: hb_font_t to work upon @font_data: @font user data pointer @extents: (out): The font extents retrieved @user_data: User data pointer passed by the caller

This method should retrieve the extents for a font.

Definition at line 159 of file hb-font.h.

◆ hb_font_get_font_h_extents_func_t

hb_font_get_font_h_extents_func_t:

A virtual method for the hb_font_funcs_t of an hb_font_t object.

This method should retrieve the extents for a font, for horizontal-direction text segments. Extents must be returned in an #hb_glyph_extents output parameter.

Definition at line 173 of file hb-font.h.

◆ hb_font_get_font_v_extents_func_t

hb_font_get_font_v_extents_func_t:

A virtual method for the hb_font_funcs_t of an hb_font_t object.

This method should retrieve the extents for a font, for vertical-direction text segments. Extents must be returned in an #hb_glyph_extents output parameter.

Definition at line 185 of file hb-font.h.

◆ hb_font_get_glyph_advance_func_t

typedef hb_position_t(* hb_font_get_glyph_advance_func_t) (hb_font_t *font, void *font_data, hb_codepoint_t glyph, void *user_data)

hb_font_get_glyph_advance_func_t: @font: hb_font_t to work upon @font_data: @font user data pointer @glyph: The glyph ID to query @user_data: User data pointer passed by the caller

A virtual method for the hb_font_funcs_t of an hb_font_t object.

This method should retrieve the advance for a specified glyph. The method must return an hb_position_t.

Return value: The advance of @glyph within @font

Definition at line 276 of file hb-font.h.

◆ hb_font_get_glyph_advances_func_t

typedef void(* hb_font_get_glyph_advances_func_t) (hb_font_t *font, void *font_data, unsigned int count, const hb_codepoint_t *first_glyph, unsigned glyph_stride, hb_position_t *first_advance, unsigned advance_stride, void *user_data)

hb_font_get_glyph_advances_func_t: @font: hb_font_t to work upon @font_data: @font user data pointer @count: The number of glyph IDs in the sequence queried @first_glyph: The first glyph ID to query @glyph_stride: The stride between successive glyph IDs @first_advance: (out): The first advance retrieved @advance_stride: The stride between successive advances @user_data: User data pointer passed by the caller

A virtual method for the hb_font_funcs_t of an hb_font_t object.

This method should retrieve the advances for a sequence of glyphs.

Definition at line 320 of file hb-font.h.

◆ hb_font_get_glyph_contour_point_func_t

typedef hb_bool_t(* hb_font_get_glyph_contour_point_func_t) (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)

hb_font_get_glyph_contour_point_func_t: @font: hb_font_t to work upon @font_data: @font user data pointer @glyph: The glyph ID to query @point_index: The contour-point index to query @x: (out): The X value retrieved for the contour point @y: (out): The Y value retrieved for the contour point @user_data: User data pointer passed by the caller

A virtual method for the hb_font_funcs_t of an hb_font_t object.

This method should retrieve the (X,Y) coordinates (in font units) for a specified contour point in a glyph. Each coordinate must be returned as an hb_position_t output parameter.

Return value: true if data found, false otherwise

Definition at line 464 of file hb-font.h.

◆ hb_font_get_glyph_extents_func_t

typedef hb_bool_t(* hb_font_get_glyph_extents_func_t) (hb_font_t *font, void *font_data, hb_codepoint_t glyph, hb_glyph_extents_t *extents, void *user_data)

hb_font_get_glyph_extents_func_t: @font: hb_font_t to work upon @font_data: @font user data pointer @glyph: The glyph ID to query @extents: (out): The hb_glyph_extents_t retrieved @user_data: User data pointer passed by the caller

A virtual method for the hb_font_funcs_t of an hb_font_t object.

This method should retrieve the extents for a specified glyph. Extents must be returned in an #hb_glyph_extents output parameter.

Return value: true if data found, false otherwise

Definition at line 440 of file hb-font.h.

◆ hb_font_get_glyph_from_name_func_t

typedef hb_bool_t(* hb_font_get_glyph_from_name_func_t) (hb_font_t *font, void *font_data, const char *name, int len, hb_codepoint_t *glyph, void *user_data)

Definition at line 509 of file hb-font.h.

◆ hb_font_get_glyph_h_advance_func_t

hb_font_get_glyph_h_advance_func_t:

A virtual method for the hb_font_funcs_t of an hb_font_t object.

This method should retrieve the advance for a specified glyph, in horizontal-direction text segments. Advances must be returned in an hb_position_t output parameter.

Definition at line 290 of file hb-font.h.

◆ hb_font_get_glyph_h_advances_func_t

hb_font_get_glyph_h_advances_func_t:

A virtual method for the hb_font_funcs_t of an hb_font_t object.

This method should retrieve the advances for a sequence of glyphs, in horizontal-direction text segments.

Definition at line 337 of file hb-font.h.

◆ hb_font_get_glyph_h_kerning_func_t

hb_font_get_glyph_h_kerning_func_t:

A virtual method for the hb_font_funcs_t of an hb_font_t object.

This method should retrieve the kerning-adjustment value for a glyph-pair in the specified font, for horizontal text segments.

Definition at line 421 of file hb-font.h.

◆ hb_font_get_glyph_h_origin_func_t

hb_font_get_glyph_h_origin_func_t:

A virtual method for the hb_font_funcs_t of an hb_font_t object.

This method should retrieve the (X,Y) coordinates (in font units) of the origin for a glyph, for horizontal-direction text segments. Each coordinate must be returned in an hb_position_t output parameter.

Definition at line 383 of file hb-font.h.

◆ hb_font_get_glyph_kerning_func_t

typedef hb_position_t(* hb_font_get_glyph_kerning_func_t) (hb_font_t *font, void *font_data, hb_codepoint_t first_glyph, hb_codepoint_t second_glyph, void *user_data)

hb_font_get_glyph_kerning_func_t: @font: hb_font_t to work upon @font_data: @font user data pointer @first_glyph: The glyph ID of the first glyph in the glyph pair @second_glyph: The glyph ID of the second glyph in the glyph pair @user_data: User data pointer passed by the caller

This method should retrieve the kerning-adjustment value for a glyph-pair in the specified font, for horizontal text segments.

Definition at line 409 of file hb-font.h.

◆ hb_font_get_glyph_name_func_t

typedef hb_bool_t(* hb_font_get_glyph_name_func_t) (hb_font_t *font, void *font_data, hb_codepoint_t glyph, char *name, unsigned int size, void *user_data)

Definition at line 487 of file hb-font.h.

◆ hb_font_get_glyph_origin_func_t

typedef hb_bool_t(* hb_font_get_glyph_origin_func_t) (hb_font_t *font, void *font_data, hb_codepoint_t glyph, hb_position_t *x, hb_position_t *y, void *user_data)

hb_font_get_glyph_origin_func_t: @font: hb_font_t to work upon @font_data: @font user data pointer @glyph: The glyph ID to query @x: (out): The X coordinate of the origin @y: (out): The Y coordinate of the origin @user_data: User data pointer passed by the caller

A virtual method for the hb_font_funcs_t of an hb_font_t object.

This method should retrieve the (X,Y) coordinates (in font units) of the origin for a glyph. Each coordinate must be returned in an hb_position_t output parameter.

Return value: true if data found, false otherwise

Definition at line 368 of file hb-font.h.

◆ hb_font_get_glyph_shape_func_t

typedef void(* hb_font_get_glyph_shape_func_t) (hb_font_t *font, void *font_data, hb_codepoint_t glyph, hb_draw_funcs_t *draw_funcs, void *draw_data, void *user_data)

hb_font_get_glyph_shape_func_t: @font: hb_font_t to work upon @font_data: @font user data pointer @glyph: The glyph ID to query @draw_funcs: The draw functions to send the shape data to @draw_data: The data accompanying the draw functions @user_data: User data pointer passed by the caller

A virtual method for the hb_font_funcs_t of an hb_font_t object.

Since: 4.0.0

Definition at line 528 of file hb-font.h.

◆ hb_font_get_glyph_v_advance_func_t

hb_font_get_glyph_v_advance_func_t:

A virtual method for the hb_font_funcs_t of an hb_font_t object.

This method should retrieve the advance for a specified glyph, in vertical-direction text segments. Advances must be returned in an hb_position_t output parameter.

Definition at line 302 of file hb-font.h.

◆ hb_font_get_glyph_v_advances_func_t

hb_font_get_glyph_v_advances_func_t:

A virtual method for the hb_font_funcs_t of an hb_font_t object.

This method should retrieve the advances for a sequence of glyphs, in vertical-direction text segments.

Definition at line 348 of file hb-font.h.

◆ hb_font_get_glyph_v_origin_func_t

hb_font_get_glyph_v_origin_func_t:

A virtual method for the hb_font_funcs_t of an hb_font_t object.

This method should retrieve the (X,Y) coordinates (in font units) of the origin for a glyph, for vertical-direction text segments. Each coordinate must be returned in an hb_position_t output parameter.

Definition at line 395 of file hb-font.h.

◆ hb_font_get_nominal_glyph_func_t

typedef hb_bool_t(* hb_font_get_nominal_glyph_func_t) (hb_font_t *font, void *font_data, hb_codepoint_t unicode, hb_codepoint_t *glyph, void *user_data)

hb_font_get_nominal_glyph_func_t: @font: hb_font_t to work upon @font_data: @font user data pointer @unicode: The Unicode code point to query @glyph: (out): The glyph ID retrieved @user_data: User data pointer passed by the caller

A virtual method for the hb_font_funcs_t of an hb_font_t object.

This method should retrieve the nominal glyph ID for a specified Unicode code point. Glyph IDs must be returned in a hb_codepoint_t output parameter.

Return value: true if data found, false otherwise

Definition at line 204 of file hb-font.h.

◆ hb_font_get_nominal_glyphs_func_t

typedef unsigned int(* hb_font_get_nominal_glyphs_func_t) (hb_font_t *font, void *font_data, unsigned int count, const hb_codepoint_t *first_unicode, unsigned int unicode_stride, hb_codepoint_t *first_glyph, unsigned int glyph_stride, void *user_data)

hb_font_get_nominal_glyphs_func_t: @font: hb_font_t to work upon @font_data: @font user data pointer @count: number of code points to query @first_unicode: The first Unicode code point to query @unicode_stride: The stride between successive code points @first_glyph: (out): The first glyph ID retrieved @glyph_stride: The stride between successive glyph IDs @user_data: User data pointer passed by the caller

A virtual method for the hb_font_funcs_t of an hb_font_t object.

This method should retrieve the nominal glyph IDs for a sequence of Unicode code points. Glyph IDs must be returned in a hb_codepoint_t output parameter.

Return value: the number of code points processed

Definition at line 253 of file hb-font.h.

◆ hb_font_get_variation_glyph_func_t

typedef hb_bool_t(* hb_font_get_variation_glyph_func_t) (hb_font_t *font, void *font_data, hb_codepoint_t unicode, hb_codepoint_t variation_selector, hb_codepoint_t *glyph, void *user_data)

hb_font_get_variation_glyph_func_t: @font: hb_font_t to work upon @font_data: @font user data pointer @unicode: The Unicode code point to query @variation_selector: The variation-selector code point to query @glyph: (out): The glyph ID retrieved @user_data: User data pointer passed by the caller

A virtual method for the hb_font_funcs_t of an hb_font_t object.

This method should retrieve the glyph ID for a specified Unicode code point followed by a specified Variation Selector code point. Glyph IDs must be returned in a hb_codepoint_t output parameter.

Return value: true if data found, false otherwise

Definition at line 227 of file hb-font.h.

◆ hb_font_t

typedef typedefHB_BEGIN_DECLS struct hb_font_t hb_font_t

hb_font_t:

Data type for holding fonts.

Definition at line 38 of file hb-font.h.

◆ 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.

Function Documentation

◆ hb_font_add_glyph_origin_for_direction()

HB_EXTERN void hb_font_add_glyph_origin_for_direction ( hb_font_t font,
hb_codepoint_t  glyph,
hb_direction_t  direction,
hb_position_t x,
hb_position_t y 
)

hb_font_add_glyph_origin_for_direction: @font: hb_font_t to work upon @glyph: The glyph ID to query @direction: The direction of the text segment @x: (inout): Input = The original X coordinate Output = The X coordinate plus the X-coordinate of the origin @y: (inout): Input = The original Y coordinate Output = The Y coordinate plus the Y-coordinate of the origin

Adds the origin coordinates to an (X,Y) point coordinate, in the specified glyph ID in the specified font.

Calls the appropriate direction-specific variant (horizontal or vertical) depending on the value of @direction.

Since: 0.9.2

Definition at line 1446 of file hb-font.cc.

◆ hb_font_create()

HB_EXTERN hb_font_t* hb_font_create ( hb_face_t face)

hb_font_create: (Xconstructor) @face: a face.

Constructs a new font object from the specified face.

<note>Note: If @face's index value (as passed to hb_face_create() has non-zero top 16-bits, those bits minus one are passed to hb_font_set_var_named_instance(), effectively loading a named-instance of a variable font, instead of the default-instance. This allows specifying which named-instance to load by default when creating the face.</note>

Return value: (transfer full): The new font object

Since: 0.9.2

Definition at line 1689 of file hb-font.cc.

Here is the caller graph for this function:

◆ hb_font_create_sub_font()

HB_EXTERN hb_font_t* hb_font_create_sub_font ( hb_font_t parent)

hb_font_create_sub_font: @parent: The parent font object

Constructs a sub-font font object from the specified @parent font, replicating the parent's properties.

Return value: (transfer full): The new sub-font font object

Since: 0.9.2

Definition at line 1732 of file hb-font.cc.

Here is the call graph for this function:

◆ hb_font_destroy()

HB_EXTERN void hb_font_destroy ( hb_font_t font)

hb_font_destroy: (skip) @font: hb_font_t to work upon

Decreases the reference count on the given font object. When the reference count reaches zero, the font is destroyed, freeing all memory.

Since: 0.9.2

Definition at line 1815 of file hb-font.cc.

Here is the caller graph for this function:

◆ hb_font_funcs_create()

HB_EXTERN hb_font_funcs_t* hb_font_funcs_create ( void  )

hb_font_funcs_create: (Xconstructor)

Creates a new hb_font_funcs_t structure of font functions.

Return value: (transfer full): The font-functions structure

Since: 0.9.2

Definition at line 691 of file hb-font.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ hb_font_funcs_destroy()

HB_EXTERN void hb_font_funcs_destroy ( hb_font_funcs_t ffuncs)

hb_font_funcs_destroy: (skip) @ffuncs: The font-functions structure

Decreases the reference count on a font-functions structure. When the reference count reaches zero, the font-functions structure is destroyed, freeing all memory.

Since: 0.9.2

Definition at line 745 of file hb-font.cc.

Here is the caller graph for this function:

◆ hb_font_funcs_get_empty()

HB_EXTERN hb_font_funcs_t* hb_font_funcs_get_empty ( void  )

hb_font_funcs_get_empty:

Fetches an empty font-functions structure.

Return value: (transfer full): The font-functions structure

Since: 0.9.2

Definition at line 713 of file hb-font.cc.

Here is the caller graph for this function:

◆ hb_font_funcs_get_user_data()

HB_EXTERN void* hb_font_funcs_get_user_data ( hb_font_funcs_t ffuncs,
hb_user_data_key_t key 
)

hb_font_funcs_get_user_data: (skip) @ffuncs: The font-functions structure @key: The user-data key to query

Fetches the user data associated with the specified key, attached to the specified font-functions structure.

Return value: (transfer none): A pointer to the user data

Since: 0.9.2

Definition at line 794 of file hb-font.cc.

◆ hb_font_funcs_is_immutable()

HB_EXTERN hb_bool_t hb_font_funcs_is_immutable ( hb_font_funcs_t ffuncs)

hb_font_funcs_is_immutable: @ffuncs: The font-functions structure

Tests whether a font-functions structure is immutable.

Return value: true if @ffuncs is immutable, false otherwise

Since: 0.9.2

Definition at line 829 of file hb-font.cc.

◆ hb_font_funcs_make_immutable()

HB_EXTERN void hb_font_funcs_make_immutable ( hb_font_funcs_t ffuncs)

hb_font_funcs_make_immutable: @ffuncs: The font-functions structure

Makes a font-functions structure immutable.

Since: 0.9.2

Definition at line 810 of file hb-font.cc.

◆ hb_font_funcs_reference()

HB_EXTERN hb_font_funcs_t* hb_font_funcs_reference ( hb_font_funcs_t ffuncs)

hb_font_funcs_reference: (skip) @ffuncs: The font-functions structure

Increases the reference count on a font-functions structure.

Return value: The font-functions structure

Since: 0.9.2

Definition at line 729 of file hb-font.cc.

◆ hb_font_funcs_set_font_h_extents_func()

HB_EXTERN void hb_font_funcs_set_font_h_extents_func ( hb_font_funcs_t ffuncs,
hb_font_get_font_h_extents_func_t  func,
void user_data,
hb_destroy_func_t  destroy 
)

hb_font_funcs_set_font_h_extents_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore

Sets the implementation function for hb_font_get_font_h_extents_func_t.

Since: 1.1.2

Here is the caller graph for this function:

◆ hb_font_funcs_set_font_v_extents_func()

HB_EXTERN void hb_font_funcs_set_font_v_extents_func ( hb_font_funcs_t ffuncs,
hb_font_get_font_v_extents_func_t  func,
void user_data,
hb_destroy_func_t  destroy 
)

hb_font_funcs_set_font_v_extents_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore

Sets the implementation function for hb_font_get_font_v_extents_func_t.

Since: 1.1.2

◆ hb_font_funcs_set_glyph_contour_point_func()

HB_EXTERN void hb_font_funcs_set_glyph_contour_point_func ( hb_font_funcs_t ffuncs,
hb_font_get_glyph_contour_point_func_t  func,
void user_data,
hb_destroy_func_t  destroy 
)

hb_font_funcs_set_glyph_contour_point_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore

Sets the implementation function for hb_font_get_glyph_contour_point_func_t.

Since: 0.9.2

◆ hb_font_funcs_set_glyph_extents_func()

HB_EXTERN void hb_font_funcs_set_glyph_extents_func ( hb_font_funcs_t ffuncs,
hb_font_get_glyph_extents_func_t  func,
void user_data,
hb_destroy_func_t  destroy 
)

hb_font_funcs_set_glyph_extents_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore

Sets the implementation function for hb_font_get_glyph_extents_func_t.

Since: 0.9.2

◆ hb_font_funcs_set_glyph_from_name_func()

HB_EXTERN void hb_font_funcs_set_glyph_from_name_func ( hb_font_funcs_t ffuncs,
hb_font_get_glyph_from_name_func_t  func,
void user_data,
hb_destroy_func_t  destroy 
)

hb_font_funcs_set_glyph_from_name_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore

Sets the implementation function for hb_font_get_glyph_from_name_func_t.

Since: 0.9.2

◆ hb_font_funcs_set_glyph_h_advance_func()

HB_EXTERN void hb_font_funcs_set_glyph_h_advance_func ( hb_font_funcs_t ffuncs,
hb_font_get_glyph_h_advance_func_t  func,
void user_data,
hb_destroy_func_t  destroy 
)

hb_font_funcs_set_glyph_h_advance_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore

Sets the implementation function for hb_font_get_glyph_h_advance_func_t.

Since: 0.9.2

◆ hb_font_funcs_set_glyph_h_advances_func()

HB_EXTERN void hb_font_funcs_set_glyph_h_advances_func ( hb_font_funcs_t ffuncs,
hb_font_get_glyph_h_advances_func_t  func,
void user_data,
hb_destroy_func_t  destroy 
)

hb_font_funcs_set_glyph_h_advances_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore

Sets the implementation function for hb_font_get_glyph_h_advances_func_t.

Since: 1.8.6

◆ hb_font_funcs_set_glyph_h_kerning_func()

HB_EXTERN void hb_font_funcs_set_glyph_h_kerning_func ( hb_font_funcs_t ffuncs,
hb_font_get_glyph_h_kerning_func_t  func,
void user_data,
hb_destroy_func_t  destroy 
)

hb_font_funcs_set_glyph_h_kerning_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore

Sets the implementation function for hb_font_get_glyph_h_kerning_func_t.

Since: 0.9.2

◆ hb_font_funcs_set_glyph_h_origin_func()

HB_EXTERN void hb_font_funcs_set_glyph_h_origin_func ( hb_font_funcs_t ffuncs,
hb_font_get_glyph_h_origin_func_t  func,
void user_data,
hb_destroy_func_t  destroy 
)

hb_font_funcs_set_glyph_h_origin_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore

Sets the implementation function for hb_font_get_glyph_h_origin_func_t.

Since: 0.9.2

◆ hb_font_funcs_set_glyph_name_func()

HB_EXTERN void hb_font_funcs_set_glyph_name_func ( hb_font_funcs_t ffuncs,
hb_font_get_glyph_name_func_t  func,
void user_data,
hb_destroy_func_t  destroy 
)

hb_font_funcs_set_glyph_name_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore

Sets the implementation function for hb_font_get_glyph_name_func_t.

Since: 0.9.2

◆ hb_font_funcs_set_glyph_shape_func()

HB_EXTERN void hb_font_funcs_set_glyph_shape_func ( hb_font_funcs_t ffuncs,
hb_font_get_glyph_shape_func_t  func,
void user_data,
hb_destroy_func_t  destroy 
)

hb_font_funcs_set_glyph_shape_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore

Sets the implementation function for hb_font_get_glyph_shape_func_t.

Since: 4.0.0

◆ hb_font_funcs_set_glyph_v_advance_func()

HB_EXTERN void hb_font_funcs_set_glyph_v_advance_func ( hb_font_funcs_t ffuncs,
hb_font_get_glyph_v_advance_func_t  func,
void user_data,
hb_destroy_func_t  destroy 
)

hb_font_funcs_set_glyph_v_advance_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore

Sets the implementation function for hb_font_get_glyph_v_advance_func_t.

Since: 0.9.2

◆ hb_font_funcs_set_glyph_v_advances_func()

HB_EXTERN void hb_font_funcs_set_glyph_v_advances_func ( hb_font_funcs_t ffuncs,
hb_font_get_glyph_v_advances_func_t  func,
void user_data,
hb_destroy_func_t  destroy 
)

hb_font_funcs_set_glyph_v_advances_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore

Sets the implementation function for hb_font_get_glyph_v_advances_func_t.

Since: 1.8.6

◆ hb_font_funcs_set_glyph_v_origin_func()

HB_EXTERN void hb_font_funcs_set_glyph_v_origin_func ( hb_font_funcs_t ffuncs,
hb_font_get_glyph_v_origin_func_t  func,
void user_data,
hb_destroy_func_t  destroy 
)

hb_font_funcs_set_glyph_v_origin_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore

Sets the implementation function for hb_font_get_glyph_v_origin_func_t.

Since: 0.9.2

◆ hb_font_funcs_set_nominal_glyph_func()

HB_EXTERN void hb_font_funcs_set_nominal_glyph_func ( hb_font_funcs_t ffuncs,
hb_font_get_nominal_glyph_func_t  func,
void user_data,
hb_destroy_func_t  destroy 
)

hb_font_funcs_set_nominal_glyph_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore

Sets the implementation function for hb_font_get_nominal_glyph_func_t.

Since: 1.2.3

◆ hb_font_funcs_set_nominal_glyphs_func()

HB_EXTERN void hb_font_funcs_set_nominal_glyphs_func ( hb_font_funcs_t ffuncs,
hb_font_get_nominal_glyphs_func_t  func,
void user_data,
hb_destroy_func_t  destroy 
)

hb_font_funcs_set_nominal_glyphs_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore

Sets the implementation function for hb_font_get_nominal_glyphs_func_t.

Since: 2.0.0

◆ hb_font_funcs_set_user_data()

HB_EXTERN hb_bool_t hb_font_funcs_set_user_data ( hb_font_funcs_t ffuncs,
hb_user_data_key_t key,
void data,
hb_destroy_func_t  destroy,
hb_bool_t  replace 
)

hb_font_funcs_set_user_data: (skip) @ffuncs: The font-functions structure @key: The user-data key to set @data: A pointer to the user data set @destroy: (nullable): A callback to call when @data is not needed anymore @replace: Whether to replace an existing data with the same key

Attaches a user-data key/data pair to the specified font-functions structure.

Return value: true if success, false otherwise

Since: 0.9.2

Definition at line 772 of file hb-font.cc.

◆ hb_font_funcs_set_variation_glyph_func()

HB_EXTERN void hb_font_funcs_set_variation_glyph_func ( hb_font_funcs_t ffuncs,
hb_font_get_variation_glyph_func_t  func,
void user_data,
hb_destroy_func_t  destroy 
)

hb_font_funcs_set_variation_glyph_func: @ffuncs: A font-function structure @func: (closure user_data) (destroy destroy) (scope notified): The callback function to assign @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore

Sets the implementation function for hb_font_get_variation_glyph_func_t.

Since: 1.2.3

◆ hb_font_get_empty()

HB_EXTERN hb_font_t* hb_font_get_empty ( void  )

hb_font_get_empty:

Fetches the empty font object.

Return value: (transfer full): The empty font object

Since: 0.9.2

Definition at line 1783 of file hb-font.cc.

Here is the caller graph for this function:

◆ hb_font_get_extents_for_direction()

HB_EXTERN void hb_font_get_extents_for_direction ( hb_font_t font,
hb_direction_t  direction,
hb_font_extents_t extents 
)

hb_font_get_extents_for_direction: @font: hb_font_t to work upon @direction: The direction of the text segment @extents: (out): The hb_font_extents_t retrieved

Fetches the extents for a font in a text segment of the specified direction.

Calls the appropriate direction-specific variant (horizontal or vertical) depending on the value of @direction.

Since: 1.1.3

Definition at line 1340 of file hb-font.cc.

Here is the caller graph for this function:

◆ hb_font_get_face()

HB_EXTERN hb_face_t* hb_font_get_face ( hb_font_t font)

hb_font_get_face: @font: hb_font_t to work upon

Fetches the face associated with the specified font object.

Return value: (transfer none): The hb_face_t value

Since: 0.9.2

Definition at line 1994 of file hb-font.cc.

◆ hb_font_get_glyph()

HB_EXTERN hb_bool_t hb_font_get_glyph ( hb_font_t font,
hb_codepoint_t  unicode,
hb_codepoint_t  variation_selector,
hb_codepoint_t glyph 
)

hb_font_get_glyph: @font: hb_font_t to work upon @unicode: The Unicode code point to query @variation_selector: A variation-selector code point @glyph: (out): The glyph ID retrieved

Fetches the glyph ID for a Unicode code point in the specified font, with an optional variation selector.

If @variation_selector is 0, calls hb_font_get_nominal_glyph(); otherwise calls hb_font_get_variation_glyph().

Return value: true if data found, false otherwise

Since: 0.9.2

Definition at line 938 of file hb-font.cc.

◆ hb_font_get_glyph_advance_for_direction()

HB_EXTERN void hb_font_get_glyph_advance_for_direction ( hb_font_t font,
hb_codepoint_t  glyph,
hb_direction_t  direction,
hb_position_t x,
hb_position_t y 
)

hb_font_get_glyph_advance_for_direction: @font: hb_font_t to work upon @glyph: The glyph ID to query @direction: The direction of the text segment @x: (out): The horizontal advance retrieved @y: (out): The vertical advance retrieved

Fetches the advance for a glyph ID from the specified font, in a text segment of the specified direction.

Calls the appropriate direction-specific variant (horizontal or vertical) depending on the value of @direction.

Since: 0.9.2

Definition at line 1363 of file hb-font.cc.

◆ hb_font_get_glyph_advances_for_direction()

HB_EXTERN void hb_font_get_glyph_advances_for_direction ( hb_font_t font,
hb_direction_t  direction,
unsigned int  count,
const hb_codepoint_t first_glyph,
unsigned  glyph_stride,
hb_position_t first_advance,
unsigned  advance_stride 
)

hb_font_get_glyph_advances_for_direction: @font: hb_font_t to work upon @direction: The direction of the text segment @count: The number of glyph IDs in the sequence queried @first_glyph: The first glyph ID to query @glyph_stride: The stride between successive glyph IDs @first_advance: (out): The first advance retrieved @advance_stride: (out): The stride between successive advances

Fetches the advances for a sequence of glyph IDs in the specified font, in a text segment of the specified direction.

Calls the appropriate direction-specific variant (horizontal or vertical) depending on the value of @direction.

Since: 1.8.6

Definition at line 1390 of file hb-font.cc.

◆ hb_font_get_glyph_contour_point()

HB_EXTERN hb_bool_t hb_font_get_glyph_contour_point ( hb_font_t font,
hb_codepoint_t  glyph,
unsigned int  point_index,
hb_position_t x,
hb_position_t y 
)

hb_font_get_glyph_contour_point: @font: hb_font_t to work upon @glyph: The glyph ID to query @point_index: The contour-point index to query @x: (out): The X value retrieved for the contour point @y: (out): The Y value retrieved for the contour point

Fetches the (x,y) coordinates of a specified contour-point index in the specified glyph, within the specified font.

Return value: true if data found, false otherwise

Since: 0.9.2

Definition at line 1247 of file hb-font.cc.

◆ hb_font_get_glyph_contour_point_for_origin()

HB_EXTERN hb_bool_t hb_font_get_glyph_contour_point_for_origin ( hb_font_t font,
hb_codepoint_t  glyph,
unsigned int  point_index,
hb_direction_t  direction,
hb_position_t x,
hb_position_t y 
)

hb_font_get_glyph_contour_point_for_origin: @font: hb_font_t to work upon @glyph: The glyph ID to query @point_index: The contour-point index to query @direction: The direction of the text segment @x: (out): The X value retrieved for the contour point @y: (out): The Y value retrieved for the contour point

Fetches the (X,Y) coordinates of a specified contour-point index in the specified glyph ID in the specified font, with respect to the origin in a text segment in the specified direction.

Calls the appropriate direction-specific variant (horizontal or vertical) depending on the value of @direction.

Return value: true if data found, false otherwise

Since: 0.9.2

Definition at line 1558 of file hb-font.cc.

◆ hb_font_get_glyph_extents()

HB_EXTERN hb_bool_t hb_font_get_glyph_extents ( hb_font_t font,
hb_codepoint_t  glyph,
hb_glyph_extents_t extents 
)

hb_font_get_glyph_extents: @font: hb_font_t to work upon @glyph: The glyph ID to query @extents: (out): The hb_glyph_extents_t retrieved

Fetches the hb_glyph_extents_t data for a glyph ID in the specified font.

Return value: true if data found, false otherwise

Since: 0.9.2

Definition at line 1224 of file hb-font.cc.

Here is the caller graph for this function:

◆ hb_font_get_glyph_extents_for_origin()

HB_EXTERN hb_bool_t hb_font_get_glyph_extents_for_origin ( hb_font_t font,
hb_codepoint_t  glyph,
hb_direction_t  direction,
hb_glyph_extents_t extents 
)

hb_font_get_glyph_extents_for_origin: @font: hb_font_t to work upon @glyph: The glyph ID to query @direction: The direction of the text segment @extents: (out): The hb_glyph_extents_t retrieved

Fetches the hb_glyph_extents_t data for a glyph ID in the specified font, with respect to the origin in a text segment in the specified direction.

Calls the appropriate direction-specific variant (horizontal or vertical) depending on the value of @direction.

Return value: true if data found, false otherwise

Since: 0.9.2

Definition at line 1529 of file hb-font.cc.

◆ hb_font_get_glyph_from_name()

HB_EXTERN hb_bool_t hb_font_get_glyph_from_name ( hb_font_t font,
const char *  name,
int  len,
hb_codepoint_t glyph 
)

Definition at line 1294 of file hb-font.cc.

Here is the caller graph for this function:

◆ hb_font_get_glyph_h_advance()

HB_EXTERN hb_position_t hb_font_get_glyph_h_advance ( hb_font_t font,
hb_codepoint_t  glyph 
)

hb_font_get_glyph_h_advance: @font: hb_font_t to work upon @glyph: The glyph ID to query

Fetches the advance for a glyph ID in the specified font, for horizontal text segments.

Return value: The advance of @glyph within @font

Since: 0.9.2

Definition at line 1039 of file hb-font.cc.

◆ hb_font_get_glyph_h_advances()

HB_EXTERN void hb_font_get_glyph_h_advances ( hb_font_t font,
unsigned int  count,
const hb_codepoint_t first_glyph,
unsigned  glyph_stride,
hb_position_t first_advance,
unsigned  advance_stride 
)

hb_font_get_glyph_h_advances: @font: hb_font_t to work upon @count: The number of glyph IDs in the sequence queried @first_glyph: The first glyph ID to query @glyph_stride: The stride between successive glyph IDs @first_advance: (out): The first advance retrieved @advance_stride: The stride between successive advances

Fetches the advances for a sequence of glyph IDs in the specified font, for horizontal text segments.

Since: 1.8.6

Definition at line 1079 of file hb-font.cc.

◆ hb_font_get_glyph_h_kerning()

HB_EXTERN hb_position_t hb_font_get_glyph_h_kerning ( hb_font_t font,
hb_codepoint_t  left_glyph,
hb_codepoint_t  right_glyph 
)

hb_font_get_glyph_h_kerning: @font: hb_font_t to work upon @left_glyph: The glyph ID of the left glyph in the glyph pair @right_glyph: The glyph ID of the right glyph in the glyph pair

Fetches the kerning-adjustment value for a glyph-pair in the specified font, for horizontal text segments.

<note>It handles legacy kerning only (as returned by the corresponding hb_font_funcs_t function).</note>

Return value: The kerning adjustment value

Since: 0.9.2

Definition at line 1176 of file hb-font.cc.

◆ hb_font_get_glyph_h_origin()

HB_EXTERN hb_bool_t hb_font_get_glyph_h_origin ( hb_font_t font,
hb_codepoint_t  glyph,
hb_position_t x,
hb_position_t y 
)

hb_font_get_glyph_h_origin: @font: hb_font_t to work upon @glyph: The glyph ID to query @x: (out): The X coordinate of the origin @y: (out): The Y coordinate of the origin

Fetches the (X,Y) coordinates of the origin for a glyph ID in the specified font, for horizontal text segments.

Return value: true if data found, false otherwise

Since: 0.9.2

Definition at line 1128 of file hb-font.cc.

◆ hb_font_get_glyph_kerning_for_direction()

HB_EXTERN void hb_font_get_glyph_kerning_for_direction ( hb_font_t font,
hb_codepoint_t  first_glyph,
hb_codepoint_t  second_glyph,
hb_direction_t  direction,
hb_position_t x,
hb_position_t y 
)

hb_font_get_glyph_kerning_for_direction: @font: hb_font_t to work upon @first_glyph: The glyph ID of the first glyph in the glyph pair to query @second_glyph: The glyph ID of the second glyph in the glyph pair to query @direction: The direction of the text segment @x: (out): The horizontal kerning-adjustment value retrieved @y: (out): The vertical kerning-adjustment value retrieved

Fetches the kerning-adjustment value for a glyph-pair in the specified font.

Calls the appropriate direction-specific variant (horizontal or vertical) depending on the value of @direction.

Since: 0.9.2

Definition at line 1500 of file hb-font.cc.

◆ hb_font_get_glyph_name()

HB_EXTERN hb_bool_t hb_font_get_glyph_name ( hb_font_t font,
hb_codepoint_t  glyph,
char *  name,
unsigned int  size 
)

Definition at line 1270 of file hb-font.cc.

Here is the caller graph for this function:

◆ hb_font_get_glyph_origin_for_direction()

HB_EXTERN void hb_font_get_glyph_origin_for_direction ( hb_font_t font,
hb_codepoint_t  glyph,
hb_direction_t  direction,
hb_position_t x,
hb_position_t y 
)

hb_font_get_glyph_origin_for_direction: @font: hb_font_t to work upon @glyph: The glyph ID to query @direction: The direction of the text segment @x: (out): The X coordinate retrieved for the origin @y: (out): The Y coordinate retrieved for the origin

Fetches the (X,Y) coordinates of the origin for a glyph in the specified font.

Calls the appropriate direction-specific variant (horizontal or vertical) depending on the value of @direction.

Since: 0.9.2

Definition at line 1418 of file hb-font.cc.

◆ hb_font_get_glyph_shape()

HB_EXTERN void hb_font_get_glyph_shape ( hb_font_t font,
hb_codepoint_t  glyph,
hb_draw_funcs_t dfuncs,
void draw_data 
)

hb_font_get_glyph_shape: @font: hb_font_t to work upon @glyph: : The glyph ID @dfuncs: hb_draw_funcs_t to draw to @draw_data: User data to pass to draw callbacks

Fetches the glyph shape that corresponds to a glyph in the specified @font. The shape is returned by way of calls to the callsbacks of the @dfuncs objects, with @draw_data passed to them.

Since: 4.0.0

Definition at line 1316 of file hb-font.cc.

◆ hb_font_get_glyph_v_advance()

HB_EXTERN hb_position_t hb_font_get_glyph_v_advance ( hb_font_t font,
hb_codepoint_t  glyph 
)

hb_font_get_glyph_v_advance: @font: hb_font_t to work upon @glyph: The glyph ID to query

Fetches the advance for a glyph ID in the specified font, for vertical text segments.

Return value: The advance of @glyph within @font

Since: 0.9.2

Definition at line 1058 of file hb-font.cc.

◆ hb_font_get_glyph_v_advances()

HB_EXTERN void hb_font_get_glyph_v_advances ( hb_font_t font,
unsigned int  count,
const hb_codepoint_t first_glyph,
unsigned  glyph_stride,
hb_position_t first_advance,
unsigned  advance_stride 
)

hb_font_get_glyph_v_advances: @font: hb_font_t to work upon @count: The number of glyph IDs in the sequence queried @first_glyph: The first glyph ID to query @glyph_stride: The stride between successive glyph IDs @first_advance: (out): The first advance retrieved @advance_stride: (out): The stride between successive advances

Fetches the advances for a sequence of glyph IDs in the specified font, for vertical text segments.

Since: 1.8.6

Definition at line 1103 of file hb-font.cc.

◆ hb_font_get_glyph_v_origin()

HB_EXTERN hb_bool_t hb_font_get_glyph_v_origin ( hb_font_t font,
hb_codepoint_t  glyph,
hb_position_t x,
hb_position_t y 
)

hb_font_get_glyph_v_origin: @font: hb_font_t to work upon @glyph: The glyph ID to query @x: (out): The X coordinate of the origin @y: (out): The Y coordinate of the origin

Fetches the (X,Y) coordinates of the origin for a glyph ID in the specified font, for vertical text segments.

Return value: true if data found, false otherwise

Since: 0.9.2

Definition at line 1151 of file hb-font.cc.

◆ hb_font_get_h_extents()

HB_EXTERN hb_bool_t hb_font_get_h_extents ( hb_font_t font,
hb_font_extents_t extents 
)

hb_font_get_h_extents: @font: hb_font_t to work upon @extents: (out): The font extents retrieved

Fetches the extents for a specified font, for horizontal text segments.

Return value: true if data found, false otherwise

Since: 1.1.3

Definition at line 895 of file hb-font.cc.

◆ hb_font_get_nominal_glyph()

HB_EXTERN hb_bool_t hb_font_get_nominal_glyph ( hb_font_t font,
hb_codepoint_t  unicode,
hb_codepoint_t glyph 
)

hb_font_get_nominal_glyph: @font: hb_font_t to work upon @unicode: The Unicode code point to query @glyph: (out): The glyph ID retrieved

Fetches the nominal glyph ID for a Unicode code point in the specified font.

This version of the function should not be used to fetch glyph IDs for code points modified by variation selectors. For variation-selector support, user hb_font_get_variation_glyph() or use hb_font_get_glyph().

Return value: true if data found, false otherwise

Since: 1.2.3

Definition at line 966 of file hb-font.cc.

Here is the caller graph for this function:

◆ hb_font_get_nominal_glyphs()

HB_EXTERN unsigned int hb_font_get_nominal_glyphs ( hb_font_t font,
unsigned int  count,
const hb_codepoint_t first_unicode,
unsigned int  unicode_stride,
hb_codepoint_t first_glyph,
unsigned int  glyph_stride 
)

hb_font_get_nominal_glyphs: @font: hb_font_t to work upon @count: number of code points to query @first_unicode: The first Unicode code point to query @unicode_stride: The stride between successive code points @first_glyph: (out): The first glyph ID retrieved @glyph_stride: The stride between successive glyph IDs

Fetches the nominal glyph IDs for a sequence of Unicode code points. Glyph IDs must be returned in a hb_codepoint_t output parameter.

Return value: the number of code points processed

Since: 2.6.3

Definition at line 990 of file hb-font.cc.

◆ hb_font_get_parent()

HB_EXTERN hb_font_t* hb_font_get_parent ( hb_font_t font)

hb_font_get_parent: @font: hb_font_t to work upon

Fetches the parent font of @font.

Return value: (transfer none): The parent font object

Since: 0.9.2

Definition at line 1950 of file hb-font.cc.

◆ hb_font_get_ppem()

HB_EXTERN void hb_font_get_ppem ( hb_font_t font,
unsigned int *  x_ppem,
unsigned int *  y_ppem 
)

hb_font_get_ppem: @font: hb_font_t to work upon @x_ppem: (out): Horizontal ppem value @y_ppem: (out): Vertical ppem value

Fetches the horizontal and vertical points-per-em (ppem) of a font.

Since: 0.9.2

Definition at line 2145 of file hb-font.cc.

◆ hb_font_get_ptem()

HB_EXTERN float hb_font_get_ptem ( hb_font_t font)

hb_font_get_ptem: @font: hb_font_t to work upon

Fetches the "point size" of a font. Used in CoreText to implement optical sizing.

Return value: Point size. A value of zero means "not set."

Since: 1.6.0

Definition at line 2187 of file hb-font.cc.

◆ hb_font_get_scale()

HB_EXTERN void hb_font_get_scale ( hb_font_t font,
int *  x_scale,
int *  y_scale 
)

hb_font_get_scale: @font: hb_font_t to work upon @x_scale: (out): Horizontal scale value @y_scale: (out): Vertical scale value

Fetches the horizontal and vertical scale of a font.

Since: 0.9.2

Definition at line 2104 of file hb-font.cc.

◆ hb_font_get_synthetic_slant()

HB_EXTERN float hb_font_get_synthetic_slant ( hb_font_t font)

hb_font_get_synthetic_slant: @font: hb_font_t to work upon

Fetches the "synthetic slant" of a font.

Return value: Synthetic slant. By default is zero.

Since: 3.3.0

Definition at line 2234 of file hb-font.cc.

◆ hb_font_get_user_data()

HB_EXTERN void* hb_font_get_user_data ( hb_font_t font,
hb_user_data_key_t key 
)

hb_font_get_user_data: (skip) @font: hb_font_t to work upon @key: The user-data key to query

Fetches the user-data object associated with the specified key, attached to the specified font object.

Return value: (transfer none): Pointer to the user data

Since: 0.9.2

Definition at line 1871 of file hb-font.cc.

Here is the caller graph for this function:

◆ hb_font_get_v_extents()

HB_EXTERN hb_bool_t hb_font_get_v_extents ( hb_font_t font,
hb_font_extents_t extents 
)

hb_font_get_v_extents: @font: hb_font_t to work upon @extents: (out): The font extents retrieved

Fetches the extents for a specified font, for vertical text segments.

Return value: true if data found, false otherwise

Since: 1.1.3

Definition at line 914 of file hb-font.cc.

◆ hb_font_get_var_coords_design()

HB_EXTERN const float* hb_font_get_var_coords_design ( hb_font_t font,
unsigned int *  length 
)

hb_font_get_var_coords_design: @font: hb_font_t to work upon @length: (out): Number of coordinates retrieved

Fetches the list of variation coordinates (in design-space units) currently set on a font.

Note that this returned array may only contain values for some (or none) of the axes; omitted axes effectively have their default values.

Return value is valid as long as variation coordinates of the font are not modified.

Return value: coordinates array

Since: 3.3.0

Definition at line 2469 of file hb-font.cc.

◆ hb_font_get_var_coords_normalized()

HB_EXTERN const int* hb_font_get_var_coords_normalized ( hb_font_t font,
unsigned int *  length 
)

hb_font_get_var_coords_normalized: @font: hb_font_t to work upon @length: (out): Number of coordinates retrieved

Fetches the list of normalized variation coordinates currently set on a font.

Note that this returned array may only contain values for some (or none) of the axes; omitted axes effectively have zero values.

Return value is valid as long as variation coordinates of the font are not modified.

Return value: coordinates array

Since: 1.4.2

Definition at line 2440 of file hb-font.cc.

◆ hb_font_get_variation_glyph()

HB_EXTERN hb_bool_t hb_font_get_variation_glyph ( hb_font_t font,
hb_codepoint_t  unicode,
hb_codepoint_t  variation_selector,
hb_codepoint_t glyph 
)

hb_font_get_variation_glyph: @font: hb_font_t to work upon @unicode: The Unicode code point to query @variation_selector: The variation-selector code point to query @glyph: (out): The glyph ID retrieved

Fetches the glyph ID for a Unicode code point when followed by by the specified variation-selector code point, in the specified font.

Return value: true if data found, false otherwise

Since: 1.2.3

Definition at line 1018 of file hb-font.cc.

◆ hb_font_glyph_from_string()

HB_EXTERN hb_bool_t hb_font_glyph_from_string ( hb_font_t font,
const char *  s,
int  len,
hb_codepoint_t glyph 
)

hb_font_glyph_from_string: @font: hb_font_t to work upon @s: (array length=len) (element-type uint8_t): string to query @len: The length of the string @s @glyph: (out): The glyph ID corresponding to the string requested

Fetches the glyph ID from @font that matches the specified string. Strings of the format gidDDD or uniUUUU are parsed automatically.

<note>Note: @len == -1 means the string is null-terminated.</note>

Return value: true if data found, false otherwise

Since: 0.9.2

Definition at line 1609 of file hb-font.cc.

Here is the caller graph for this function:

◆ hb_font_glyph_to_string()

HB_EXTERN void hb_font_glyph_to_string ( hb_font_t font,
hb_codepoint_t  glyph,
char *  s,
unsigned int  size 
)

hb_font_glyph_to_string: @font: hb_font_t to work upon @glyph: The glyph ID to query @s: (out) (array length=size): The string containing the glyph name @size: Length of string @s

Fetches the name of the specified glyph ID in @font and returns it in string @s.

If the glyph ID has no name in @font, a string of the form gidDDD is generated, with DDD being the glyph ID.

Since: 0.9.2

Definition at line 1584 of file hb-font.cc.

◆ hb_font_is_immutable()

HB_EXTERN hb_bool_t hb_font_is_immutable ( hb_font_t font)

hb_font_is_immutable: @font: hb_font_t to work upon

Tests whether a font object is immutable.

Return value: true if @font is immutable, false otherwise

Since: 0.9.2

Definition at line 1908 of file hb-font.cc.

◆ hb_font_make_immutable()

HB_EXTERN void hb_font_make_immutable ( hb_font_t font)

hb_font_make_immutable: @font: hb_font_t to work upon

Makes @font immutable.

Since: 0.9.2

Definition at line 1886 of file hb-font.cc.

◆ hb_font_reference()

HB_EXTERN hb_font_t* hb_font_reference ( hb_font_t font)

hb_font_reference: (skip) @font: hb_font_t to work upon

Increases the reference count on the given font object.

Return value: (transfer full): The @font object

Since: 0.9.2

Definition at line 1799 of file hb-font.cc.

◆ hb_font_set_face()

HB_EXTERN void hb_font_set_face ( hb_font_t font,
hb_face_t face 
)

hb_font_set_face: @font: hb_font_t to work upon @face: The hb_face_t to assign

Sets @face as the font-face value of @font.

Since: 1.4.3

Definition at line 1965 of file hb-font.cc.

◆ hb_font_set_funcs()

HB_EXTERN void hb_font_set_funcs ( hb_font_t font,
hb_font_funcs_t klass,
void font_data,
hb_destroy_func_t  destroy 
)

hb_font_set_funcs: @font: hb_font_t to work upon @klass: (closure font_data) (destroy destroy) (scope notified): The font-functions structure. @font_data: Data to attach to @font @destroy: (nullable): The function to call when @font_data is not needed anymore

Replaces the font-functions structure attached to a font, updating the font's user-data with @font-data and the @destroy callback.

Since: 0.9.2

Definition at line 2013 of file hb-font.cc.

Here is the caller graph for this function:

◆ hb_font_set_funcs_data()

HB_EXTERN void hb_font_set_funcs_data ( hb_font_t font,
void font_data,
hb_destroy_func_t  destroy 
)

hb_font_set_funcs_data: @font: hb_font_t to work upon @font_data: (destroy destroy) (scope notified): Data to attach to @font @destroy: (nullable): The function to call when @font_data is not needed anymore

Replaces the user data attached to a font, updating the font's @destroy callback.

Since: 0.9.2

Definition at line 2050 of file hb-font.cc.

◆ hb_font_set_parent()

HB_EXTERN void hb_font_set_parent ( hb_font_t font,
hb_font_t parent 
)

hb_font_set_parent: @font: hb_font_t to work upon @parent: The parent font object to assign

Sets the parent font of @font.

Since: 1.0.5

Definition at line 1923 of file hb-font.cc.

◆ hb_font_set_ppem()

HB_EXTERN void hb_font_set_ppem ( hb_font_t font,
unsigned int  x_ppem,
unsigned int  y_ppem 
)

hb_font_set_ppem: @font: hb_font_t to work upon @x_ppem: Horizontal ppem value to assign @y_ppem: Vertical ppem value to assign

Sets the horizontal and vertical pixels-per-em (ppem) of a font.

Since: 0.9.2

Definition at line 2123 of file hb-font.cc.

◆ hb_font_set_ptem()

HB_EXTERN void hb_font_set_ptem ( hb_font_t font,
float  ptem 
)

hb_font_set_ptem: @font: hb_font_t to work upon @ptem: font size in points.

Sets the "point size" of a font. Set to zero to unset. Used in CoreText to implement optical sizing.

<note>Note: There are 72 points in an inch.</note>

Since: 1.6.0

Definition at line 2166 of file hb-font.cc.

◆ hb_font_set_scale()

HB_EXTERN void hb_font_set_scale ( hb_font_t font,
int  x_scale,
int  y_scale 
)

hb_font_set_scale: @font: hb_font_t to work upon @x_scale: Horizontal scale value to assign @y_scale: Vertical scale value to assign

Sets the horizontal and vertical scale of a font.

Since: 0.9.2

Definition at line 2081 of file hb-font.cc.

Here is the caller graph for this function:

◆ hb_font_set_synthetic_slant()

HB_EXTERN void hb_font_set_synthetic_slant ( hb_font_t font,
float  slant 
)

hb_font_set_synthetic_slant: @font: hb_font_t to work upon @slant: synthetic slant value.

Sets the "synthetic slant" of a font. By default is zero. Synthetic slant is the graphical skew applied to the font at rendering time.

HarfBuzz needs to know this value to adjust shaping results, metrics, and style values to match the slanted rendering.

<note>Note: The glyph shape fetched via the hb_font_get_glyph_shape() is slanted to reflect this value as well.</note>

<note>Note: The slant value is a ratio. For example, a 20% slant would be represented as a 0.2 value.</note>

Since: 3.3.0

Definition at line 2214 of file hb-font.cc.

◆ hb_font_set_user_data()

HB_EXTERN hb_bool_t hb_font_set_user_data ( hb_font_t font,
hb_user_data_key_t key,
void data,
hb_destroy_func_t  destroy,
hb_bool_t  replace 
)

hb_font_set_user_data: (skip) @font: hb_font_t to work upon @key: The user-data key @data: A pointer to the user data @destroy: (nullable): A callback to call when @data is not needed anymore @replace: Whether to replace an existing data with the same key

Attaches a user-data key/data pair to the specified font object.

Return value: true if success, false otherwise

Since: 0.9.2

Definition at line 1849 of file hb-font.cc.

Here is the caller graph for this function:

◆ hb_font_set_var_coords_design()

HB_EXTERN void hb_font_set_var_coords_design ( hb_font_t font,
const float *  coords,
unsigned int  coords_length 
)

hb_font_set_var_coords_design: @font: hb_font_t to work upon @coords: (array length=coords_length): Array of variation coordinates to apply @coords_length: Number of coordinates to apply

Applies a list of variation coordinates (in design-space units) to a font.

Note that this overrides all existing variations set on @font. Axes not included in @coords will be effectively set to their default values.

Since: 1.4.2

Definition at line 2318 of file hb-font.cc.

◆ hb_font_set_var_coords_normalized()

HB_EXTERN void hb_font_set_var_coords_normalized ( hb_font_t font,
const int *  coords,
unsigned int  coords_length 
)

hb_font_set_var_coords_normalized: @font: hb_font_t to work upon @coords: (array length=coords_length): Array of variation coordinates to apply @coords_length: Number of coordinates to apply

Applies a list of variation coordinates (in normalized units) to a font.

Note that this overrides all existing variations set on @font. Axes not included in @coords will be effectively set to their default values.

<note>Note: Coordinates should be normalized to 2.14.</note>

Since: 1.4.2

Definition at line 2387 of file hb-font.cc.

◆ hb_font_set_var_named_instance()

HB_EXTERN void hb_font_set_var_named_instance ( hb_font_t font,
unsigned  instance_index 
)

hb_font_set_var_named_instance: @font: a font. @instance_index: named instance index.

Sets design coords of a font from a named instance index.

Since: 2.6.0

Definition at line 2352 of file hb-font.cc.

◆ hb_font_set_variations()

HB_EXTERN void hb_font_set_variations ( hb_font_t font,
const hb_variation_t variations,
unsigned int  variations_length 
)

hb_font_set_variations: @font: hb_font_t to work upon @variations: (array length=variations_length): Array of variation settings to apply @variations_length: Number of variations to apply

Applies a list of font-variation settings to a font.

Note that this overrides all existing variations set on @font. Axes not included in @variations will be effectively set to their default values.

Since: 1.4.2

Definition at line 2259 of file hb-font.cc.

◆ hb_font_subtract_glyph_origin_for_direction()

HB_EXTERN void hb_font_subtract_glyph_origin_for_direction ( hb_font_t font,
hb_codepoint_t  glyph,
hb_direction_t  direction,
hb_position_t x,
hb_position_t y 
)

hb_font_subtract_glyph_origin_for_direction: @font: hb_font_t to work upon @glyph: The glyph ID to query @direction: The direction of the text segment @x: (inout): Input = The original X coordinate Output = The X coordinate minus the X-coordinate of the origin @y: (inout): Input = The original Y coordinate Output = The Y coordinate minus the Y-coordinate of the origin

Subtracts the origin coordinates from an (X,Y) point coordinate, in the specified glyph ID in the specified font.

Calls the appropriate direction-specific variant (horizontal or vertical) depending on the value of @direction.

Since: 0.9.2

Definition at line 1474 of file hb-font.cc.