Cosimo Lupo
580e3b3b50
otTables: forgot to actually import TTLibError ugh
2023-03-10 19:22:58 +00:00
Cosimo Lupo
3c9aa76893
Merge pull request #3027 from fonttools/colr-clipboxes
...
[COLRv1] Add method to automatically compute ClipBoxes, w/ optional quantization
2023-03-10 15:43:35 +00:00
Cosimo Lupo
c15e77cbc9
ot-spec says skewX angle should be counter-clockwise so we must negate
...
Transform.skew method assumes skewX angle goes clockwise.
verified using test_glyphs-glyf_colr_1.ttf test font from googlefonts/color-fonts repo.
Will add that to the tests.
2023-03-10 13:16:05 +00:00
Cosimo Lupo
55cc41a24e
[otTables] implement Paint.getTransform, Paint.computeClipBox & COLR.computeClipBoxes
...
This for now only works for static COLR table, not variable.
2023-03-10 13:16:04 +00:00
Cosimo Lupo
217742cc44
Merge pull request #3032 from fonttools/getGlyphID-KeyError
...
ttFont.getGlyphID should raise KeyError on missing glyphs
2023-03-10 12:11:33 +00:00
Cosimo Lupo
b137fd9616
ttFont: raise KeyError from getGlyphID instead of returning None
...
Fixes #3030
2023-03-10 11:38:55 +00:00
Guillaume Ayoub
b2c75bede4
Fix glyph compilation code
2023-03-10 11:34:16 +01:00
Cosimo Lupo
17f431b9c2
[otTables] switch to generic table traversal for Paint.traverse
2023-03-08 19:19:50 +00:00
Cosimo Lupo
7433c5dbb9
[otTraverse] allow to use custom callback to iterate over subtables
2023-03-08 19:13:48 +00:00
Behdad Esfahbod
501353f3df
[VarComposites] Flag rename
2023-03-06 13:10:09 -07:00
Cosimo Lupo
15b450e4a6
[ttx] support reading font/xml file from standard input as '-'
...
Fixes https://github.com/fonttools/fonttools/issues/3019
2023-03-03 14:13:06 +00:00
Nikolaus Waxweiler
54d6aaffb6
Guard against a ZeroDivisonError
...
The code was copied from ufo2ft.
2023-03-01 19:52:43 +00:00
Johannes Neumeier
29f980135a
Clean up and NotImplemented as proper return value
2023-02-27 09:31:13 +02:00
Johannes Neumeier
f52b3da721
Make NameRecord comparison not fail on encoding errors #3006
2023-02-24 15:58:53 +02:00
Behdad Esfahbod
9e40409094
[woff2] Support cubic curves as untransformed glyph table
2023-02-21 13:01:49 -07:00
Behdad Esfahbod
568dd0c5d4
[glyf] Support and test cubic spline
2023-02-21 13:01:49 -07:00
Behdad Esfahbod
2d98427c99
[fvar] Black
2023-02-21 13:01:49 -07:00
Behdad Esfahbod
0a0b152c33
[glyf] Support, and add test for, all-offcurve cubic contour
2023-02-21 13:01:49 -07:00
Behdad Esfahbod
77e96bdcd9
[glyf_test] Add cubic test
2023-02-21 13:01:49 -07:00
Behdad Esfahbod
82e0536beb
[glyf] Support cubic curves
...
https://github.com/harfbuzz/boring-expansion-spec/issues/41
2023-02-21 13:01:49 -07:00
Behdad Esfahbod
58bc16e58f
Merge pull request #2958 from fonttools/varc
...
VarComposites
2023-02-07 10:28:00 -07:00
Behdad Esfahbod
a2ff670c43
[VarComposite] Adjust for RESET_UNSPECIFIED_AXES semantic change
...
https://github.com/harfbuzz/boring-expansion-spec/issues/81
2023-02-06 12:06:14 -07:00
Behdad Esfahbod
54a19c6b70
[VarComposite] Magic-number hygiene
2023-02-06 11:22:24 -07:00
Behdad Esfahbod
4c201b9a42
[glyf/VarComposite] Implement padding trimming
2023-02-06 11:00:05 -07:00
Behdad Esfahbod
3af9bb5976
[VarComposite] Add message to exception
2023-02-06 10:35:59 -07:00
Thatchapon Unprasert
c1509a30c4
Ensure sbix's Glyph.referenceGlyphName is set
2023-02-06 21:31:13 +07:00
Behdad Esfahbod
07bc09fb0c
[VarComposites] Another fix after transform change
2023-02-04 11:48:42 -07:00
Behdad Esfahbod
51d7524a23
Revert "[ttGlyphSet] Must deep copy var components when instantiating"
...
This reverts commit fe6f5bd14386d0a1f546d079f1ec38e4d2414fbf.
Better fix.
2023-02-03 15:22:10 -07:00
Just van Rossum
fe6f5bd143
[ttGlyphSet] Must deep copy var components when instantiating
2023-02-03 23:13:41 +01:00
Behdad Esfahbod
fcc4f379fb
[ttGlyphSet] Don't apply lsb-xMin shift to components
...
This matches HarfBuzz, FreeType, and Windows.
Fixes https://github.com/fonttools/fonttools/issues/2981
2023-02-03 13:55:31 -07:00
Behdad Esfahbod
e374af919d
[ttGlyphSet] Only decompose VarComposites on AttributeError
...
Keep NotImplementedError for clients to really say don't want it.
2023-02-03 13:35:09 -07:00
Behdad Esfahbod
a14a02ecc2
[glyf] Fix VarComposite compile for .transform change
...
Ouch!
2023-02-03 13:19:37 -07:00
Behdad Esfahbod
8e981a1b28
[transform] Change the DecomposedTransform skewX sign to match Transform
...
Unfortunate but for consistency's sake.
This deviates from VarComposite convention.
https://github.com/fonttools/fonttools/pull/2958#issuecomment-1416155600
2023-02-03 10:23:23 -07:00
Behdad Esfahbod
2e20e47473
[transform] Rename VarTransform to DecomposedTransform
2023-02-03 09:05:55 -07:00
Behdad Esfahbod
249d9248eb
[ttGlyphSet/VarComposite] Accept AttributeError as well
2023-02-03 08:59:32 -07:00
Behdad Esfahbod
4ce383f167
[ttGlyphSet] Consolidate two branches
2023-02-03 08:58:16 -07:00
Just van Rossum
bc19f42c0f
[ttGlyphSet] fix indentation so it works for point pens, too
2023-02-03 16:36:40 +01:00
Behdad Esfahbod
69966aa5d7
[BasePen] Add addVarComponent()
2023-02-02 15:25:09 -07:00
Behdad Esfahbod
59418656a4
[VarComposite] Add VarTransform and use
2023-02-02 14:50:26 -07:00
Behdad Esfahbod
68774ac0e6
[VarComposites] Simplify a loop as per review
2023-02-02 11:30:30 -07:00
Behdad Esfahbod
05da0ac1b5
[VarComposites] Handle missing transform attributes during drawing
2023-02-02 11:28:36 -07:00
Behdad Esfahbod
aa2e29f05f
[VarComposite] Rename as per review
2023-02-02 11:00:45 -07:00
Behdad Esfahbod
700a8b36f6
[glyf] Remove leftover
2023-02-02 10:59:51 -07:00
Behdad Esfahbod
69d56c3104
[VarComposite] Use math.radians as per review
2023-02-02 10:58:58 -07:00
Behdad Esfahbod
f3f50393a8
[ttGlyph] Adjust contextmanager pattern
2023-02-02 10:52:31 -07:00
Behdad Esfahbod
0e9efae0d5
[VarComposite] Use contextmanager as per review
2023-02-01 14:17:24 -07:00
Behdad Esfahbod
f205ba0f6c
Update Lib/fontTools/ttLib/tables/_g_l_y_f.py
...
Co-authored-by: Just van Rossum <justvanrossum@gmail.com>
2023-02-01 13:22:08 -07:00
Behdad Esfahbod
6755acceee
[woff2] Add fvar to glyf dependencies
...
Since the VarComposites added fvar to glyf dependencies in ttLib.
Add test for VarComposite to woff2 tests.
2023-01-31 12:46:17 -07:00
Behdad Esfahbod
7db21cd197
[VarComposite] Link to spec
2023-01-31 11:30:47 -07:00
Behdad Esfahbod
63d355e37d
[Tests/ttGlyphSet/VarComposite] Add test
...
And a bugfix.
2023-01-30 11:26:21 -07:00