407 Commits

Author SHA1 Message Date
Nikolaus Waxweiler
d584daa8fd Blacken code 2022-12-13 11:26:36 +00:00
Cosimo Lupo
dbc3b48879
[instancer] udpdate OS/2 class and post.italicAngle when default moved (L4)
Previously we were only updating these when pinning wght/wdth/slnt axes.
Now we do whenever any of these axes defaults are changed, whether or not the axes are pinned or kept

Fixes https://github.com/fonttools/fonttools/issues/2885
2022-11-09 16:33:23 +00:00
Behdad Esfahbod
672c4bacdd [instancer.featureVars] Address review comments 2022-11-04 11:55:48 -06:00
Behdad Esfahbod
ea2ae7df86 [instancer.featureVars] Add one more test 2022-11-03 17:15:40 -06:00
Behdad Esfahbod
392706949c [instancer.featureVars] Fix deficiency in L4 instancing
See discussion on the issue.  I think I got this right.

Fixes https://github.com/fonttools/fonttools/issues/2737
2022-11-03 14:55:01 -06:00
Behdad Esfahbod
6e156a7f13 [instancer] Split featureVars code into own module
Towards fixing https://github.com/fonttools/fonttools/issues/2737
2022-11-03 14:21:27 -06:00
Behdad Esfahbod
0f48f0a5ea [varLib/featureVars] Insert rvrn lookups at beginning
Fixes https://github.com/fonttools/fonttools/issues/2140
Fixes https://github.com/googlefonts/fontmake/issues/950
2022-10-28 15:45:40 -06:00
Cosimo Lupo
0c30d96906
Update instancer tests to use triples as axis limits 2022-10-21 18:01:01 +01:00
Cosimo Lupo
40b2473a48
Merge pull request #2728 from fonttools/instancer-l4
[instancer] Towards L4 instancing
2022-10-21 16:39:09 +01:00
Jany Belluz
12d13f0b26 [designspaceLib] Fix recursion error with linkedUserValue in both directions 2022-10-18 17:32:14 +01:00
Cosimo Lupo
1dea06f66f
add tests for normalizeLocation(extrapolate=True)
These fails at the moment with various division-by-zero errors, fix in follow-up commit.
2022-10-13 18:35:45 +01:00
Behdad Esfahbod
e554ec1dc6 [instancer] Small fix for featureVariations instancing 2022-10-13 10:35:02 -06:00
Behdad Esfahbod
1ff1a537e8 [instancer] Implement L4 featureVariations 2022-10-13 10:35:02 -06:00
Behdad Esfahbod
3f7b250803 [instancer] Add test for FeatureVariations limiting range 2022-10-13 10:35:02 -06:00
Behdad Esfahbod
5cbfe2a956 [instancer] Add test for parseLimits with default value 2022-10-13 10:35:02 -06:00
Behdad Esfahbod
aabced171e [instancer.solver] Fix case3 with gain
Ouch!
2022-10-13 10:35:02 -06:00
Behdad Esfahbod
7ee8414cab [instancer.solver] Better handling of peak==axisDef 2022-10-13 10:35:02 -06:00
Behdad Esfahbod
e08553011a [instancer.solver] Handle when peak falls on new axis default 2022-10-13 10:35:02 -06:00
Behdad Esfahbod
e2a875b26c [instancer] Implement featureVariations L4 instancing
I *think* this is all.
2022-10-13 10:35:02 -06:00
Behdad Esfahbod
d3e0a39362 [instancer] Fix more tests 2022-10-13 10:35:02 -06:00
Behdad Esfahbod
11aa044515 [instancer] Fix another couple of tests 2022-10-13 10:35:02 -06:00
Behdad Esfahbod
08c896f534 [instancer.solver] Cleanup tests of pytest.approx 2022-10-13 10:35:02 -06:00
Behdad Esfahbod
eddc53c267 [instancer.solver] More test 2022-10-13 10:35:02 -06:00
Behdad Esfahbod
743033d755 [instancer.solver] Use pytest.approx() in tests 2022-10-13 10:35:02 -06:00
Behdad Esfahbod
e7d4416c27 [instancer.solver] Add more tests 2022-10-13 10:35:02 -06:00
Behdad Esfahbod
52c791ad1d [instancer.solver] Add a special case 2022-10-13 10:35:02 -06:00
Behdad Esfahbod
b6a3ef37e1 [instancer.solver] Second try at sending everything through WithGain 2022-10-13 10:35:02 -06:00
Behdad Esfahbod
c3fa1b59ac [instancer.solver] Return None as gain tent 2022-10-13 10:35:02 -06:00
Behdad Esfahbod
a87ba55a90 [instancer.solver] More test 2022-10-13 10:35:02 -06:00
Behdad Esfahbod
340fb5866c [instancer.solver] More test 2022-10-13 10:35:02 -06:00
Behdad Esfahbod
dd5452527e [instancer.solver] More fixes 2022-10-13 10:35:02 -06:00
Behdad Esfahbod
264ac96288 [instancer.solver] Improve test 2022-10-13 10:35:02 -06:00
Behdad Esfahbod
4637daf191 [instancer.solver] Fix 3a 2022-10-13 10:35:02 -06:00
Behdad Esfahbod
bb94fe0df2 [instancer.solver] One more test 2022-10-13 10:35:02 -06:00
Behdad Esfahbod
8a49fdc4ec [instancer.solver] Fix up algorithm again 2022-10-13 10:35:02 -06:00
Behdad Esfahbod
6210e7d331 [instancer.solver] Test more 2022-10-13 10:35:02 -06:00
Behdad Esfahbod
f2ebccd468 [instancer.solver] Add tests 2022-10-13 10:35:02 -06:00
Behdad Esfahbod
89dffd51ca [instancer] Make some tests pass
The rest of the test suite needs drastic updates :(.
2022-10-13 10:35:02 -06:00
Just van Rossum
8b8fbf390e formatting 2022-10-13 12:56:04 +02:00
Just van Rossum
2afac999ef Add test for VariationModel with extrapolate=True, and test a two-dimensional designspace for expected interpolation values 2022-10-13 12:50:21 +02:00
Just van Rossum
b073fb8f6f Demand axisRanges is given when extrapolate is True 2022-10-13 12:27:46 +02:00
Just van Rossum
16183b9436 Adjust extrapolate test cases, and added some for extrapolating below the minimum 2022-10-13 09:03:42 +02:00
Behdad Esfahbod
4742960f7f [varLib.cff] Don't round deltas
Fixes https://github.com/fonttools/fonttools/issues/2838
2022-10-04 14:12:01 -06:00
Cosimo Lupo
87bbb64061
[instancer] downgrade GSUB/GPOS version if there are no FeatureVariations after instancing
same as https://github.com/fonttools/fonttools/pull/2811 but moved the logic to _instantiateFeatureVariations directly, instead of after it
2022-09-13 10:44:26 +01:00
Cosimo Lupo
964df076e1 varLib_test: test we don't add no-op DeltaSetIndexMap when not needed
https://github.com/fonttools/fonttools/issues/2800
2022-09-05 17:15:51 +01:00
Behdad Esfahbod
f0f7b93f11 [varLib.models_test] Add test
from https://github.com/fonttools/fonttools/issues/2764
2022-08-23 10:32:57 -06:00
Cosimo Lupo
f5933c1cfa Revert "[varLib.models] Generate narrower tents"
This reverts commit 688939394b8cae3b2a0d5747e435cbd828a14531.
2022-08-23 17:20:57 +01:00
Behdad Esfahbod
bad70c68ef [varLib] Support extrapolation
Fixes https://github.com/fonttools/fonttools/issues/1252
2022-08-23 09:56:33 -06:00
Behdad Esfahbod
32904d43bb [models_test] Add tests from Just 2022-08-16 12:46:44 -06:00
Behdad Esfahbod
3325b47606
Merge pull request #2717 from fonttools/varLib-narrow
[varLib.models] Generate narrower tents
2022-08-16 12:46:22 -06:00