diff options
author | Akira Kakuto <kakuto@fuk.kindai.ac.jp> | 2019-05-24 23:03:55 +0000 |
---|---|---|
committer | Akira Kakuto <kakuto@fuk.kindai.ac.jp> | 2019-05-24 23:03:55 +0000 |
commit | 77ba432cf7f046d3f5c29d738279e898bdd02a5c (patch) | |
tree | 92d5078972de2b02a7af1d7ef72cf99a16a441b4 /Build/source/libs/harfbuzz/harfbuzz-src/src/hb-subset-input.cc | |
parent | 676d0c444418989d8c0c8d1c60ed3d52f9290c80 (diff) |
harfbuzz-2.5.0
git-svn-id: svn://tug.org/texlive/trunk@51218 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/libs/harfbuzz/harfbuzz-src/src/hb-subset-input.cc')
-rw-r--r-- | Build/source/libs/harfbuzz/harfbuzz-src/src/hb-subset-input.cc | 65 |
1 files changed, 50 insertions, 15 deletions
diff --git a/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-subset-input.cc b/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-subset-input.cc index 693c9c21ee9..34f1cb86394 100644 --- a/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-subset-input.cc +++ b/Build/source/libs/harfbuzz/harfbuzz-src/src/hb-subset-input.cc @@ -44,11 +44,45 @@ hb_subset_input_create_or_fail () input->unicodes = hb_set_create (); input->glyphs = hb_set_create (); + input->name_ids = hb_set_create (); + hb_set_add_range (input->name_ids, 0, 6); + input->drop_tables = hb_set_create (); input->drop_hints = false; - input->drop_layout = true; input->desubroutinize = false; input->retain_gids = false; + hb_tag_t default_drop_tables[] = { + // Layout disabled by default + HB_TAG ('G', 'S', 'U', 'B'), + HB_TAG ('G', 'P', 'O', 'S'), + HB_TAG ('G', 'D', 'E', 'F'), + HB_TAG ('m', 'o', 'r', 'x'), + HB_TAG ('m', 'o', 'r', 't'), + HB_TAG ('k', 'e', 'r', 'x'), + HB_TAG ('k', 'e', 'r', 'n'), + + // Copied from fontTools: + HB_TAG ('B', 'A', 'S', 'E'), + HB_TAG ('J', 'S', 'T', 'F'), + HB_TAG ('D', 'S', 'I', 'G'), + HB_TAG ('E', 'B', 'D', 'T'), + HB_TAG ('E', 'B', 'L', 'C'), + HB_TAG ('E', 'B', 'S', 'C'), + HB_TAG ('S', 'V', 'G', ' '), + HB_TAG ('P', 'C', 'L', 'T'), + HB_TAG ('L', 'T', 'S', 'H'), + // Graphite tables + HB_TAG ('F', 'e', 'a', 't'), + HB_TAG ('G', 'l', 'a', 't'), + HB_TAG ('G', 'l', 'o', 'c'), + HB_TAG ('S', 'i', 'l', 'f'), + HB_TAG ('S', 'i', 'l', 'l'), + // Colour + HB_TAG ('s', 'b', 'i', 'x') + }; + + input->drop_tables->add_array (default_drop_tables, ARRAY_LENGTH (default_drop_tables)); + return input; } @@ -81,6 +115,8 @@ hb_subset_input_destroy (hb_subset_input_t *subset_input) hb_set_destroy (subset_input->unicodes); hb_set_destroy (subset_input->glyphs); + hb_set_destroy (subset_input->name_ids); + hb_set_destroy (subset_input->drop_tables); free (subset_input); } @@ -109,30 +145,29 @@ hb_subset_input_glyph_set (hb_subset_input_t *subset_input) return subset_input->glyphs; } -HB_EXTERN void -hb_subset_input_set_drop_hints (hb_subset_input_t *subset_input, - hb_bool_t drop_hints) +HB_EXTERN hb_set_t * +hb_subset_input_nameid_set (hb_subset_input_t *subset_input) { - subset_input->drop_hints = drop_hints; + return subset_input->name_ids; } -HB_EXTERN hb_bool_t -hb_subset_input_get_drop_hints (hb_subset_input_t *subset_input) +HB_EXTERN hb_set_t * +hb_subset_input_drop_tables_set (hb_subset_input_t *subset_input) { - return subset_input->drop_hints; + return subset_input->drop_tables; } HB_EXTERN void -hb_subset_input_set_drop_layout (hb_subset_input_t *subset_input, - hb_bool_t drop_layout) +hb_subset_input_set_drop_hints (hb_subset_input_t *subset_input, + hb_bool_t drop_hints) { - subset_input->drop_layout = drop_layout; + subset_input->drop_hints = drop_hints; } HB_EXTERN hb_bool_t -hb_subset_input_get_drop_layout (hb_subset_input_t *subset_input) +hb_subset_input_get_drop_hints (hb_subset_input_t *subset_input) { - return subset_input->drop_layout; + return subset_input->drop_hints; } HB_EXTERN void @@ -152,7 +187,7 @@ hb_subset_input_get_desubroutinize (hb_subset_input_t *subset_input) * hb_subset_input_set_retain_gids: * @subset_input: a subset_input. * @retain_gids: If true the subsetter will not renumber glyph ids. - * Since: REPLACEME + * Since: 2.4.0 **/ HB_EXTERN void hb_subset_input_set_retain_gids (hb_subset_input_t *subset_input, @@ -164,7 +199,7 @@ hb_subset_input_set_retain_gids (hb_subset_input_t *subset_input, /** * hb_subset_input_get_retain_gids: * Returns: value of retain_gids. - * Since: REPLACEME + * Since: 2.4.0 **/ HB_EXTERN hb_bool_t hb_subset_input_get_retain_gids (hb_subset_input_t *subset_input) |