Behdad Esfahbod
48dafdb351
[glyf/VarComponent] Use .location
2023-01-30 11:26:20 -07:00
Behdad Esfahbod
5d5569d77a
[glyf/VarComponent] Fix fromXML
2023-01-30 11:26:20 -07:00
Behdad Esfahbod
4dcbed503a
[glyf] Black
2023-01-30 11:26:20 -07:00
Behdad Esfahbod
f84d0845cd
[glyf/VarComponent] Implement compile()
2023-01-30 11:26:20 -07:00
Behdad Esfahbod
fb170aadfb
[glyf/VarComponent] Implement fromXML
2023-01-30 11:26:20 -07:00
Behdad Esfahbod
76802fbd92
[glyf/VarComponent] Scale rotation values
2023-01-30 11:26:20 -07:00
Behdad Esfahbod
828a407846
[glyf/VarComponent] Add toXML
2023-01-30 11:26:20 -07:00
Behdad Esfahbod
aba64ea402
[glyf] Remove copy/pasted unimplemented VarComponent code
2023-01-30 11:26:20 -07:00
Behdad Esfahbod
86420d1150
[gvar] Decompile VarComposite glyph
2023-01-30 11:26:20 -07:00
Behdad Esfahbod
483013be69
[glyf] Decompile VarComponent
2023-01-30 11:26:20 -07:00
Behdad Esfahbod
de6eee7373
[glyf] Hook up VarComposite in a few places
...
Unimplemented functions.
2023-01-30 11:26:20 -07:00
Behdad Esfahbod
0f3b7b5b99
[glyf] Add isVarComposite()
2023-01-30 11:26:20 -07:00
Behdad Esfahbod
796cfe750a
[glyf] Remove __getitem__
...
This used to iterate over components. Pretty weird choice.
2023-01-30 11:26:20 -07:00
Cosimo Lupo
d9f9acd5c2
copy OTTableReader before copying/pickling lazily loaded table
...
Fixes https://github.com/fonttools/fonttools/issues/2965
2023-01-26 16:52:13 +00:00
PoomSmart
795ddb8ccb
Fixed linting
2023-01-23 09:22:38 +07:00
PoomSmart
eed57de422
Fixed indentation
2023-01-22 22:59:57 +07:00
Thatchapon Unprasert
9ad2b91f7d
Handle glyphs with dupe graphic type on compile correctly
...
Instead of appending glyph raw data with `imageData` for `graphicType=dupe` which will always be `NoneType`, append with the reference glyph ID.
2023-01-22 22:53:37 +07:00
Behdad Esfahbod
f651809ac5
[glyf] endPointsOfContours is unsigned
2023-01-17 09:12:49 -07:00
Nikolaus Waxweiler
d584daa8fd
Blacken code
2022-12-13 11:26:36 +00:00
Behdad Esfahbod
6aca5be9b7
[gvar] Don't expand glyph for unused pointCount
...
Keep it in the API though.
2022-12-09 11:39:07 -07:00
Behdad Esfahbod
96de954d29
[gvar] Don't expand glyph during decompile if no variation data
2022-12-07 21:34:36 -07:00
Behdad Esfahbod
3a258573af
[gvar] Avoid decompiling glyphs that don't have variations
2022-12-07 14:50:15 -07:00
Cosimo Lupo
6389385813
Merge branch 'main' into avar2
2022-10-28 16:38:33 -07:00
Behdad Esfahbod
027de814e2
[subset/SVG] Speed up
...
Subsetting NotoColorEmojiSvg for one glyph.
Before: 280ms
After: 80ms
Fixes https://github.com/fonttools/fonttools/issues/2360
2022-10-26 14:06:35 -06:00
Cosimo Lupo
40b2473a48
Merge pull request #2728 from fonttools/instancer-l4
...
[instancer] Towards L4 instancing
2022-10-21 16:39:09 +01:00
Behdad Esfahbod
3d2fa8a342
[glyf] Return component transform as part of control data
...
This makes sure that when we are building variable fonts, we
check that all masters have the same component transform in
composite glyphs. We were not checking for this before.
2022-10-20 11:05:08 -06:00
Behdad Esfahbod
5ff9546531
[TupleVariation] Add __imul__
2022-10-13 10:35:02 -06:00
Cosimo Lupo
36de9df3cc
[gvar] be non lazy for TTFont.lazy=False, add ensureDecompiled
...
like cmap, or glyf or OTL tables, we need to respect lazy=False flag and decompile everything upfront, also we want to add an ensureDecompiled method (called by TTFont.ensureDecompiled) to allow loading everything in one go even when a font had been opened lazily.
2022-08-31 11:10:50 +01:00
Just van Rossum
a32a92e6d7
add custom __init__ in favor of setting .data externally
2022-08-26 10:53:32 -06:00
Just van Rossum
a0af5727e1
Use UserDict for lazy gar variations dict; alternative for #2779
2022-08-26 10:53:32 -06:00
Just van Rossum
0637b24b2a
Read gvar more lazily by not parsing all of the 'glyf' table
2022-08-24 16:38:00 +02:00
Behdad Esfahbod
46e2d07f8b
[kern] More work handling large kern tables
...
Fixes https://github.com/fonttools/fonttools/issues/2335
2022-08-20 11:09:36 -06:00
Behdad Esfahbod
d21cfdede5
[kern] Allow compiling kern tables with more than 64k entries
...
Fixes https://github.com/fonttools/fonttools/issues/2397
2022-08-20 11:03:11 -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
2a15c450a4
[EBDT/EBLC] Make them work with TTVisitor
2022-08-18 06:10:52 -06:00
Behdad Esfahbod
2a8f408b31
Fix signature of ensureDecompiled()
2022-08-17 14:27:47 -06:00
Behdad Esfahbod
9b0d0e7b56
[visitor] ensureDecompiled(recurse=False)
2022-08-15 12:09:26 -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
9ebebcba6d
[gvar] Minor simplify
2022-08-14 12:07:54 -06:00
Behdad Esfahbod
260564a1e3
Lazy gvar ( #2741 )
...
* [gvar] Load variations lazily
Fixes https://github.com/fonttools/fonttools/issues/2740
2022-08-14 11:54:35 -06:00
Garret Rieger
a33972da62
Use new uharfbuzz repack_with_tag if available.
2022-07-29 21:48:25 +00:00
Behdad Esfahbod
5e5922ee04
[avar2] Misc fixes to actually compile avar2
2022-07-23 12:26:38 -06:00
Behdad Esfahbod
058af5e8ca
[avar] Add avar2 fields
2022-07-22 13:15:09 -06:00
Behdad Esfahbod
8e013d9406
[avar] WIP Move avar to otData
2022-07-22 13:15:09 -06:00
Cosimo Lupo
32aa8eafcb
[otBase] fix AttributeError when uharfbuzz < 0.23.0 and 'repack' missing
...
Fixes #2671
2022-07-19 14:46:50 +02:00
Cosimo Lupo
2a07518b70
Merge pull request #2660 from fonttools/variable-colr
...
[varLib] add support for building variable COLR from set of master COLRv1 tables
2022-07-06 10:55:50 +01:00
Garret Rieger
10140f9df3
Remove TODO.
2022-06-27 18:32:04 +00:00
Garret Rieger
8196166e53
Add some additional comments about packing state machine.
2022-06-27 18:28:02 +00:00
Garret Rieger
d92fd2665c
Use enum's for repacker state.
2022-06-27 18:18:20 +00:00
Cosimo Lupo
4ca582a273
otTraverse: add pretty __str__ for SubTablePath tuple
...
so one can debug print(path) and get things like 'Paint.Paint.ColorLine.ColorStop[1]'
2022-06-24 18:33:52 +01:00