Qunxin Liu
2d001a0adc
[subset] OTS doesn't allow ligature attachment offset to be 0
2023-11-08 14:10:06 -07:00
Garret Rieger
9701b0024e
[subset] Always place CFF1/2 char strings at the end of the packed table.
...
Makes the behaviour from HB_SUBSET_FLAGS_IFTB_REQUIREMENTS the default.
2023-11-06 16:49:09 -07:00
Garret Rieger
c6884377ec
[subset] Add HB_SUBSET_FLAGS_IFTB_REQUIREMENTS flag.
...
When enabled the output subset conforms to the requirements for a base font to be patched by IFTB patches. IFTB is a proposed incremental font transfer patch. This new flag is set as experimental. Currently, setting this flag causes the output subset to also use long offsets for outline data in loca/glyf, gvar, CFF, and CFF2.
This change is a version of 3ae2fe2084
rebased onto head w/ tests added.
2023-11-06 16:49:09 -07:00
Qunxin Liu
d550e16acc
[instancer] Recalc avgcharwidth after instancing
2023-11-06 13:12:04 -07:00
Qunxin Liu
6baf791e6f
[instancer] add tests
2023-11-03 11:06:07 -07:00
Qunxin Liu
31b5b2b1d7
[instancer] add tests for valueformat
2023-11-03 10:27:33 -07:00
Qunxin Liu
413af0a9b2
[instancer] When partial instancing, subset LigCaretList after VarStore instantiation
2023-11-03 10:24:56 -06:00
Qunxin Liu
f6f35f73bc
[instancer] add tests for feature variations partial instancing
2023-10-30 12:31:49 -06:00
Qunxin Liu
e595fe75cc
fix bots
...
partial instancing tests are wrapped by experimenal_api, do not enable
them in Makefile
2023-10-19 09:38:38 -07:00
Qunxin Liu
ce46698929
[subset] update tests
...
to reflect changes in GDEF.MarkGlyphSetsDef and Lookup.MarkFilteringSet
2023-10-18 15:49:57 -07:00
Qunxin Liu
bde6fb83ea
add missing file for test empty_region_vardata
2023-10-18 10:21:02 -07:00
Qunxin Liu
57dac23d79
[instancer] add tests
...
Also update tests to gei rid of no-tables-with-item-variations profile
2023-10-18 08:07:26 -06:00
Garret Rieger
bbd53fcfa4
Remove glyph_map test that uses retain gids.
...
We no longer allow the use of glyph map + retain gids (see: https://github.com/harfbuzz/harfbuzz/blob/main/src/hb-subset-plan.cc#L817 ). Also add the test to the meson file so it will be run by default.
2023-10-10 17:59:05 -06:00
Qunxin Liu
2415d5f239
[instancer] update tests to include GDEF/GPOS tables
2023-09-27 13:33:09 -07:00
Qunxin Liu
ef4ff1d6a4
[instancer] make varstore items sorting method match fonttool's
...
Also update expected tests
2023-09-20 11:45:00 -07:00
Qunxin Liu
2d2818c096
[instancer] update expected tests to include HVAR/VVAR tables
2023-09-20 10:30:47 -07:00
Qunxin Liu
6e49128afd
[instancer] always check and update default wght/width/slnt if necessary
...
Sometimes default values in original file are incorrect, and if default value for an axis is not changed, then these values won't be updated
2023-09-18 12:20:36 -07:00
Qunxin Liu
7b5daff5eb
[instancer] add tests for mvar partial instancing
2023-09-18 12:20:36 -07:00
Qunxin Liu
dd8d35766b
[instancer] enable partial instancing tests when experimental api is on
2023-08-22 12:54:50 -07:00
Qunxin Liu
bea26446d2
[instancer] reference all points for gvar
...
If a point is not referenced and delta is not inferred, set delta to 0
2023-08-15 14:20:54 -07:00
Qunxin Liu
0aa5dafefd
fix bots.
...
-Also disable partial instancing tests for now, cause the command option
is wrapped by experimental_api
2023-08-08 08:44:31 -07:00
Qunxin Liu
77b158c72d
[instancer] add tests for gvar partial instancing
2023-08-07 16:02:02 -07:00
Garret Rieger
77a8155425
[subset] Add some basic tests for a provided glyph map.
2023-05-04 23:01:56 +00:00
Behdad Esfahbod
1d31da91ce
Merge pull request #4205 from harfbuzz/gvar-optimize
...
Gvar optimize
2023-04-25 15:34:06 -06:00
Garret Rieger
e41f317199
[subset] Update expectation files for full_instance tests.
2023-04-25 20:54:27 +00:00
Garret Rieger
2175f5d050
[subset] Fix inefficient ItemVariationStore subsetting w/ retain_gids.
...
ItemVariationStore is relying on the assumption that the inner_map is populated for all output glyphs, this is not true for subsetting operations with retain gids enabled. Fixes fuzzer timeout: https://oss-fuzz.com/testcase-detail/4575222591520768 .
2023-04-24 18:11:48 -06:00
Garret Rieger
3db6baa20e
[subset] add test for lig glyph fix.
2023-04-17 14:35:27 -06:00
Garret Rieger
14b9d8d534
[subset] add --no-layout-closure flag.
...
Disables layout glyph closure. Fixes #4192 .
2023-04-14 15:12:41 -06:00
Qunxin Liu
96ed20725c
[instancer] update bound metrics for CFF2 instancing
2023-04-05 17:27:11 -06:00
Qunxin Liu
c1acfe9966
[instancer] bug fix in TupleVariationData get_size ()
...
We need to iterate TupleVariationHeader when calculating the total size
2023-03-27 15:37:06 -06:00
Qunxin Liu
ab87d7d225
[instance] add tests for colrv1 full instancing
2023-03-21 11:51:58 -06:00
Garret Rieger
a84cae424d
[subset] Don't add invalid gids (-1) to the glyphset when loading glyph map from the accelerator.
2023-03-15 12:10:18 -06:00
Qunxin Liu
204e155acb
[subset] Add tests for collecting name_ids from STAT and FeatureParams
2023-03-14 10:25:31 -07:00
Qunxin Liu
a975ec4842
[instancer] apply cvar deltas
2023-02-27 17:05:23 -07:00
Qunxin Liu
605aed0544
[instancer] bug fix in post table applying mvar deltas
2023-02-24 13:19:37 -07:00
Garret Rieger
ddd0f7f40b
[subset] Add a test for CFF2 instancing.
...
Adds option to disable the fonttools comparison check in the test. This is needed since CFF2 instancing is not yet supported in fonttools.
2023-02-22 14:12:55 -07:00
Qunxin Liu
af1e605be2
[instancer] bug fix
...
It's possible that length of all_points equals to 4 for non-empty
glyphs: a composite glyph which contains only one child glyph that is
empty.
2023-02-10 12:51:27 -07:00
Qunxin Liu
615595689c
[subset/COLR] add tests for copying varStore
2023-01-27 12:21:52 -07:00
Qunxin Liu
5e86870378
[instancer] compute head/maxp values using only non-empty glyphs
2023-01-25 14:53:19 -07:00
Qunxin Liu
73e6f6cc88
[instancer] enable the missing test
2023-01-24 17:28:51 -07:00
Qunxin Liu
27f72f0deb
[instancer] avoid double free for compiled glyph bytes
...
also increase the HB_GLYF_MAX_POINTS limit to 20000 cause the test file has a
.notdef glyph which is a composite glyph and has 10176 points after
get_points() call
2023-01-24 17:28:51 -07:00
Qunxin Liu
89d332559e
[instancer] add tests
2023-01-20 14:50:03 -08:00
Garret Rieger
ea1ee0d4b6
[instance] drop and don't collect lookups from feature variations when fully instancing.
...
This previously incorrectly collected lookups that could be reached via feature variations that are dropped and not activated by the current instance position.
2023-01-14 18:04:24 -07:00
Garret Rieger
c324d99952
[instancing] Add tests for MVAR instancing.
2023-01-12 18:15:07 +00:00
Garret Rieger
9fbe52b88d
[subset] enable instancing tests by default.
2022-12-12 20:24:24 +00:00
Garret Rieger
eda02c2ebd
[subset] Move hb_subset_preprocess to be non-experimental.
2022-12-08 16:32:24 -07:00
Garret Rieger
64e8707eca
[subset] don't use hb repacker when generating test files from fonttools.
2022-11-24 18:24:50 +00:00
Garret Rieger
ff3cac0ccd
[subset] Fix unecessary trailing 0 bytes left by ContextFormat2 pruning.
...
Uneeded rules where beind removed from the count by the bytes for them was being left in the font.
2022-11-23 23:50:49 +00:00
Garret Rieger
2822b589bc
[subset] Include instancing tests in distribution.
...
Automatically enable them when the experimental api is enabled.
2022-11-03 14:24:15 -06:00
Qunxin Liu
8a5524833c
[instance] update OS2/.usWeightClass and .usWidthClass when
...
no-prune-unicode-ranges option is enabled
2022-10-27 11:59:31 -06:00