31 #define GR2_VERSION_MAJOR 1 32 #define GR2_VERSION_MINOR 3 33 #define GR2_VERSION_BUGFIX 6 98 typedef const void *(*gr_get_table_fn)(
const void* appFaceHandle,
unsigned int name,
size_t *len);
237 #ifndef GRAPHITE2_NFILEFACE 256 #endif // !GRAPHITE2_NFILEFACE gr_get_table_fn get_table
a pointer to a function to request a table from the client.
Definition: Font.h:113
void(* gr_release_table_fn)(const void *appFaceHandle, const void *table_buffer)
type describing function to release any resources allocated by the above get_table table function ...
Definition: Font.h:105
const void *(* gr_get_table_fn)(const void *appFaceHandle, unsigned int name, size_t *len)
type describing function to retrieve font table information
Definition: Font.h:98
GR2_API const gr_feature_ref * gr_face_find_fref(const gr_face *pFace, gr_uint32 featId)
Get feature reference for a given feature id from a face.
GR2_API int gr_face_is_char_supported(const gr_face *pFace, gr_uint32 usv, gr_uint32 script)
Returns whether the font supports a given Unicode character.
GR2_API gr_feature_val * gr_featureval_clone(const gr_feature_val *pfeatures)
Copies a gr_feature_val.
gr_encform
Definition: Types.h:39
Holds information about a particular Graphite silf table that has been loaded.
Definition: Font.h:70
GR2_API gr_font * gr_make_font_with_advance_fn(float ppm, const void *appFontHandle, gr_advance_fn getAdvance, const gr_face *face)
Creates a font with hinted advance width query function.
GR2_API gr_feature_val * gr_face_featureval_for_lang(const gr_face *pFace, gr_uint32 langname)
Get feature values for a given language or default.
gr_uint16 extra_ascent
The extra_ascent in the GDL, in design units.
Definition: Font.h:71
size_t size
size of the structure in bytes to allow for future extensibility
Definition: Font.h:278
struct gr_feature_val gr_feature_val
Definition: Font.h:43
gr_release_table_fn release_table
is a pointer to a function to notify the client the a table can be released.
Definition: Font.h:116
unsigned int has_bidi_pass
the table specifies that a bidirectional pass should run
Definition: Font.h:83
GR2_API unsigned short gr_face_n_languages(const gr_face *pFace)
Return number of languages the face knows about.
GR2_API gr_face * gr_make_face(const void *appFaceHandle, gr_get_table_fn getTable, unsigned int faceOptions)
Create a gr_face object given application information and a getTable function.
GR2_API gr_uint32 gr_face_lang_by_index(const gr_face *pFace, gr_uint16 i)
Returns a language id corresponding to a language of given index in the face.
GR2_API gr_font * gr_make_font_with_ops(float ppm, const void *appFontHandle, const gr_font_ops *font_ops, const gr_face *face)
Creates a font with hinted advance width query functions.
GR2_API int gr_fref_set_feature_value(const gr_feature_ref *pfeatureref, gr_uint16 val, gr_feature_val *pDest)
set a feature value
short gr_int16
Definition: Types.h:35
unsigned int justifies
there are .justify properties set somewhere on some glyphs
Definition: Font.h:85
struct housing function pointers to manage font hinted metrics for the graphite engine.
Definition: Font.h:275
struct gr_font gr_font
Definition: Font.h:41
no information is known.
Definition: Font.h:75
Preload everything.
Definition: Font.h:66
the space character may occur as the first or last element of a rule.
Definition: Font.h:80
GR2_API gr_uint16 gr_fref_feature_value(const gr_feature_ref *pfeatureref, const gr_feature_val *feats)
get a feature value
GR2_API void gr_font_destroy(gr_font *font)
Free a font.
GR2_API gr_int16 gr_fref_value(const gr_feature_ref *pfeatureref, gr_uint16 settingno)
Returns the value associated with a particular value in a feature.
Cache the lookup from code point to glyph ID at construction time.
Definition: Font.h:64
GR2_API const gr_faceinfo * gr_face_info(const gr_face *pFace, gr_uint32 script)
Returns a faceinfo for the face and script.
GR2_API gr_face * gr_make_face_with_seg_cache_and_ops(const void *appFaceHandle, const gr_face_ops *face_ops, unsigned int segCacheMaxSize, unsigned int faceOptions)
Create a gr_face object given application information, with subsegmental caching support.
gr_uint16 extra_descent
The extra_descent in the GDL, in design units.
Definition: Font.h:72
unsigned int line_ends
there are line end contextuals somewhere
Definition: Font.h:84
preload glyphs at construction time
Definition: Font.h:62
GR2_API gr_uint32 gr_str_to_tag(const char *str)
Convert a tag in a string into a gr_uint32.
GR2_API void gr_engine_version(int *nMajor, int *nMinor, int *nBugFix)
Returns version information on this engine.
struct gr_face gr_face
Definition: Font.h:40
struct gr_feature_ref gr_feature_ref
Definition: Font.h:42
size_t size
size in bytes of this structure
Definition: Font.h:111
GR2_API gr_face * gr_make_file_face_with_seg_cache(const char *filename, unsigned int segCacheMaxSize, unsigned int faceOptions)
Create gr_face from a font file, with subsegment caching support.
GR2_API gr_face * gr_make_face_with_ops(const void *appFaceHandle, const gr_face_ops *face_ops, unsigned int faceOptions)
Create a gr_face object given application information and a table functions.
the space character only occurs as the last element in a rule.
Definition: Font.h:78
the space character occurs in a rule not as a first or last element.
Definition: Font.h:81
unsigned short gr_uint16
Definition: Types.h:34
#define GR2_API
Definition: Types.h:69
GR2_API gr_uint16 gr_face_n_fref(const gr_face *pFace)
Returns number of feature references in a face.
No preload, no cmap caching, fail if the graphite tables are invalid.
Definition: Font.h:58
GR2_API void gr_tag_to_str(gr_uint32 tag, char *str)
Convert a gr_uint32 tag into a string.
GR2_API gr_uint16 gr_fref_n_values(const gr_feature_ref *pfeatureref)
Returns number of values a feature may take, given a gr_feature_ref.
float(* gr_advance_fn)(const void *appFontHandle, gr_uint16 glyphid)
query function to find the hinted advance of a glyph
Definition: Font.h:271
GR2_API unsigned short gr_face_n_glyphs(const gr_face *pFace)
Returns the number of glyphs in the face.
GR2_API gr_uint32 gr_fref_id(const gr_feature_ref *pfeatureref)
Returns the id tag for a gr_feature_ref.
GR2_API gr_font * gr_make_font(float ppm, const gr_face *face)
Create a font from a face.
GR2_API gr_face * gr_make_face_with_seg_cache(const void *appFaceHandle, gr_get_table_fn getTable, unsigned int segCacheMaxSize, unsigned int faceOptions)
Create a gr_face object given application information, with subsegmental caching support.
GR2_API void gr_face_destroy(gr_face *face)
Destroy the given face and free its memory.
gr_space_contextuals
Definition: Font.h:74
Dumb rendering will be enabled if the graphite tables are invalid.
Definition: Font.h:60
gr_uint16 upem
The design units for the font.
Definition: Font.h:73
GR2_API void gr_label_destroy(void *label)
Destroy a previously returned label string.
struct housing function pointers to manage font table buffers for the graphite engine.
Definition: Font.h:108
gr_advance_fn glyph_advance_x
a pointer to a function to retrieve the hinted advance width of a glyph which the font cannot provide...
Definition: Font.h:283
GR2_API const gr_feature_ref * gr_face_fref(const gr_face *pFace, gr_uint16 i)
Returns feature reference at given index in face.
unsigned int gr_uint32
Definition: Types.h:36
enum gr_faceinfo::gr_space_contextuals space_contextuals
the space character never occurs in any rules.
Definition: Font.h:76
GR2_API void * gr_fref_label(const gr_feature_ref *pfeatureref, gr_uint16 *langId, enum gr_encform utf, gr_uint32 *length)
Returns a string of the UI name of a feature.
GR2_API void * gr_fref_value_label(const gr_feature_ref *pfeatureref, gr_uint16 settingno, gr_uint16 *langId, enum gr_encform utf, gr_uint32 *length)
Return a UI string for a possible value of a feature.
gr_advance_fn glyph_advance_y
a pointer to a function to retrieve the hinted advance height of a glyph which the font cannot provid...
Definition: Font.h:288
GR2_API gr_face * gr_make_file_face(const char *filename, unsigned int faceOptions)
Create gr_face from a font file.
gr_face_options
The Face Options allow the application to require that certain tables are read during face constructi...
Definition: Font.h:56
GR2_API void gr_featureval_destroy(gr_feature_val *pfeatures)
Destroys a gr_feature_val.
the space character only occurs as the only element in a rule.
Definition: Font.h:79
the space character only occurs as the first element in a rule.
Definition: Font.h:77