9118 Commits

Author SHA1 Message Date
justvanrossum
267ab2baba add 32-bit master value tests 2021-05-04 16:39:20 +02:00
justvanrossum
22dda54616 use optimizer 2021-05-04 16:19:48 +02:00
justvanrossum
7de2f347c5 add tests for OnlineVarStoreBuilder/VarStoreInstancer 2021-05-04 16:12:24 +02:00
justvanrossum
a7fd202952 add 32-bit tests to test_buildVarData_optimize 2021-05-04 14:49:12 +02:00
justvanrossum
eba058d439 add 32-bit tests to test_buildVarData_no_optimize 2021-05-04 14:41:01 +02:00
Nikolaus Waxweiler
2100a96e77
Merge pull request #2284 from fonttools/pen-error-maintenance
Pen error maintenance
2021-05-03 15:09:57 +01:00
Khaled Hosny
8caf2f0dfb
Merge pull request #2286 from fonttools/mutator-round-lsb
[mutator] Round lsb for CFF2 fonts as well
2021-05-03 01:20:01 +02:00
Khaled Hosny
a1c6c184ef [mutator] Round lsb for CFF2 fonts as well
Otherwise head table compilation would fail because of the floating
point side bearing. The advance width is already rounded.
2021-05-03 00:06:46 +02:00
Behdad Esfahbod
0549b27afb [varLib.varStore] Implement 32bit VarStore optimization
This concludes https://github.com/fonttools/fonttools/issues/2279

Part of https://github.com/fonttools/fonttools/pull/2285
2021-05-01 15:12:08 -06:00
Behdad Esfahbod
9350166792 [varLib.varStore] Remove use of array.array 2021-05-01 15:04:51 -06:00
Behdad Esfahbod
e454e96238 [varLib.builder] Implement building 32bit VarStore
The full optimizer in varLib.varStore still needs to be updated.
But this pretty much enables building 32bit VarStores, even if they
won't be fully optimal.

