Just van Rossum
b1441c583b
Add test for non-VF exception
2022-08-30 09:26:16 +02:00
Just van Rossum
da539e5c4d
use fixture for test font
2022-08-30 08:56:24 +02:00
Just van Rossum
86e4f2bf94
test file for font.normalizeLocation()
2022-08-30 08:49:36 +02:00
Just van Rossum
d2f0611fea
test font.normalizeLocation()
2022-08-30 08:49:36 +02:00
Just van Rossum
b818e1494f
Refactor ttGlyphSet.py
...
- only differentiate between glyf and CFF/CFF2 implementations, not var vs non-var
- use collections.abc.Mapping to get a more consistent dict-like object with less code
- prefer HVAR metrics over gvar metrics
- move some responsibilities from the _TTGlyphSet objects to the _TTGlyph objects
- adjust some tests to the changes
2022-08-30 08:49:36 +02:00
Behdad Esfahbod
b3d6868516
[ttGlyphSet_test] Test CFF2 variations
2022-08-26 21:42:14 -06:00
Cosimo Lupo
0adc164355
Merge pull request #2762 from fonttools/var-glyph-set-inheritance
...
[ttGlyphSet] Inherit ttVarGlyphSet from ttGlyphSet
2022-08-22 17:24:05 +01:00
Cosimo Lupo
320cbf7c47
[ttGlyphSet] Inherit ttVarGlyphSet from ttGlyphSet
...
Fixes #2759
2022-08-22 17:07:31 +01:00
Behdad Esfahbod
6287fb2917
[scaleUpem_test] Test otf scaling doesn't crash
...
The ttx output for this is over 700kb so didn't add expected.
2022-08-19 11:07:25 -06:00
Behdad Esfahbod
d275207dbc
Add scaleUpem_test
2022-08-18 06:40:39 -06:00
Behdad Esfahbod
376caff386
Merge pull request #2718 from fonttools/visitor
...
Add fontTools.misc.visitor, fontTools.ttLib.ttVisitor, ttLib.scaleUpem, Snippets/print-json.py
2022-08-18 06:12:19 -06:00
Behdad Esfahbod
9e1f447934
[ttVisitor_test] More meaningful testing
2022-08-17 14:37:45 -06:00
Behdad Esfahbod
596c571c1c
Add ttVisitor test
2022-08-16 13:08:03 -06:00
Behdad Esfahbod
41e6f60011
Merge pull request #2738 from fonttools/glyphset
...
TTVarGlyphset
2022-08-15 11:07:41 -06:00
Behdad Esfahbod
dc99ab6b3f
[ttGlyphSet] Address review comments
2022-08-15 11:06:51 -06:00
Cosimo Lupo
1dffbae240
support proposed PaintSweepGradient's angles with +1.0 (180°) bias
...
In the upcoming draft of COLR spec, PaintSweepGradient's startAngle/endAngle are encoded with a +1.0 bias to allow for representation of a full +360° positive angle. Normal F2Dot14-fraction-of-half-circle angles can only represent angles between -360 <= angle < +360
This is a breaking change and will need to be coordinated with rendering implementations (at least FreeType/Skia).
2022-08-15 12:52:28 +02:00
Behdad Esfahbod
26ae03f58f
[ttGlyphSet] Add tests
2022-08-14 12:52:49 -06:00
Cosimo Lupo
676a66fad3
otTables: make DeltaSetIndexMap TTX dump less verbose by omitting no-op entries
...
though we still emit the empty <Map index=.../> elements; they help identify chunks of delta-set indices, and define the length of the array upon loading from XML
2022-06-21 17:27:11 +01:00
Cosimo Lupo
119b7732cc
SVG: strip timestamp to make compressed gzip reproducible
...
we tell GzipFile to write the MTIME field to zero so that the compressed output is reproducible and doesn't change depending on when the data is compressed.
2022-06-09 16:29:29 +01:00
Cosimo Lupo
8673073a87
S_V_G__test: test compiling/decompiling compressed doc
2022-06-09 15:27:57 +01:00
Cosimo Lupo
6e0cebc487
ttFont_test: add test for ensureDecompiled
2022-03-17 17:13:50 +00:00
Cosimo Lupo
83ee6bcdab
ttCollection: don't close file inside init if lazy=True
...
Fixes 'seek of closed file' error #2549
2022-03-17 12:30:40 +00:00
Cosimo Lupo
e1b3bfc807
ttCollection_test: check loading TTCollection with lazy attribute
...
currently lazy=True fails with 'ValueError: seek of closed file'
2022-03-17 11:43:11 +00:00
Cosimo Lupo
e726217ae0
ttFont_test: add test for setGlyphOrder updating glyf.glyphOrder
2022-03-10 17:43:02 +00:00
Olli Meier
61ad06fc3a
rename unittest with better name + get rid of redundant code
2022-02-11 17:51:52 +01:00
Olli Meier
1d51bc2b8e
Changes as requested by Just.
2022-02-11 15:55:25 +01:00
Olli Meier
68fa3bbd47
Cleaning code based on feedback from Just
2022-02-10 22:13:58 +01:00
Olli Meier
384415f573
Update Tests/ttLib/tables/_n_a_m_e_test.py
...
Co-authored-by: Just van Rossum <justvanrossum@gmail.com>
2022-02-10 21:59:39 +01:00
Olli Meier
4a0b559caf
Update Tests/ttLib/tables/_n_a_m_e_test.py
...
Co-authored-by: Just van Rossum <justvanrossum@gmail.com>
2022-02-10 21:59:29 +01:00
Olli Meier
e968e8fd7f
Based on the discussion with Just and anthrotype: Undo the changes in the name table and extend unittests. If there are inconsistencies in the name table, it's ok to create new name IDs, even if this might not be the most efficient way of creating the name table.
2022-02-10 21:24:51 +01:00
Olli Meier
51eda21b0a
Adding more unittests, based on feedback.
2022-02-10 17:11:26 +01:00
Olli Meier
1649973800
Make use of 'Best' in names
2022-02-09 17:44:28 +01:00
Olli Meier
1a16b24cd5
Fix unittests
2022-02-09 17:17:11 +01:00
Olli Meier
c50f38ed0e
extend name table with getFamilyName, getSubFamilyName and getNiceFullName + unittests
2022-02-09 17:06:02 +01:00
Cosimo Lupo
8d6a7617a2
minor: fix 4-space indentation from PR 2441
2021-11-08 12:27:26 +00:00
Rod S
7dd3488732
Traverse when there is no layer list
2021-11-06 14:26:27 -07:00
Cosimo Lupo
e3bc036c7e
Add tests for SVG table
2021-10-13 14:53:00 +02:00
Khaled Hosny
89fe3bd3c5
[Tests] Add test for virtual GIDs
2021-08-21 00:16:45 +02: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
Cosimo Lupo
e161bbc980
Merge pull request #2384 from fonttools/newline-2021
...
Default to "\n" for newlinestr instead of None
2021-08-03 09:21:10 +01:00
Cosimo Lupo
094a40ca2e
Revert "Deprecate and ignore newlinestr"
...
This reverts commit 5af178ac8eb2da79b965be5c6cee693dad602c65.
2021-08-03 10:00:13 +02:00
Cosimo Lupo
58ac5a9fd8
have ClipList and ClipBox format start at 1, not 0
...
b7e81fcbd6
2021-08-02 19:34:30 +02:00
Khaled Hosny
5af178ac8e
Deprecate and ignore newlinestr
2021-07-30 04:31:19 +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
800bf85b2f
add ClipList.Format so we can bump when we finally get >16bit GIDs
...
https://github.com/googlefonts/colr-gradients-spec/issues/346
2021-07-29 15:35:08 +02:00
Cosimo Lupo
bee2c85f61
[colrv1] otData: define ClipList, ClipBox, etc.
2021-07-28 18:04:48 +02:00
Cosimo Lupo
2f1fbd6374
Merge pull request #2372 from fonttools/colrv1-var-idx-map
...
[COLRv1] add DeltaSetIndexMap, remove ColorIndex
2021-07-26 12:06:15 +01:00
Just van Rossum
b01ea60e9e
[ttLib] when importing XML, only set sfntVersion if the font has no reader and is empty ( #2376 )
...
* Only set sfntVersion if the font has no reader and is empty
* test that sfntVersion is only set if the TTFont instance is new/empty
2021-07-24 11:12:37 +02:00
Cosimo Lupo
b74ffb4cda
test roundtripping variable COLRv1 with a working VarIndexMap and VarStore
2021-07-23 17:27:57 +01:00
Cosimo Lupo
29a2ebf813
omit default VarIndexBase
...
4294967295 (0xFFFFFFFF in decimal form) is not very memorable.
Still, using hex notation for all VarIndexBases would make the non-default values less readable (when interpreted as an index into the DeltaSetIndexMap array, decimal makes more sense).
Since 0xFFFFFFFF means 'no variation data', it makes sense to omit it from the ttx dump and write an empty <VarIndexBase/> element with no value.
We also allow to build Var tables without needing to pass "VarIndexBase": 0xFFFFFFFF in the source dict.
2021-07-23 17:27:57 +01:00