1689 Commits

Author SHA1 Message Date
David Jones
7d39064a36 Fix oops: GLIF2 test should have format=2 2024-06-03 17:09:54 +01:00
David Jones
c7be064ef6 Test absent hex attribute on unicode element
(currently fails)
2024-06-03 17:01:20 +01:00
Behdad Esfahbod
1536efc22e [CFFToCFF2] Add a test
Exercises:
https://github.com/fonttools/fonttools/pull/3518#discussion_r1611033728
2024-05-25 10:15:00 -06:00
Behdad Esfahbod
2ea20f9572 [bezierTools] Add a test 2024-05-24 10:36:46 -06:00
Behdad Esfahbod
db60a248dc
Merge pull request #3395 from fonttools/varc-table
[VARC] Variable Composites table
2024-05-24 08:09:51 -07:00
Cosimo Lupo
0902d1e482 [feaLib] don't reference same lookup multiple times within the same feature
Fixes https://github.com/fonttools/fonttools/issues/2946
2024-05-23 19:00:39 +01: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
9cb73dafeb [varc] Add a conditional VarComponent test 2024-05-22 18:46:07 -06:00
Behdad Esfahbod
74f870f4ef [varc] Add ConditionSets 2024-05-22 18:46:07 -06:00
Behdad Esfahbod
88828e0082 [CFF2IndexOf] Fix data_base
From the spec:
"Offsets in the offset array are relative to the byte
that precedes the object data."
2024-05-22 18:46:07 -06:00
Behdad Esfahbod
5b2df6b90b [VARC] Compute flags from XML transform components 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
5ad4045cec [VarComponent] Nicer XML output
https://github.com/fonttools/fonttools/pull/3395#issuecomment-1895944021
2024-05-22 18:46:07 -06:00
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
e88e47f8ff [VARC] Take a stab at instancing 2024-05-22 18:46:07 -06:00
Behdad Esfahbod
902b2a194e [VARC] Fix scaleUpem
Instancing left.
2024-05-22 18:46:07 -06:00
Behdad Esfahbod
a7ca67ada8 [VARC] Update subsetting 2024-05-22 18:46:07 -06:00
Behdad Esfahbod
c91984ef77 [VARC] Use sparse-regions in MultiVarStore
Might revert as the savings are small.
https://github.com/harfbuzz/boring-expansion-spec/issues/103#issuecomment-1861531669
2024-05-22 18:46:06 -06:00
Behdad Esfahbod
0f0148e54a [VARC/scaleUpem] Implement 2024-05-22 18:46:06 -06:00
Behdad Esfahbod
f24808c58c Black 2024-05-22 18:46:06 -06:00
Behdad Esfahbod
ce3e260955 [VARC/test] Update the rest of the test expectations
We're using a different font for varc-ac00-ac01...
2024-05-22 18:46:06 -06:00
Behdad Esfahbod
28385ec07e [VARC/test] Adjust test
This subset font is from a different source and has
different glyphs.
2024-05-22 18:46:06 -06:00
Behdad Esfahbod
22e02ccb47 [VARC/test] Adjust a test
This worked with the previous font it seems, but not with
the new font. Or maybe I've screwed up something...
2024-05-22 18:46:06 -06:00
Behdad Esfahbod
ebd877bbcb [VARC/test] Start adding 2024-05-22 18:46:06 -06:00
Behdad Esfahbod
3ff2ee61e1 Move lazy datastructures to misc.lazyTools 2024-05-22 18:45:28 -06:00
Behdad Esfahbod
c952237ed3 [otConverters] Make _LazyList generic 2024-05-22 18:45:27 -06:00
Behdad Esfahbod
65cc8bfb3c
Merge pull request #3506 from fonttools/cff2-instancing
[instancer] CFF2 instancing
2024-05-17 13:17:12 -07:00
Khaled Hosny
dbe1264b34 [subset] Prune unused user name IDs even with --name-IDs='*'
This option should affect only pre-defined name IDs, user name IDs
should be pruned when nit used, as usual.

Fixes https://github.com/fonttools/fonttools/issues/3508
2024-05-17 19:26:19 +03:00
Cosimo Lupo
511024bdc9 [ttx] use GNU-style getopt to intermix options and positional arguments
Fixes https://github.com/fonttools/fonttools/issues/3507
2024-05-17 12:07:59 +01:00
Behdad Esfahbod
0a7433f847 [cffLib] Add CFF<->CFF2 convertors that work on otFont 2024-05-16 16:29:22 -07:00
Behdad Esfahbod
60e30fe008 [cffLib] Add a simple (and quite possibly incomplete) convertCFF2ToCFF() 2024-05-15 17:33:00 -07:00
Behdad Esfahbod
17474e19a4 [instancer/CFF2] Yet another test 2024-05-14 14:04:12 -06:00
Behdad Esfahbod
267fa79cca [instancer/CFF2] Add another test
This one has private blend values.
2024-05-14 13:47:08 -06:00
Behdad Esfahbod
b3dc48a967 [instancer/CFF2] Micro-optimize commands 2024-05-14 13:39:09 -06:00
Behdad Esfahbod
1011d7e996 [instancer/CFF2] Add another test 2024-05-14 13:34:20 -06:00
Behdad Esfahbod
6d915fc816 [instancer/CFF2] Add test 2024-05-14 12:28:00 -06:00
David Corbett
0738c41dfb [psCharStrings] Shorten output of encodeFloat 2024-05-10 18:47:23 -07:00
Behdad Esfahbod
2ce45c2861 [bezierTools] Fix infinite-recursion in calcCubicArcLength
Fixes https://github.com/fonttools/fonttools/issues/3502
2024-05-07 08:54:42 -07:00
Behdad Esfahbod
d4fd62dc1e Fix build. Sorry 2024-04-30 13:28:57 -06:00
Behdad Esfahbod
705acc994f
Merge pull request #3473 from fonttools/avar2-modules
[avar2] Implement avar2 support in ttGlyphSet.
2024-04-06 07:59:22 -05:00
Behdad Esfahbod
2f80d6a176 [interpolatable] Remove obsolete comment
Well, it won't be true anymore when varc-table branch merges.
2024-04-02 13:28:45 -06:00
Behdad Esfahbod
d590feba99 [avar] Add test for ttGlyphSet support 2024-04-02 11:42:42 -06:00
Khaled Hosny
fae87446a8 Add some basic tests for reorderGlyphs 2024-03-30 17:22:38 -06:00
Cosimo Lupo
f15857cf3f
filterPen_test: add tests for decomposing filter pens 2024-03-05 15:58:42 +00:00
Cosimo Lupo
345d6b2f81 [instancer] drop explicit no-op axes from tuplevariations
Fixes #3453
2024-03-04 15:25:48 +00:00
Cosimo Lupo
f02813bd54
[cu2qu/ufo] return set of modified glyph names from fonts_to_quadratic
In ufo2ft preProcessor, we need to know which specific glyphs were actually modified (converted to quadratic), in order to do other things while processing filters, not simply if the fonts were modified as a whole; thus, here I changed fonts_to_quadratic to return the set of modified glyph names instead of just True/False. The change is backward compatible because code that checks whether the returned value is True/False will continue to work since bool(set) is True for non-empty set, False for empty ones.
2024-03-04 12:11:09 +00:00
Khaled Hosny
0f953cccd8 [otlLib] Support building MATH table 2024-02-14 02:48:13 +02:00