rsheeter
9698c71198
Change case of LayerCollector fields per comment
2020-11-04 18:47:16 -08:00
rsheeter
f531038bf9
Start hooking up revised PaintColrLayers
2020-11-04 14:36:43 -08:00
Cosimo Lupo
581416d77c
WIP: add buildPaintColrLayers
2020-11-03 19:11:24 +00:00
rsheeter
d285481215
Fix f-string
2020-11-03 11:06:23 -08:00
Just van Rossum
0ae6951b3b
Merge pull request #2082 from justvanrossum/gvar-ignore-empty-glyphs
...
[varLib] Interpret empty non-default glyphs as 'missing'
2020-11-02 18:19:09 +01:00
Cosimo Lupo
e992953474
swap xy and yx fields in COLRv1 Affine2x3 struct
...
following the latest draft
See discussion at https://github.com/googlefonts/colr-gradients-spec/pull/85
2020-10-30 19:29:59 +00:00
Cosimo Lupo
aad51ec4d9
svgLib: handle arc commands with bool flags not separated by space/comma
...
Some SVG authoring tool write arc commands without any space or comma around the boolean 'large-arc' and 'sweep' flags, leading our svg path parser to choke.
This makes the path parser smarter by special-casing arc command parsing so that it only consumes one character ('0' or '1') for these special boolean flags.
2020-10-29 15:31:47 +00:00
Cosimo Lupo
6c752f677f
rename Paint{ColorGlyph,ColrSlice}
2020-10-27 19:15:50 +00:00
Cosimo Lupo
d5e645a3c9
define Table.writeNullOffset() in subclasses; add comment as per review feedback
2020-10-27 18:35:36 +00:00
Cosimo Lupo
b654554109
add {First,Last}LayerIndex to PaintColorGlyph
...
as proposed in https://github.com/googlefonts/colr-gradients-spec/issues/86
The name of PaintColorGlyph may still change to PaintColorSlice, or PaintColrSlice, or PaintColorGlyphSlice, etc."
https://github.com/googlefonts/colr-gradients-spec/pull/87
2020-10-27 12:47:10 +00:00
Cosimo Lupo
ce11d0ede8
C_O_L_R_test: test roundtrip Paint{Transform,ColorGlyph,Composite}
2020-10-26 18:14:13 +00:00
Cosimo Lupo
8cffabfb58
builder_test: test buildPaint{ColorGlyph,Transform,Composite}
2020-10-26 18:14:13 +00:00
Cosimo Lupo
1803283baf
colorLib: use IntEnum instead of 'magic' Paint format integers
...
makes code more readable
2020-10-26 18:14:13 +00:00
Cosimo Lupo
53b0034b35
colorLib: check that values fit fixed or integer types
...
continue building all glyphs, accummulate errors and only stop at the end
fixup
2020-10-23 17:09:44 +01:00
Jens Kutilek
28a215173a
Update NEWS [skip ci]
2020-10-22 11:20:32 +02:00
Jens Kutilek
b9c268943a
Add HashPointPen from psautohint ( #2005 )
...
* Add HashPointPen from psautohint (with changes)
* Decompose components
* Use format string and disambiguate critical changes
* Remove "getHash()" in favour of "hash" property
* Add transformation for composites
* Omit base glyph name from component hash
* Use untransformed coords for components
* Add tests
* Add example code
Co-authored-by: Cosimo Lupo <cosimo@anthrotype.com>
2020-10-22 11:16:24 +02:00
Cosimo Lupo
fc625963fa
otTables: dump the format name of Paint tables as XML comment
2020-10-20 19:03:17 +01:00
Cosimo Lupo
09fa418eb0
Merge remote-tracking branch 'origin/master' into colrv1-latest
2020-10-20 16:11:54 +01:00
Simon Cozens
10413d947a
Merge pull request #2067 from simoncozens/fealib-debug-subclassable
...
Only stash lookup location if buildLookups_ has cooperated
2020-10-19 09:14:06 +01:00
Simon Cozens
0c9cb3a878
Warn developer if subclass needs upgrading
2020-10-18 11:21:49 +01:00
Cosimo Lupo
73073be3c2
Affine2x3 struct should be inlined inside PaintTransform
...
Not pointed to by an Offset32.
Thanks Dominik for spotting this!
2020-10-12 14:32:23 +01:00
Cosimo Lupo
a2aaf41a7e
colorLib: rename builders to match current Paint format names
2020-10-09 19:36:35 +01:00
Cosimo Lupo
fdf6a5c1fc
colorLib: update builders to latest COLRv1 draft
...
LayerV1Record and Affine2x2 are gone.
LayerV1List now contains a list of Paint DAGs
Added 4 new Paint formats: PaintGlyph, PaintColorGlyph, PaintTransform
and PaintComposite
2020-10-09 19:36:35 +01:00
Cosimo Lupo
7f6a05b007
otData: add new COLR Paint struct definitions, update to latest draft
...
Update C_O_L_R_test.py accordingly.
a
2020-10-09 19:36:35 +01:00
Just van Rossum
b1cb5ce1e5
Merge pull request #2083 from justvanrossum/fix-FFF-typo
...
[varLib] Small bugfix: test for 0xFFFF, not 0xFFF
2020-10-09 09:56:35 +02:00
justvanrossum
16e058fe97
Test for 0xFFFF, not 0xFFF, fixes #2073
2020-10-09 09:33:47 +02:00
Just van Rossum
b992e28374
[varLib] Add designspace lib key for custom feavar feature tag ( #2080 )
...
* Add designspace lib key to specify a custom feature tag for feature variations, as discussed in #2079
* Added comment for the lib key
* if the lib key is present, the 'processing' flag should be ignored completely
2020-10-08 14:21:42 +02:00
Cosimo Lupo
c7e3a692e1
otBase: support FormatSwitchingBaseTable with uint8 Format type
2020-10-08 12:39:56 +01:00
Cosimo Lupo
d60d84d3fc
otBase/otConverters: add support for 3-byte offsets
2020-10-08 12:39:54 +01:00
justvanrossum
3ea29197fc
Interpret empty non-default glyphs as 'missing', if the default glyph is not empty. Part of discussion over at googlefonts/ufo2ft/issues/408
2020-10-08 12:06:35 +02:00
Cosimo Lupo
c55f478c0f
Bump version: 4.16.1 → 4.16.2.dev0
2020-10-05 19:25:14 +01:00
Cosimo Lupo
e1dd581627
Release 4.16.1
2020-10-05 19:25:14 +01:00
Cosimo Lupo
4b63354b56
Update changelog [skip ci]
2020-10-05 19:24:54 +01:00
Cosimo Lupo
558b9cba7c
Merge pull request #2077 from fonttools/feature-variations-none
...
[instancer] FeatureVariations table is optional in GSUB 1.1 and can be None
2020-10-05 19:17:43 +01:00
Cosimo Lupo
e16cf0f8b8
instancer_test: check GSUB.FeatureVariations set to None is skipped
...
and doesn't raise TypeError exception.
2020-10-05 18:59:21 +01:00
Cosimo Lupo
e78d7cf50a
backport fix to varLib.mutator as well
2020-10-05 18:17:14 +01:00
Cosimo Lupo
5ef018e485
[instancer] FeatureVariations table is optional and can be None
2020-10-05 17:50:24 +01:00
Nikolaus Waxweiler
9433dc5f67
Merge pull request #2075 from fonttools/ufolib-gliflib-always-raise-on-missing-x-y
...
[glifLib] Hard-require x and y coordinates
2020-10-04 15:28:04 +01:00
Nikolaus Waxweiler
04e1269b41
[glifLib] Hard-require x and y coordinates
2020-10-03 12:43:28 +01:00
Cosimo Lupo
e4b0486b31
Bump version: 4.16.0 → 4.16.1.dev0
2020-09-30 16:17:44 +01:00
Cosimo Lupo
2c1b7ea18c
Release 4.16.0
2020-09-30 16:17:43 +01:00
Cosimo Lupo
3e8114e70d
Update changelog [skip ci]
2020-09-30 16:16:34 +01:00
Cosimo Lupo
bec25751c9
Merge pull request #2068 from fonttools/remove-overlaps-snippet
...
add module to remove overlaps from TTF with skia-pathops
2020-09-30 16:01:26 +01:00
Cosimo Lupo
fdab35063d
README.rst: mention 'pathops' among extras
...
pip install fonttools[pathops]
2020-09-30 13:55:30 +01:00
Cosimo Lupo
7f9462dfa6
compare paths independently of contour order
...
the order of contours modified by Skia is not stable and may change. So when we compare the original and the modified paths, we compare the paths as unordered sets of contours.
The order of contours doesn't produce any visible difference, but we try to keep the changes to the minimum here to avoid unnecessary diffs
2020-09-30 13:40:01 +01:00
Cosimo Lupo
66a0d91bf9
remove hinting from all glyphs, whether overlaps are removed or not
2020-09-30 13:36:28 +01:00
Cosimo Lupo
e94098606b
log modified glyps
2020-09-30 13:35:05 +01:00
Cosimo Lupo
1329c8f7db
instancer_test: add tests for --remove-overlaps on generated VF instance
2020-09-29 19:38:17 +01:00
Cosimo Lupo
d9d216f8f8
minor: rename OverlapsMode enum -> OverlapMode
2020-09-29 19:33:26 +01:00
Cosimo Lupo
7b9da7602c
skip empty paths with no contours
...
https://github.com/fonttools/fonttools/pull/2068#pullrequestreview-498472660
2020-09-29 16:24:17 +01:00