Behdad Esfahbod
1773f7b0ad
[ttGlyphSet] Support VARC CFF2 fonts
2024-12-02 13:59:39 -07:00
Behdad Esfahbod
753197e017
[varc] Use multiVarStore instead of GDEF varStore
...
That's what we agreed upon.
2024-05-22 18:46:07 -06:00
Behdad Esfahbod
973072b259
[Condition] Implement ConditionValue
...
Shift other Condition format numbers.
Implements
https://github.com/adobe-type-tools/opentype-spec-drafts/blob/main/condvalue_spec.md
2024-05-22 18:46:07 -06:00
Just van Rossum
77add05f7f
Don't emit addVarComponent() if the component references the parent glyph (special case)
2024-05-22 18:46:07 -06:00
Behdad Esfahbod
973dc5c9a7
[varc] Use Condition instead of ConditionSet
...
With more Condition formats.
df7dcc4618
https://github.com/harfbuzz/boring-expansion-spec/issues/147
2024-05-22 18:46:07 -06:00
Behdad Esfahbod
d53c08a497
[varc] Conditionals tested!
2024-05-22 18:46:07 -06:00
Behdad Esfahbod
74f870f4ef
[varc] Add ConditionSets
2024-05-22 18:46:07 -06:00
Behdad Esfahbod
1acc80eba5
[VARC] Deepcopy the component
...
Since we modify comp.transform.
2024-05-22 18:46:07 -06:00
Behdad Esfahbod
037bbe1030
[VARC] Load axisValues as float
...
https://github.com/fonttools/fonttools/pull/3395#issuecomment-1897696665
2024-05-22 18:46:07 -06:00
Behdad Esfahbod
668a40da38
[VARC] Pivot on design again
...
Just store the AxisIndices in a shared list.
Don't explicitly store numAxes.
2024-05-22 18:46:07 -06:00
Behdad Esfahbod
bfb8490947
[VARC] Apparently __iadd__ is optional
2024-05-22 18:46:07 -06:00
Behdad Esfahbod
6af1d5c555
Fix RESERVED
2024-05-22 18:46:07 -06:00
Behdad Esfahbod
58bb96be91
[VARC] Use a DeltaSetIndexMap
2024-05-22 18:46:07 -06:00
Behdad Esfahbod
b772f1d686
Reuse a variable
2024-05-22 18:46:07 -06:00
Behdad Esfahbod
822351f12d
[VARC] Minor rename
2024-05-22 18:46:06 -06:00
Behdad Esfahbod
2229607dd1
Black
2024-05-22 18:46:06 -06:00
Behdad Esfahbod
f73d6f2a6f
[VARC] Fixups
2024-05-22 18:46:06 -06:00
Behdad Esfahbod
9cc3689fb1
[VARC] Towards drawing new design
2024-05-22 18:46:06 -06:00
Behdad Esfahbod
28520553f3
[VARC] Allow drawing same-name glyph
2024-05-22 18:46:06 -06:00
Behdad Esfahbod
44a32f8a2a
Minor refactor
2024-05-22 18:45:28 -06:00
Behdad Esfahbod
950d39b9d3
[VARC] Finish drawing!
2024-05-22 18:45:27 -06:00
Behdad Esfahbod
bbad70ef8a
[VARC] bool(Vector) is useless... :(
2024-05-22 18:45:27 -06:00
Behdad Esfahbod
4b6c574d54
[VARC] More towards drawing
2024-05-22 18:45:27 -06:00
Behdad Esfahbod
0e52857ffe
[VARC] Start drawing VARC glyphs
2024-05-22 18:45:27 -06:00
Behdad Esfahbod
a30ebf0a2f
Revert "Remove some more remnants of VarComposites in ttGlyphSet"
...
This reverts commit 98d30dcf45e71b4352d9bfe2fee6ce4bfa198248.
2024-05-22 18:45:27 -06:00
Behdad Esfahbod
e9551c483a
Remove some more remnants of VarComposites in ttGlyphSet
...
Going to re-add for VARC table.
2024-05-22 18:45:27 -06:00
Behdad Esfahbod
bcd5e4c216
Rip out glyf1 VarComposites
...
In favor of separate VARC table.
ttGlyphSet does NOT yet know how to draw VARC table though.
The 9 failing tests are all VarComposite-related and need
to be updated with VARC equivalents eventually when we
add VARC support to subsetter and instancer.
2024-05-22 18:45:27 -06:00
Khaled Hosny
cf08265cd5
Black
2024-02-06 15:47:35 +02:00
Behdad Esfahbod
9afac79105
[lerp_recording] Make into a generator
2023-12-07 04:49:59 -07:00
Behdad Esfahbod
167e0cb646
[ttGlyphSet] Use lerp_recordings
2023-12-07 04:49:59 -07:00
Behdad Esfahbod
4f6c739181
Move LerpGlyphSet and lerp_recordings to more prominent places
...
Fixes https://github.com/fonttools/fonttools/issues/3361
2023-12-07 04:49:59 -07:00
Behdad Esfahbod
772dc549f3
[ttGlyphSet] Add option to not recalculate glyf bounds ( #3348 )
...
Avoids unnecessary work in the interpolator.
2023-11-21 12:06:57 -07:00
Cosimo Lupo
335a1e56ec
re-run black v23.10 on all .py files
2023-11-03 10:25:15 +00: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
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
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
05da0ac1b5
[VarComposites] Handle missing transform attributes during drawing
2023-02-02 11:28:36 -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
63d355e37d
[Tests/ttGlyphSet/VarComposite] Add test
...
And a bugfix.
2023-01-30 11:26:21 -07:00
Behdad Esfahbod
4310512f07
[ttGlyphSet/VarComposite] Add VarComponentFlags.RESET_UNSPECIFIED_AXES
2023-01-30 11:26:21 -07:00
Behdad Esfahbod
3b19719c5a
[ttGlyphSet/VarComposite] Fixups
...
Renders fine now.
2023-01-30 11:26:20 -07:00