7106 Commits

Author SHA1 Message Date
Behdad Esfahbod
60e30fe008 [cffLib] Add a simple (and quite possibly incomplete) convertCFF2ToCFF() 2024-05-15 17:33:00 -07:00
Behdad Esfahbod
c06e8ba1e8 [instancer/CFF2] Comment 2024-05-14 18:26:35 -06:00
Behdad Esfahbod
c22f7d5af4 [cffLib.specializer] Simplify vsindex protocol 2024-05-14 18:13:51 -06:00
Behdad Esfahbod
3d2df43a67 [instancer/CFF2] Comment 2024-05-14 17:13:21 -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
Behdad Esfahbod
cbec49c72c [cffLib] A couple of fixups
In particular, I don't know why we were appending a 'return'
at the end of CFF2 desubroutinized charstrings!
2024-05-14 11:56:15 -06:00
Behdad Esfahbod
1891a7220d [instancer/CFF2] Fixups 2024-05-14 11:11:39 -06:00
Behdad Esfahbod
385c2cb979 [instancer/CFF2] Instantiate private-dict values 2024-05-14 11:11:25 -06:00
Behdad Esfahbod
bdd42f14fc [instancer/CFF2] Fixups with used-vsindex handing
vsindex 0 is implied.

Also, add Unimplemented code for private-dict variable
values. I couldn't find any fonts using them, so for
now they remain unimplemented.
2024-05-14 01:15:04 -06:00
Behdad Esfahbod
68f87dd850 [instancer/CFF2] Fix tests
gvar is removed by the time we get to hmtx/vmtx subsetting.
2024-05-14 00:47:39 -06:00
Behdad Esfahbod
21fb882e67 [instancer/CFF2] Prune ununsed data 2024-05-14 00:35:09 -06:00
Behdad Esfahbod
6f85ebb02c [instancer/CFF2] Full-instancing 2024-05-14 00:11:29 -06:00
Behdad Esfahbod
ae18197f6f [instancer/CFF2] Instantiate hmtx/vmtx 2024-05-14 00:11:29 -06:00
Behdad Esfahbod
c9ed0d1348 [instancer/CFF2] Minor sanity check 2024-05-14 00:11:29 -06:00
Behdad Esfahbod
f6c72eabf9 [instancer/CFF2] Add specialize and generalize arguments 2024-05-14 00:11:29 -06:00
Behdad Esfahbod
bb9a23702b [instancer] Instantiate CFF2! 2024-05-14 00:11:29 -06:00
Behdad Esfahbod
969d09dcaf [instancer] Fix name decision-making
All limits are tuple these days.
2024-05-14 00:10:50 -06:00
Behdad Esfahbod
9f51fac512 [cffLib] Make sure we compile VarStore
Ouch. Took me a while to find this bug. If data is set,
it will be reused and no compilation happens.
2024-05-13 22:47:22 -06:00
Behdad Esfahbod
ce78d2c88f Typo 2024-05-13 17:17:30 -06:00
Just van Rossum
24cb4e0dcf
[feaLib.variableScalar] fix value_at_location() method (#3491) 2024-05-13 08:48:59 +01: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
Simon Cozens
9acbd12637
Better failure mode for sstruct (#3500)
* Check format fits and give sensible error if not

* sstruct.getformat now returns dictionaries, merge them
2024-05-07 14:01:46 +01:00
Behdad Esfahbod
8c32511e5a Hide cu2qu.cli from --help 2024-04-30 13:23:56 -06:00
Behdad Esfahbod
1d802db723 Remove qu2cu.cli from --help 2024-04-30 13:22:58 -06:00
Behdad Esfahbod
fbe2dc846c Fix --help showing qu2cu.qu2cu 2024-04-30 13:22:02 -06:00
Behdad Esfahbod
70b5456387 [cu2qu/qu2cu] Don't show benchmark module in --help 2024-04-30 13:14:07 -06:00
Behdad Esfahbod
a25e584955 [removeOverlaps] Show in --help 2024-04-30 13:13:53 -06:00
Behdad Esfahbod
e724acd41e [instancer] Raise NotImplementedError if avar2 VarStore present 2024-04-15 08:21:14 -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
Khaled Hosny
fbe4765460 Bump version: 4.51.0 → 4.51.1.dev0 2024-04-05 16:10:47 +02:00
Khaled Hosny
a1a5af2f1f Release 4.51.0 2024-04-05 16:10:46 +02:00
Behdad Esfahbod
ed092f2552 [avar] Raise exception instead of assert 2024-04-03 07:55:04 -06:00
Behdad Esfahbod
ff4100f309 Remove unused import 2024-04-03 07:24:53 -06:00
Behdad Esfahbod
6a2a204cc3 [interpolatable] Support avar2 in the .ttf codepath 2024-04-02 13:20:19 -06:00
Behdad Esfahbod
6e0acc9e4b Add a couple of __getitem__'s 2024-04-02 10:38:36 -06:00
Behdad Esfahbod
bf6ff3b514 [avar] Add support for mapping avar2
Untested.
2024-04-02 10:23:09 -06:00
Behdad Esfahbod
781dda70de [ttFont] Move some code into fvar and avar modules 2024-04-02 10:23:09 -06:00
Behdad Esfahbod
2c9d97652d [ttFont] Add reorderGlyphs
Fixes https://github.com/fonttools/fonttools/issues/2060
2024-03-30 17:22:38 -06:00
Simon Cozens
430e364db7 Compile aux fields 2024-03-19 16:46:37 -06:00
Cosimo Lupo
e39cc26b67
Bump version: 4.50.0 → 4.50.1.dev0 2024-03-15 17:30:45 +00:00
Cosimo Lupo
10dd8b4575
Release 4.50.0 2024-03-15 17:30:44 +00:00
Cosimo Lupo
3e949ed07c
recordingPen: add DecomposingRecordingPointPen to __all__ list for star imports 2024-03-14 09:51:38 +00:00
Cosimo Lupo
d84c74c2ab
[filterPen] add decomposing filter pens 2024-03-05 15:58:41 +00:00
Cosimo Lupo
cccc358c79
[recordingPen] Add DecomposingRecordingPointPen, test new decomposing pen options 2024-03-05 15:58:41 +00:00
Cosimo Lupo
c0074ee26f
[pointPen] add DecomposingPointPen, point-pen eqivalent to DecomposingPen 2024-03-05 15:18:39 +00:00
Cosimo Lupo
e7bd486766
[basePen] add reverseFlipped=False option to DecomposingPen
decomposed components with flipping transform have their path direction reversed, possibly causing dropouts if they overlap other components; this option ensures they will get reversed as they are decomposed (similar to what ufo2ft DecomposeComponentsFilter or Glyphs.app does when decomposing flipped components).

Also we allow specific instances of to set skipMissingComponents differently from the class default value, and add an alias to MissingComponentError so one doesn't need to import it explicitly but can the pen's class attribute.
2024-03-05 15:18:39 +00:00
Cosimo Lupo
345d6b2f81 [instancer] drop explicit no-op axes from tuplevariations
Fixes #3453
2024-03-04 15:25:48 +00:00