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
Cosimo Lupo
0c30d96906
Update instancer tests to use triples as axis limits
2022-10-21 18:01:01 +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
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
b8333d9ade
instancer_test: revert expected result to before, to match eab9aa5
2022-07-06 16:50:22 +01:00
Nikolaus Waxweiler
16d899a2be
Apply RIBBI bits to all kinds of fonts
2022-07-05 15:45:44 +01:00
Behdad Esfahbod
e01f643a8e
[varLib.varStore] Support NO_VARIATION_INDEX in optimizer & instancer
...
Fixes https://github.com/fonttools/fonttools/issues/2211
2022-06-23 12:01:20 -06:00
Cosimo Lupo
7ee2c9d891
testTools: factor our method to strip variable items from ttx dumps
...
it was scattered here and there, so define it once and reuse everywhere needed
2022-04-05 18:34:30 +01:00
Khaled Hosny
47457b14d6
[varLib] Fix instantiating some SinglePos subtables ( #2555 )
2022-03-22 08:34:18 +00:00
Khaled Hosny
232b2ccbc4
Move the rest of py23 module to textTools
...
Change all imports to use textTools module, except the test_py23.py test
which is kept until we decide to remove the module (if ever).
2021-08-20 01:29:45 +02:00
Khaled Hosny
000bf81700
Default to "\n" for newlinestr instead of None
...
If newlinestr is None, os.linesep is used, bu it is the third millennium
and we don’t need or want different line endings per-platform.
2021-07-30 04:12:33 +02:00
Cosimo Lupo
dafce3ff46
instancer_test: add test with PairPos ValueRecord with XAdvDevice but no XAdvance
...
this currently raises AttributeError in MutatorMerger.merge for ValueRecord table, because the latter assumes that whenever one of the Device tables are present the respective non-device values are also present, but they may be omitted (and it should default to 0 when missing)
2021-05-25 12:30:35 +01:00
Just van Rossum
5fc65d7168
Misc py23 cleanups ( #2243 )
...
* Replaced all from ...py23 import * with explicit name imports, or removed completely when possible.
* Replaced tounicode() with tostr()
* Changed all BytesIO ans StringIO imports to from io import ..., replaced all UnicodeIO with StringIO.
* Replaced all unichr() with chr()
* Misc minor tweaks and fixes
2021-03-29 11:45:58 +02:00
Behdad Esfahbod
6b2b2f4949
[Tests] Fix most test expectations for ClassDef[12] .Format removal
2021-03-23 11:43:46 -07:00
Behdad Esfahbod
de81aae164
[Tests] Fix more tests expectations for Coverage/ClassDef .Format change
2021-03-23 11:42:54 -07:00
Behdad Esfahbod
975f85ed72
[Tests] Fix most tests expectations for Coverage/ClassDef .Format change
2021-03-23 11:42:38 -07:00
Marc Foley
52fec53d20
Drop nameID 25 if instantiating a static font
2021-02-26 10:32:38 +00:00
Marc Foley
a7913ef50e
Add test for Regular fallback
2021-02-26 10:32:38 +00:00
Cosimo Lupo
2be13d50ac
make instancer into a package dir and move all names-related funcs to submodule
...
move instancer tests to Tests/varLib/instancer directory
create instancer/__main__.py to make package executable
2021-02-26 10:31:30 +00:00