13 #include FT_MULTIPLE_MASTERS_H
15 #define BLF_VARIATIONS_MAX 16
17 #define MAKE_DVAR_TAG(a, b, c, d) \
18 (((uint32_t)a << 24u) | ((uint32_t)b << 16u) | ((uint32_t)c << 8u) | ((uint32_t)d))
20 #define blf_variation_axis_weight MAKE_DVAR_TAG('w', 'g', 'h', 't')
21 #define blf_variation_axis_slant MAKE_DVAR_TAG('s', 'l', 'n', 't')
22 #define blf_variation_axis_width MAKE_DVAR_TAG('w', 'd', 't', 'h')
23 #define blf_variation_axis_spacing MAKE_DVAR_TAG('s', 'p', 'a', 'c')
24 #define blf_variation_axis_optsize MAKE_DVAR_TAG('o', 'p', 's', 'z')
45 #define USE_LEGACY_SPACING
47 #define FT_PIX_FLOOR(x) ((x) & ~63)
48 #define FT_PIX_ROUND(x) FT_PIX_FLOOR((x) + 32)
49 #define FT_PIX_CEIL(x) ((x) + 63)
51 #ifdef USE_LEGACY_SPACING
52 # define FT_PIX_DEFAULT_ROUNDING(x) FT_PIX_FLOOR(x)
54 # define FT_PIX_DEFAULT_ROUNDING(x) FT_PIX_ROUND(x)
59 #ifdef USE_LEGACY_SPACING
83 return lroundf(
v * 64.0f);
94 #undef FT_PIX_DEFAULT_ROUNDING
98 #define BLF_BATCH_DRAW_LEN_MAX 2048
101 #define GLYPH_ASCII_TABLE_SIZE 128
104 #define KERNING_CACHE_TABLE_SIZE 128
107 #define KERNING_ENTRY_UNSET INT_MAX
pthread_spinlock_t SpinLock
struct GPUTexture GPUTexture
struct GPUVertBuf GPUVertBuf
struct FontBufInfoBLF FontBufInfoBLF
BLI_INLINE int ft_pix_to_int_floor(ft_pix v)
#define GLYPH_ASCII_TABLE_SIZE
BLI_INLINE ft_pix ft_pix_from_float(float v)
BLI_INLINE ft_pix ft_pix_from_int(int v)
#define FT_PIX_DEFAULT_ROUNDING(x)
#define KERNING_CACHE_TABLE_SIZE
BLI_INLINE ft_pix ft_pix_round_advance(ft_pix v, ft_pix step)
struct KerningCacheBLF KerningCacheBLF
BLI_INLINE int ft_pix_to_int(ft_pix v)
BLI_INLINE int ft_pix_to_int_ceil(ft_pix v)
struct GlyphCacheBLF GlyphCacheBLF
ATTR_WARN_UNUSED_RESULT const BMVert * v
struct GPUVertBuf * verts
struct GPUVertBufRaw pos_step col_step offset_step glyph_size_step
struct GlyphCacheBLF * glyph_cache
unsigned int glyph_size_loc
KerningCacheBLF * kerning_cache
SpinLock * glyph_cache_mutex
unsigned int reference_count
unsigned char shadow_color[4]
unsigned char col_char[4]
struct ColorManagedDisplay * display
struct GlyphCacheBLF * glyph_cache
struct GlyphBLF * glyph_ascii_table[GLYPH_ASCII_TABLE_SIZE]
struct GlyphCacheBLF * next
struct GlyphCacheBLF * prev
int ascii_table[KERNING_CACHE_TABLE_SIZE][KERNING_CACHE_TABLE_SIZE]