23#ifndef MUPDF_FITZ_FONT_H
24#define MUPDF_FITZ_FONT_H
772#define FZ_MAX_TRUSTWORTHY_ASCENT 8
773#define FZ_MAX_TRUSTWORTHY_DESCENT -3
struct fz_display_list fz_display_list
Definition display-list.h:47
#define FZ_DATA
Definition export.h:49
FZ_DATA const char * fz_glyph_name_from_mac_expert[256]
const char * fz_lookup_script_name(fz_context *ctx, int script, int language)
fz_buffer * fz_subset_ttf_for_gids(fz_context *ctx, fz_buffer *orig, int *gids, int num_gids, int symbolic, int cidfont)
int fz_unicode_from_glyph_name(const char *name)
int ft_char_index(void *face, int cid)
const char * ft_error_string(int err)
void fz_hb_unlock(fz_context *ctx)
void fz_run_t3_glyph(fz_context *ctx, fz_font *font, int gid, fz_matrix trm, struct fz_device *dev)
const unsigned char * fz_lookup_noto_symbol2_font(fz_context *ctx, int *len)
fz_ascdesc_source
Definition font.h:766
@ FZ_ASCDESC_FROM_FONT
Definition font.h:767
@ FZ_ASCDESC_DEFAULT
Definition font.h:768
@ FZ_ASCDESC_FROM_BOUNDS
Definition font.h:769
void fz_enumerate_font_cmap(fz_context *ctx, fz_font *font, fz_cmap_callback *cb, void *opaque)
int fz_windows_1252_from_unicode(int u)
void fz_ft_lock(fz_context *ctx)
int fz_encode_character(fz_context *ctx, fz_font *font, int unicode)
int fz_windows_1251_from_unicode(int u)
void fz_cmap_callback(fz_context *ctx, void *opaque, unsigned long ucs, unsigned int gid)
Definition font.h:747
int fz_ft_lock_held(fz_context *ctx)
fz_buffer ** fz_font_t3_procs(fz_context *ctx, fz_font *font)
FZ_DATA const unsigned short fz_unicode_from_windows_1250[256]
fz_font * fz_new_base14_font(fz_context *ctx, const char *name)
fz_font * fz_load_fallback_font(fz_context *ctx, int script, int language, int serif, int bold, int italic)
int fz_font_is_italic(fz_context *ctx, fz_font *font)
FZ_DATA const unsigned short fz_unicode_from_pdf_doc_encoding[256]
int fz_koi8u_from_unicode(int u)
int fz_font_is_monospaced(fz_context *ctx, fz_font *font)
float fz_font_ascender(fz_context *ctx, fz_font *font)
FZ_DATA const char * fz_glyph_name_from_iso8859_7[256]
void fz_drop_font(fz_context *ctx, fz_font *font)
const unsigned char * fz_lookup_base14_font(fz_context *ctx, const char *name, int *len)
const char * fz_glyph_name_from_unicode_sc(int unicode)
const unsigned char * fz_lookup_noto_music_font(fz_context *ctx, int *len)
int fz_encode_character_by_glyph_name(fz_context *ctx, fz_font *font, const char *glyphname)
int fz_windows_1250_from_unicode(int u)
FZ_DATA const unsigned short fz_unicode_from_koi8u[256]
void * fz_font_ft_face(fz_context *ctx, fz_font *font)
void fz_hb_lock(fz_context *ctx)
FZ_DATA const unsigned short fz_unicode_from_iso8859_1[256]
FZ_DATA const char * fz_glyph_name_from_koi8u[256]
int fz_glyph_cacheable(fz_context *ctx, fz_font *font, int gid)
const unsigned char * fz_lookup_noto_boxes_font(fz_context *ctx, int *len)
fz_font * fz_new_font_from_memory(fz_context *ctx, const char *name, const unsigned char *data, int len, int index, int use_glyph_bbox)
FZ_DATA const char * fz_glyph_name_from_windows_1252[256]
int fz_unicode_from_glyph_name_strict(const char *name)
int fz_lookup_cjk_ordering_by_language(const char *name)
const unsigned char * fz_lookup_noto_math_font(fz_context *ctx, int *len)
int fz_iso8859_7_from_unicode(int u)
fz_buffer * fz_extract_ttf_from_ttc(fz_context *ctx, fz_font *font)
int fz_encode_character_sc(fz_context *ctx, fz_font *font, int unicode)
const unsigned char * fz_lookup_cjk_font(fz_context *ctx, int ordering, int *len, int *index)
FZ_DATA const char * fz_glyph_name_from_mac_roman[256]
void fz_set_font_embedding(fz_context *ctx, fz_font *font, int embed)
fz_font * fz_new_builtin_font(fz_context *ctx, const char *name, int is_bold, int is_italic)
FZ_DATA const unsigned short fz_unicode_from_iso8859_7[256]
int ft_name_index(void *face, const char *name)
void fz_install_load_system_font_funcs(fz_context *ctx, fz_load_system_font_fn *f, fz_load_system_cjk_font_fn *f_cjk, fz_load_system_fallback_font_fn *f_fallback)
fz_font * fz_new_font_from_buffer(fz_context *ctx, const char *name, fz_buffer *buffer, int index, int use_glyph_bbox)
fz_font * fz_load_system_font(fz_context *ctx, const char *name, int bold, int italic, int needs_exact_metrics)
FZ_DATA const char * fz_glyph_name_from_win_ansi[256]
FZ_DATA const unsigned short fz_unicode_from_windows_1252[256]
const unsigned char * fz_lookup_noto_emoji_font(fz_context *ctx, int *len)
fz_font * fz_keep_font(fz_context *ctx, fz_font *font)
FZ_DATA const char * fz_glyph_name_from_adobe_standard[256]
const unsigned char * fz_lookup_cjk_font_by_language(fz_context *ctx, const char *lang, int *len, int *subfont)
int fz_font_is_serif(fz_context *ctx, fz_font *font)
FZ_DATA const unsigned short fz_unicode_from_windows_1251[256]
const char ** fz_duplicate_glyph_names_from_unicode(int unicode)
fz_rect fz_font_bbox(fz_context *ctx, fz_font *font)
int fz_font_is_bold(fz_context *ctx, fz_font *font)
void fz_font_digest(fz_context *ctx, fz_font *font, unsigned char digest[16])
fz_font * fz_new_font_from_file(fz_context *ctx, const char *name, const char *path, int index, int use_glyph_bbox)
const unsigned char * fz_lookup_noto_symbol1_font(fz_context *ctx, int *len)
float fz_advance_glyph(fz_context *ctx, fz_font *font, int glyph, int wmode)
void fz_set_font_bbox(fz_context *ctx, fz_font *font, float xmin, float ymin, float xmax, float ymax)
int fz_iso8859_1_from_unicode(int u)
float fz_font_descender(fz_context *ctx, fz_font *font)
void fz_init_text_decoder(fz_context *ctx, fz_text_decoder *dec, const char *encoding)
fz_font * fz_load_system_cjk_font(fz_context *ctx, const char *name, int ordering, int serif)
void fz_get_glyph_name(fz_context *ctx, fz_font *font, int glyph, char *buf, int size)
fz_buffer * fz_subset_cff_for_gids(fz_context *ctx, fz_buffer *orig, int *gids, int num_gids, int symbolic, int cidfont)
fz_font * fz_new_type3_font(fz_context *ctx, const char *name, fz_matrix matrix)
fz_font * fz_load_system_fallback_font_fn(fz_context *ctx, int script, int language, int serif, int bold, int italic)
Definition font.h:284
fz_font_flags_t * fz_font_flags(fz_font *font)
void fz_decouple_type3_font(fz_context *ctx, fz_font *font, void *t3doc)
fz_font * fz_load_system_font_fn(fz_context *ctx, const char *name, int bold, int italic, int needs_exact_metrics)
Definition font.h:255
fz_font * fz_new_cjk_font(fz_context *ctx, int ordering)
fz_shaper_data_t * fz_font_shaper_data(fz_context *ctx, fz_font *font)
const unsigned char * fz_lookup_builtin_font(fz_context *ctx, const char *name, int bold, int italic, int *len)
const char * fz_font_name(fz_context *ctx, fz_font *font)
const char * fz_lookup_noto_stem_from_script(fz_context *ctx, int script, int language)
fz_font * fz_load_system_cjk_font_fn(fz_context *ctx, const char *name, int ordering, int serif)
Definition font.h:269
void fz_calculate_font_ascender_descender(fz_context *ctx, fz_font *font)
@ FZ_ADOBE_JAPAN
Definition font.h:138
@ FZ_ADOBE_CNS
Definition font.h:138
@ FZ_ADOBE_KOREA
Definition font.h:138
@ FZ_ADOBE_GB
Definition font.h:138
void fz_ft_unlock(fz_context *ctx)
fz_rect fz_bound_glyph(fz_context *ctx, fz_font *font, int gid, fz_matrix trm)
int fz_encode_character_with_fallback(fz_context *ctx, fz_font *font, int unicode, int script, int language, fz_font **out_font)
const unsigned char * fz_lookup_noto_font(fz_context *ctx, int script, int lang, int *len, int *subfont)
unsigned int never_embed
Definition font.h:162
unsigned int fake_bold
Definition font.h:153
unsigned int invalid_bbox
Definition font.h:156
unsigned int fake_italic
Definition font.h:154
unsigned int is_mono
Definition font.h:146
unsigned int ft_substitute
Definition font.h:150
unsigned int ft_stretch
Definition font.h:151
unsigned int cjk_lang
Definition font.h:159
unsigned int is_bold
Definition font.h:148
unsigned int has_opentype
Definition font.h:155
unsigned int is_serif
Definition font.h:147
unsigned int cjk
Definition font.h:158
unsigned int is_italic
Definition font.h:149
unsigned int embed
Definition font.h:161
void * ft_face
Definition font.h:784
struct fz_display_list ** t3lists
Definition font.h:790
fz_ascdesc_source ascdesc_src
Definition font.h:802
fz_shaper_data_t shaper_data
Definition font.h:785
int refs
Definition font.h:777
void(* t3run)(fz_context *ctx, void *doc, void *resources, fz_buffer *contents, struct fz_device *dev, fz_matrix ctm, void *gstate, fz_default_colorspaces *default_cs, void *fill_gstate, void *stroke_gstate)
Definition font.h:794
int width_count
Definition font.h:811
fz_rect ** bbox_table
Definition font.h:807
int glyph_count
Definition font.h:804
void(* t3freeres)(fz_context *ctx, void *doc, void *resources)
Definition font.h:795
void * t3doc
Definition font.h:793
fz_matrix t3matrix
Definition font.h:787
fz_rect bbox
Definition font.h:798
float ascender
Definition font.h:800
unsigned char digest[16]
Definition font.h:823
short width_default
Definition font.h:812
uint16_t * encoding_cache[256]
Definition font.h:819
fz_buffer * buffer
Definition font.h:780
short * width_table
Definition font.h:813
char name[32]
Definition font.h:778
int use_glyph_bbox
Definition font.h:808
unsigned short * t3flags
Definition font.h:792
float * t3widths
Definition font.h:791
int t3loading
Definition font.h:796
int subfont
Definition font.h:826
char family[32]
Definition font.h:779
void * t3resources
Definition font.h:788
int has_digest
Definition font.h:822
fz_buffer ** t3procs
Definition font.h:789
float descender
Definition font.h:801
float ** advance_cache
Definition font.h:816
fz_font_flags_t flags
Definition font.h:782
Definition geometry.h:388
Definition geometry.h:231
void * shaper_handle
Definition font.h:187
void(* destroy)(fz_context *ctx, void *)
Definition font.h:188
int(* decode_size)(fz_text_decoder *dec, unsigned char *input, int n)
Definition font.h:75
void(* decode)(fz_text_decoder *dec, char *output, unsigned char *input, int n)
Definition font.h:78
void * table1
Definition font.h:81
int(* decode_bound)(fz_text_decoder *dec, unsigned char *input, int n)
Definition font.h:72
void * table2
Definition font.h:82