Cosimo Lupo
36a1c5519e
Update changelog [skip ci]
2021-05-12 19:37:56 +01:00
Cosimo Lupo
6adbf188e6
Merge pull request #2288 from fonttools/remove-overlaps-print-glyph-error
...
removeOverlaps: work around pathops.simplify error
2021-05-12 17:06:57 +01:00
Behdad Esfahbod
fe0eaa6580
Merge pull request #2304 from simoncozens/model-gardening
...
Small refactor (and reformat) varLib.models
2021-05-12 09:27:36 -06:00
Simon Cozens
b41b062402
We are iterating over supports, not locations, here
2021-05-12 16:13:58 +01:00
Simon Cozens
2aa1a6ddf6
Remove else-after-return
2021-05-12 15:04:41 +01:00
Simon Cozens
5ac809410f
Reformat with black
2021-05-12 15:02:59 +01:00
Simon Cozens
1526b9e024
Another unused enumeration
2021-05-12 15:01:18 +01:00
Simon Cozens
f711b65475
Index was never used
2021-05-12 14:57:20 +01:00
Simon Cozens
1c509f931d
Avoid unnecessary intermediary variables
2021-05-12 14:56:44 +01:00
Simon Cozens
ab328b5ecc
axisPoints is not used outside the sort function
2021-05-12 14:55:14 +01:00
Just van Rossum
31ab3aae0b
Merge pull request #2285 from fonttools/varStore-32bit
...
Improve otBase facilities / towards 32bit VariationStore
2021-05-08 17:10:17 +02:00
Just van Rossum
9825ab0977
Fix for #2293 : allow more than one lookahead glyph/class in contextual positioning with "value at end" ( #2294 )
...
* add test that fails for #2293
* fixing #2293 : rewrite of contextual positioning logic, ensure len(suffix) > 1 yields the correct result; checking more edge cases and raising errors inspired by makeotf
* test error cases
* only check when we actually have a value
* catch one more case that makeotf errors on and we didn't
2021-05-08 09:22:30 +02:00
Behdad Esfahbod
f21091b6ff
[otBase] Assert array.array('i').itemsize
2021-05-07 15:52:35 -06:00
Behdad Esfahbod
03e97edf14
[varLib.varStore] Use binary notation for bit constants
...
https://github.com/fonttools/fonttools/pull/2285#discussion_r625708297
2021-05-07 15:45:55 -06:00
Behdad Esfahbod
98e2bf5526
[varLib.builder] Document bit-tweedling
...
https://github.com/fonttools/fonttools/pull/2285#discussion_r628401241
2021-05-07 15:41:33 -06:00
Behdad Esfahbod
b8963256fd
[otBase/otConverters] Add back array index to exception in writeArray()
...
db6171df14 (r628543432)
2021-05-07 15:31:53 -06:00
Just van Rossum
d601951eab
[otTables] Default varIdx should be 0xFFFFFFFF ( #2298 )
...
* default value for varIdx should be 0xFFFFFFFF to indicate 'no variations'
* use lc hex notation as per feedback
2021-05-07 22:26:48 +02:00
Cosimo Lupo
b0e24384c2
minor refactorings following review comment
...
https://github.com/fonttools/fonttools/pull/2288#discussion_r627907922
2021-05-07 09:49:40 +01:00
Cosimo Lupo
80598d3c2c
skip removeOveraps_test if pathops can't be imported
2021-05-06 20:23:56 +01:00
Cosimo Lupo
27e8943d3c
add test for pathops simplify bug workaround
2021-05-06 20:23:56 +01:00
Cosimo Lupo
d4d3d95414
split simplify logic to separate func for easier unit-testing
2021-05-06 20:23:56 +01:00
Just van Rossum
9c18e2a07d
Merge pull request #2292 from Eigi/main
...
#2289 fix for typo in typo in ttLib.tables._g_l_y_f.py
2021-05-06 16:10:46 +02:00
Cosimo Lupo
84b851398b
removeOverlaps: try rounding to ints before simplify to workaround skia bug
...
Fixes https://github.com/google/fonts/issues/3365
See https://bugs.chromium.org/p/skia/issues/detail?id=11958 for details
2021-05-06 14:16:01 +01:00
Eigi
1091ff5e05
#2289 fix for typo in typo in ttLib.tables._g_l_y_f.py
2021-05-06 14:33:57 +02:00
Cosimo Lupo
83e044f4a4
Merge pull request #2291 from fonttools/fix-varlib-merge-error
...
VarLibMergeError.stack is a list of str, not a str
2021-05-06 12:11:53 +01:00
Cosimo Lupo
6b9b23251e
VarLibMergeError.stack is a list of str, not a str
...
Fixes https://github.com/googlefonts/fontmake/issues/766
2021-05-06 11:59:10 +01:00
justvanrossum
2636325844
font placeholder doesn't need an fvar table
2021-05-04 19:29:39 +02:00
justvanrossum
747f9f49b7
fix struct vs array mismatch: for array 'l' is 8 bytes, not 4. I'm not 100% sure this is correct for all platforms.
2021-05-04 18:54:26 +02:00
justvanrossum
d3fd46e3f3
uncomment failing tests
2021-05-04 18:21:37 +02:00
Cosimo Lupo
e13b781526
removeOverlaps: print glyph name when pathops.simplify fails
...
Sometimes skia-pathops simplify may fail (for unknown reasons which I'm still trying to debug).
It's a good idea to know the name of the offending glyph
https://github.com/google/fonts/issues/3365
2021-05-04 17:08:59 +01:00
justvanrossum
ad438931e4
adding compile/decompile step; this currently fails for the 32-bit tests (which are therefore commented out)
2021-05-04 17:08:27 +02:00
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