Garret Rieger
|
463ae07e99
|
[subset] In the preprocess subset call always use long loca.
Long loca is needed so that we can store the trimmed glyph bytes to allow us to safely skip trimming in the later subset.
|
2022-11-23 12:52:55 -07:00 |
Behdad Esfahbod
|
e0b06bd1b1
|
[subset] Cache has_seac in accelerator
Speeds up SourceHanSans-Regular/10000 benchmark by %25.
|
2022-11-21 16:30:34 -07:00 |
Behdad Esfahbod
|
f6076890c5
|
Hide all mentions of name_table_overrides behind EXPERIMENTAL_API
Fixes https://github.com/harfbuzz/harfbuzz/issues/3872
|
2022-11-14 16:06:39 -07:00 |
Behdad Esfahbod
|
ebc382a847
|
Revert "Avoid use values () in hb-hashmap if value_t has an overriden operator &"
This reverts commit b92e4cc009 .
|
2022-11-14 15:59:46 -07:00 |
Qunxin Liu
|
b92e4cc009
|
Avoid use values () in hb-hashmap if value_t has an overriden operator &
|
2022-11-14 13:19:55 -07:00 |
Behdad Esfahbod
|
630f09c8b6
|
Another hb_memcpy instead of strncpy use
|
2022-11-09 11:32:30 -07:00 |
Qunxin Liu
|
6314aa7da4
|
[subset] add an experimental API that can override name strings for specified name_id
|
2022-11-08 14:10:25 -07:00 |
Garret Rieger
|
515863e57c
|
[subset] Remove add accelerator flag, replace with new api method.
Adds hb_subset_preprocess() which preprocesses the face and attaches accelerator data.
|
2022-10-13 23:42:00 +00:00 |
Garret Rieger
|
01481db582
|
[subset] use accelerator unicode to gid map if available.
|
2022-10-13 21:12:22 +00:00 |
Qunxin Liu
|
f4813e3b7f
|
[instance] update collect_lookups/prune_features()/closure_features() with variations
Some features will be substituted with variations, so we do not collect
lookups from the original feature tables.
|
2022-09-29 12:14:43 -06:00 |
Qunxin Liu
|
64e2f2fc58
|
[instance] store active featurevariation record/condition idxes in the plan
|
2022-09-29 12:14:43 -06:00 |
Qunxin Liu
|
0a6c16a313
|
[instance] instantiate fvar table
Added an old->new axes_indices mapping in the subset plan
|
2022-09-29 12:14:43 -06:00 |
Khaled Hosny
|
d827a5ee40
|
[subset] Skip glyph closure for any dropped table
If COLR or MATH tables are being dropped, there is no point in closing
glyphs over them, just like it is done for GSUB.
|
2022-09-19 13:49:42 -06:00 |
Qunxin Liu
|
2b766e8ade
|
[subset] No need to collect_features twice
|
2022-09-06 13:41:51 -06:00 |
Qunxin Liu
|
a3e6dbbb43
|
[subset] skip the script if it's not included in the final subset
|
2022-09-06 11:29:34 -06:00 |
Qunxin Liu
|
7d7b492344
|
[instance] move _normalize_axes_location to the beginning of
subset_plan_create
pinned_at_default flag decides whether delta will be collected as well
when collecting layout variation indices
|
2022-09-01 09:44:28 -07:00 |
Qunxin Liu
|
b72995ff16
|
[instance] GDEF table: collect both varidxes and deltas
|
2022-09-01 09:33:02 -07:00 |
Qunxin Liu
|
e03043bd0b
|
[subset] don't let VariationStore subset() produce inner_maps
Make it a subset-planning object so VariationStore can subset to
specified inner_maps.
Also add a layout_variation_idx_delta_map in subset_plan
|
2022-09-01 09:32:41 -07:00 |
Qunxin Liu
|
ac0e22fa8e
|
[instance] update glyf/hmtx/vmtx tables
|
2022-08-22 09:29:37 -07:00 |
Garret Rieger
|
37d61afd5e
|
[subset] add destructor to subset plan.
This ensures that it's members get destructed before the plan itself is destructed, as hb_object_destroy calls the destructor for plan.
|
2022-08-18 16:09:36 -06:00 |
Qunxin Liu
|
0f80076937
|
[subset] Do not repeat COLR table closure
|
2022-07-20 19:17:34 -06:00 |
Behdad Esfahbod
|
e1b5f2f806
|
[object] Call destructor in hb_object_destroy()
|
2022-07-20 15:07:55 -06:00 |
Qunxin Liu
|
712bfa8872
|
build fix for HB_NO_VAR
|
2022-07-19 15:16:37 -06:00 |
Qunxin Liu
|
be8e8e8c80
|
[instance] prune name tables after axes pinned at fixed locations
Restricting axes to ranges is not supported yet.
|
2022-07-18 14:59:07 -06:00 |
Qunxin Liu
|
df55f840cb
|
[instance] instantiate STAT table when axes are pinned at fixed locations
restricting ranges is not supported yet.
|
2022-07-18 14:59:07 -06:00 |
Qunxin Liu
|
2a4773e43d
|
add option "--instance", store axes_location in subset_plan and drop all
variation tables when all axes are pinned at default
|
2022-07-18 14:59:07 -06:00 |
Behdad Esfahbod
|
09de94788b
|
[>64k:glyf] Hid composite glyphIndex
|
2022-07-12 13:42:52 -06:00 |
Behdad Esfahbod
|
04c5cd4085
|
[subset/layout] Move find_duplicate_features to subset from layout
|
2022-07-12 13:42:52 -06:00 |
Garret Rieger
|
29f149c16c
|
[subset] cache sanitized tables in subset plan to avoid sanitizing tables multiple times.
|
2022-07-08 13:42:38 -06:00 |
Behdad Esfahbod
|
386e1bbad8
|
Merge pull request #3699 from googlefonts/filter_scripts
[subset] Add support for --layout-scripts
|
2022-07-05 12:46:05 -06:00 |
Garret Rieger
|
30309ec8d3
|
[subset] add null element in _filter_tag_list.
|
2022-07-05 18:33:19 +00:00 |
Garret Rieger
|
216cf5946b
|
[subset] Allocate space for null entry in script/feature list.
|
2022-07-05 17:49:12 +00:00 |
Garret Rieger
|
dbfd2bf327
|
minor.
|
2022-06-30 23:04:35 +00:00 |
Garret Rieger
|
5fdae68481
|
[reorg] Move GSUB.hh up one level and change GSUB namespace to GSUB_impl.
|
2022-06-30 15:33:20 -06:00 |
Garret Rieger
|
70e32a662f
|
[subset] Add layout_scripts to subset input.
|
2022-06-30 21:00:48 +00:00 |
Garret Rieger
|
41d2c335bc
|
[subset] Apply script list filter when doing layout collection.
|
2022-06-30 20:24:42 +00:00 |
Garret Rieger
|
e5c8a2f4e1
|
[subset] Pass plan through to collect methods.
Allows to more easily access the filtering sets as they are added and enables propagating errors to the plan.
|
2022-06-30 20:14:29 +00:00 |
Garret Rieger
|
1bf051ef3b
|
[subset] refactor feature tag filtering so it can be used for scripts as well.
|
2022-06-30 20:03:33 +00:00 |
Khaled Hosny
|
98e90cc67c
|
[docs] Reduce warnings
Use markdown syntax for inline code blocks instead of %true, %false, and
%NULL.
|
2022-06-30 08:44:40 +02:00 |
Garret Rieger
|
3fbf2dece7
|
[reorg] Move OT::Layout::GPOS_impl::GPOS to OT::Layout::GPOS.
|
2022-06-28 18:47:50 -06:00 |
Garret Rieger
|
88ef3c5a9a
|
[reorg] Change OT::Layout::GPOS to OT::Layout::GPOS_impl.
|
2022-06-28 18:47:50 -06:00 |
Garret Rieger
|
74f45f7c2a
|
[reorg] Move remaining GPOS lookup types to new directory.
|
2022-06-28 18:47:50 -06:00 |
Behdad Esfahbod
|
db039d97ff
|
[glyf/Composite] Make glyphIndex public
|
2022-06-26 13:08:37 -06:00 |
Behdad Esfahbod
|
b4a0c30d98
|
[glyf] Remove hardcoded HB_MAX_COMPOSITE_OPERATIONS
|
2022-06-25 17:01:11 -06:00 |
Behdad Esfahbod
|
36373ee15c
|
[glyf] Move add_gid_and_children to subset-plan where it belongs
|
2022-06-25 16:55:26 -06:00 |
Behdad Esfahbod
|
100576b7b7
|
[glyf] Start splitting file
|
2022-06-25 14:38:43 -06:00 |
Behdad Esfahbod
|
f13a79548f
|
[subset] Convert another use of hashmap to unique_ptr
|
2022-06-03 01:17:20 -06:00 |
Garret Rieger
|
adae2f2272
|
[subset-perf] Cache a glyph map for gsub.
This allows us in some cases to avoid using glyph_set_gsub as a filter.
|
2022-05-18 18:25:36 -06:00 |
Behdad Esfahbod
|
ce60462173
|
[subset-plan] Pre-size maps in _create_old_gid_to_new_gid_map()
|
2022-05-18 12:34:27 -06:00 |
Behdad Esfahbod
|
8bfeea4828
|
[subset] Compute set max using previous()
|
2022-05-05 11:13:57 -06:00 |