Part of https://github.com/fonttools/fonttools/issues/2279
2021-05-01 14:27:11 -06:00
Behdad Esfahbod
802e3636bc [otConverters] Support read/write of 32bit VarStore
Part of https://github.com/fonttools/fonttools/issues/2279
2021-05-01 12:51:12 -06:00
Behdad Esfahbod
a2f34fdf82 [otConverters] Rename VarStore shortCount to wordCount in local variables 2021-05-01 12:45:03 -06:00
Behdad Esfahbod
7d85b77996 [otConverters] Minor in VarStore padding 2021-05-01 12:44:15 -06:00
Behdad Esfahbod
0b20c196d4 [otConverters] Implement writeArray for GlyphID 2021-05-01 12:41:45 -06:00
Chris Simpkins
8a63c06b8b [varLib.instancer] update instantiateVariableFont docs
updated to indicate that Level 3 sub-space ranges are supported, but you must include the default axis value in the new range
2021-05-01 12:04:13 -06:00
Nikolaus Waxweiler
b449686a84 Use TypeError for not enough points 2021-05-01 18:56:38 +01:00
Behdad Esfahbod
bd648ea14d [otConverters] Use array read/write in VarIdxMapValue 2021-04-30 16:29:18 -06:00
Behdad Esfahbod
db6171df14 [otBase] Actually call conv.writeArray()
Huh. Somehow the writeArray() was never wired up. We lose the failing
array index in the exception, but is fine to me.
2021-04-30 16:28:28 -06:00
Behdad Esfahbod
81ca053039 [otBase] Add array reader/writer for UInt24 2021-04-30 16:28:08 -06:00
Behdad Esfahbod
a8af308d70 [otConverters] Use array-writers for ItemVariationStore payload 2021-04-30 15:59:03 -06:00
Behdad Esfahbod
36dd271cd5 [otBase/otConverters] Add array-writers for int types 2021-04-30 15:58:45 -06:00
Behdad Esfahbod
1fd2a44bbf [otBase] fix array-reader to return list, not array.array
Was not noticed because it was for the most part unused.
2021-04-30 15:57:53 -06:00
Behdad Esfahbod
2496dcf9cc [otConverters] Add array readers to int converters 2021-04-30 15:41:25 -06:00
Behdad Esfahbod
1163fe68ff [otConverters] Use array readers when reading ItemVariationStore payload 2021-04-30 15:26:49 -06:00
Behdad Esfahbod
df0d6bbadf [otBase] Add array version of various int readers 2021-04-30 15:26:32 -06:00
Nikolaus Waxweiler
2831096eeb Introduce PenError, use instead of asserts 2021-04-30 17:19:40 +01:00
Nikolaus Waxweiler
bc2bbe6a98 RecordingPointPen: handle identifier args 2021-04-30 17:19:28 +01:00
Cosimo Lupo
cf8deef420 Bump version: 4.22.1 → 4.22.2.dev0 2021-04-26 14:42:17 +01:00
Cosimo Lupo
61b62626a8 Release 4.22.1 2021-04-26 14:42:17 +01:00
Cosimo Lupo
5d16f10781 Update changelog [skip ci] 2021-04-26 14:41:00 +01:00
Cosimo Lupo
8064028ecb
Merge pull request #2277 from fonttools/fix-aalt-empty-lookup
fix AttributeError while generating aalt feature with empty lookup
2021-04-26 14:19:02 +01:00
Cosimo Lupo
2830260a01 another test to check that empty lookups blocks are skipped 2021-04-26 10:07:36 +01:00
Behdad Esfahbod
9959916c64
Merge pull request #2275 from fonttools/subset-device
[subset] Fix hint-dropping
2021-04-22 12:37:48 -06:00
Behdad Esfahbod
3a6ebb8dc7 [subset] Fix drop-hints implementation in Device tables
Fixes https://github.com/fonttools/fonttools/issues/2272
2021-04-22 12:29:16 -06:00
Behdad Esfahbod
f514a6823d [varLib.merger] Use Value.getEffectiveFormat() instead of .getFormat() 2021-04-22 12:29:16 -06:00
Cosimo Lupo
9b5bc9e18b feaLib: ignore empty named lookup reference
Fixes #2276
2021-04-22 13:11:57 +01:00
Cosimo Lupo
bd618d0117 add test to repro AttributeError when getAlternateGlyphs for empty lookups
https://github.com/fonttools/fonttools/issues/2276
2021-04-22 12:21:30 +01:00
Behdad Esfahbod
ae982abf5c
Merge pull request #2274 from googlefonts/mvar_fix
Include record size adjustment.
2021-04-21 15:54:45 -06:00
Garret Rieger
1bb3183231 Add tests for lazy loading of MVAR with more than 8 value records. 2021-04-21 14:37:47 -07:00
Behdad Esfahbod
830cff6253 [ttLib] Add Value.getEffectiveFormat()
This ignores 0/None values that don't need to be encoded.
2021-04-21 14:10:27 -06:00
Garret Rieger
e0f1c15ad0 Include record size adjustment. 2021-04-21 12:15:29 -07:00
Behdad Esfahbod
8ab6af03c8
Merge pull request #2266 from fonttools/varLib-phantomPoints
[varLib/glyf] Rework phantom-points calculations
2021-04-15 08:00:05 -06:00
Behdad Esfahbod
438dcb5a7f
Update Lib/fontTools/varLib/instancer/__init__.py
Co-authored-by: Nikolaus Waxweiler <madigens@gmail.com>
2021-04-14 21:04:48 -06:00
Behdad Esfahbod
a43690ef5b [varLib.instancer] Add back instantiateGvarGlyph() 2021-04-14 14:43:24 -06:00
Behdad Esfahbod
51a76e319e [glyf] Add old setCoordinates, getCoordinatesAndControls, getPhantomPoints
https://github.com/fonttools/fonttools/pull/2266
2021-04-14 14:36:35 -06:00
Behdad Esfahbod
a756bb01ab [glyf] Prefix setCoordinates, getCoordinatesAndControls, getPhantomPoints
Will add old name with old API next.
2021-04-14 14:09:40 -06:00
Behdad Esfahbod
6aa9d192b6 [varLib] Use TTFont.get() in a couple of places 2021-04-14 13:50:00 -06:00
Behdad Esfahbod
24140e154e [glyf] Add default=None to glyf.get() 2021-04-14 13:36:07 -06:00
Behdad Esfahbod
d12d7fbb75 [glyf] Remove unused code
Also simplify bounds check.
2021-04-13 15:13:00 -06:00