[config] Add HB_LEAN

Part of https://github.com/harfbuzz/harfbuzz/issues/1652
This commit is contained in:
Behdad Esfahbod 2019-05-11 00:13:35 -07:00
parent 0bfd14c0ed
commit 484f6e8215
2 changed files with 45 additions and 0 deletions

View File

@ -36,9 +36,14 @@
#ifdef HB_TINY #ifdef HB_TINY
#define HB_LEAN
#define HB_MINI #define HB_MINI
#endif
#ifdef HB_LEAN
#define HB_NO_BITMAP #define HB_NO_BITMAP
#define HB_NO_CFF #define HB_NO_CFF
#define HB_NO_MATH
#endif #endif
#ifdef HB_MINI #ifdef HB_MINI

View File

@ -58,6 +58,10 @@
hb_bool_t hb_bool_t
hb_ot_math_has_data (hb_face_t *face) hb_ot_math_has_data (hb_face_t *face)
{ {
#ifdef HB_NO_MATH
return false;
#endif
return face->table.MATH->has_data (); return face->table.MATH->has_data ();
} }
@ -80,6 +84,10 @@ hb_position_t
hb_ot_math_get_constant (hb_font_t *font, hb_ot_math_get_constant (hb_font_t *font,
hb_ot_math_constant_t constant) hb_ot_math_constant_t constant)
{ {
#ifdef HB_NO_MATH
return 0;
#endif
return font->face->table.MATH->get_constant(constant, font); return font->face->table.MATH->get_constant(constant, font);
} }
@ -96,6 +104,10 @@ hb_position_t
hb_ot_math_get_glyph_italics_correction (hb_font_t *font, hb_ot_math_get_glyph_italics_correction (hb_font_t *font,
hb_codepoint_t glyph) hb_codepoint_t glyph)
{ {
#ifdef HB_NO_MATH
return 0;
#endif
return font->face->table.MATH->get_glyph_info().get_italics_correction (glyph, font); return font->face->table.MATH->get_glyph_info().get_italics_correction (glyph, font);
} }
@ -112,6 +124,10 @@ hb_position_t
hb_ot_math_get_glyph_top_accent_attachment (hb_font_t *font, hb_ot_math_get_glyph_top_accent_attachment (hb_font_t *font,
hb_codepoint_t glyph) hb_codepoint_t glyph)
{ {
#ifdef HB_NO_MATH
return 0;
#endif
return font->face->table.MATH->get_glyph_info().get_top_accent_attachment (glyph, font); return font->face->table.MATH->get_glyph_info().get_top_accent_attachment (glyph, font);
} }
@ -128,6 +144,10 @@ hb_bool_t
hb_ot_math_is_glyph_extended_shape (hb_face_t *face, hb_ot_math_is_glyph_extended_shape (hb_face_t *face,
hb_codepoint_t glyph) hb_codepoint_t glyph)
{ {
#ifdef HB_NO_MATH
return false;
#endif
return face->table.MATH->get_glyph_info().is_extended_shape (glyph); return face->table.MATH->get_glyph_info().is_extended_shape (glyph);
} }
@ -154,6 +174,10 @@ hb_ot_math_get_glyph_kerning (hb_font_t *font,
hb_ot_math_kern_t kern, hb_ot_math_kern_t kern,
hb_position_t correction_height) hb_position_t correction_height)
{ {
#ifdef HB_NO_MATH
return 0;
#endif
return font->face->table.MATH->get_glyph_info().get_kerning (glyph, return font->face->table.MATH->get_glyph_info().get_kerning (glyph,
kern, kern,
correction_height, correction_height,
@ -187,6 +211,12 @@ hb_ot_math_get_glyph_variants (hb_font_t *font,
unsigned int *variants_count, /* IN/OUT */ unsigned int *variants_count, /* IN/OUT */
hb_ot_math_glyph_variant_t *variants /* OUT */) hb_ot_math_glyph_variant_t *variants /* OUT */)
{ {
#ifdef HB_NO_MATH
if (variants_count)
*variants_count = 0;
return 0;
#endif
return font->face->table.MATH->get_variants().get_glyph_variants (glyph, direction, font, return font->face->table.MATH->get_variants().get_glyph_variants (glyph, direction, font,
start_offset, start_offset,
variants_count, variants_count,
@ -211,6 +241,10 @@ hb_position_t
hb_ot_math_get_min_connector_overlap (hb_font_t *font, hb_ot_math_get_min_connector_overlap (hb_font_t *font,
hb_direction_t direction) hb_direction_t direction)
{ {
#ifdef HB_NO_MATH
return 0;
#endif
return font->face->table.MATH->get_variants().get_min_connector_overlap (direction, font); return font->face->table.MATH->get_variants().get_min_connector_overlap (direction, font);
} }
@ -243,6 +277,12 @@ hb_ot_math_get_glyph_assembly (hb_font_t *font,
hb_ot_math_glyph_part_t *parts, /* OUT */ hb_ot_math_glyph_part_t *parts, /* OUT */
hb_position_t *italics_correction /* OUT */) hb_position_t *italics_correction /* OUT */)
{ {
#ifdef HB_NO_MATH
if (parts_count)
*parts_count = 0;
return 0;
#endif
return font->face->table.MATH->get_variants().get_glyph_parts (glyph, return font->face->table.MATH->get_variants().get_glyph_parts (glyph,
direction, direction,
font, font,