Behdad Esfahbod
b1142b60cb
[VARC] Adjust to latest flags change
2024-05-22 18:46:07 -06:00
Behdad Esfahbod
297e0bd257
[VARC] Use var-int encoding for AxisIndicesIndex
...
Slightly larger fonts, but more consistency, and freed
a flag bit.
2024-05-22 18:46:07 -06:00
Behdad Esfahbod
6a09096800
[VARC] Use variable-length encoding for VarIdx'es
2024-05-22 18:46:07 -06:00
Behdad Esfahbod
c3dfe10cce
[VARC] Use TupleVariations tuple encoding for axisValues
...
Free improvement.
2024-05-22 18:46:07 -06:00
Behdad Esfahbod
735859f929
[VARC] Implement XML read/write
2024-05-22 18:46:07 -06:00
Behdad Esfahbod
cfc66a3a82
[VARC] Simplify VarCompositeRecord
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
6af1d5c555
Fix RESERVED
2024-05-22 18:46:07 -06:00
Behdad Esfahbod
d37b3942ee
[VARC] Encode indices as 1,2,3,4 bytes long
...
Previously it was 2 or 4.
2024-05-22 18:46:07 -06:00
Behdad Esfahbod
263d4d9a68
Handle scaleY
2024-05-22 18:46:07 -06:00
Behdad Esfahbod
cd1513923b
[VARC] Minor
2024-05-22 18:46:07 -06:00
Behdad Esfahbod
d07d960c75
Fix RESERVED
2024-05-22 18:46:07 -06:00
Behdad Esfahbod
f7337b55af
[VARC] Make HAVE_VARIATIONS flag automatic
2024-05-22 18:46:07 -06:00
Behdad Esfahbod
76d293ec05
[VARC] Simplify reading
2024-05-22 18:46:06 -06:00
Behdad Esfahbod
43e054b377
[VARC] Minor
2024-05-22 18:46:06 -06:00
Behdad Esfahbod
8ea97657de
[VARC] Fix copilot mistake in decompile
...
Ouch!
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
42a5fbdfdd
[VARC] Redesign table
...
No spec yet. For results see:
https://github.com/harfbuzz/boring-expansion-spec/issues/103#issuecomment-1863533305
2024-05-22 18:46:06 -06:00
Behdad Esfahbod
a958c68d79
[VARC] Simplify TupleValues
...
Move it to a converter instead of a class.
2024-05-22 18:46:06 -06:00
Behdad Esfahbod
272f73632a
[VARC] Fix instanciating component
2024-05-22 18:46:06 -06:00
Behdad Esfahbod
c50a0f6195
[VARC] Rename a type
2024-05-22 18:45:27 -06:00
Behdad Esfahbod
950d39b9d3
[VARC] Finish drawing!
2024-05-22 18:45:27 -06:00
Behdad Esfahbod
c69fd12251
[VARC] Move code around
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
ec78b572c9
[MultiVarStore] Fix up XML read/write
...
Looks complete now.
2024-05-22 18:45:27 -06:00
Behdad Esfahbod
c78ba01c80
[VarCompositeGlyph] Use two varIdxes per component
...
Seems to save space now with MultiVarStore.
2024-05-22 18:45:27 -06:00
Behdad Esfahbod
02c6a94529
[VARC] Use TupleVariation value encoding
2024-05-22 18:45:27 -06:00
Behdad Esfahbod
0e9eff8990
Add MultiVarStore
2024-05-22 18:45:27 -06:00
Behdad Esfahbod
1a1e9e198b
[VARC] Use one varIndexBase only
2024-05-22 18:45:27 -06:00
Behdad Esfahbod
aad01a9d85
[VARC] Towards XML
2024-05-22 18:45:27 -06:00
Behdad Esfahbod
ef6903e097
[VARC] Start
...
Based on https://github.com/harfbuzz/boring-expansion-spec/issues/103#issuecomment-1856325577
2024-05-22 18:45:27 -06:00
Behdad Esfahbod
6e0acc9e4b
Add a couple of __getitem__'s
2024-04-02 10:38:36 -06:00
Cosimo Lupo
f96b2128a1
[feaLib] keep declaration order of ligatures within ligature set
...
Fixes #3428
2024-01-24 12:59:00 +00:00
Cosimo Lupo
335a1e56ec
re-run black v23.10 on all .py files
2023-11-03 10:25:15 +00:00
Behdad Esfahbod
4ccbcf3eb3
[COLR] Fix thinko
2023-08-03 17:56:38 -06:00
Cosimo Lupo
580e3b3b50
otTables: forgot to actually import TTLibError ugh
2023-03-10 19:22:58 +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
17f431b9c2
[otTables] switch to generic table traversal for Paint.traverse
2023-03-08 19:19:50 +00:00
Nikolaus Waxweiler
d584daa8fd
Blacken code
2022-12-13 11:26:36 +00:00
Cosimo Lupo
fae63959a9
otTables: add class attributes to link Var{Table} <-> {Table}
...
so one can go from Affine2x3 <-> VarAffine2x3 and similar types that have an associated Var{Type}
2022-06-21 17:27:12 +01:00
Cosimo Lupo
fa54b0fd62
otTables: add methods to Format enums to query the variable variants
2022-06-21 17:27:12 +01: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
d190a7c206
otTables: no need get LayerRecordCount by name, we already have it in scope
...
Fixes #2468
2021-12-13 11:17:08 +00:00
Simon Cozens
fa0eae6658
Don’t put extension lookups into an extension lookup, obviously
2021-12-08 09:02:24 -07:00
Simon Cozens
f7b866573b
Speculatively promote lookups to extension
2021-12-08 09:02:24 -07:00
Rod S
7dd3488732
Traverse when there is no layer list
2021-11-06 14:26:27 -07:00
Behdad Esfahbod
e5bf2a7f1a
[ttFont] Apply review comments
2021-08-22 04:09:29 -06:00
Behdad Esfahbod
7a22c0fb07
[ttFont] Add getGlyphIDMany(); use in otLayout
...
Fixes https://github.com/fonttools/fonttools/issues/1536
Superced https://github.com/fonttools/fonttools/pull/1654
Part of https://github.com/fonttools/fonttools/pull/2398
2021-08-21 11:23:11 -06:00