Cosimo Lupo
465c327b5f
Merge pull request #2300 from fonttools/fix-varlib-merger-errors
...
VarLibMergeError first parameter must be a Merger object
2021-05-13 15:48:58 +01:00
Cosimo Lupo
72004fcd7e
VarLibMergeError first parameter must be a Merger object
...
a lot of places instead pass in the 'self' parameter, incorrectly assuming that is a Merger.
This is meant to fix 'AttributeError: 'dict' object has no attribute 'ttfs'' as reported in https://github.com/googlefonts/fontmake/issues/766#issuecomment-836576341
2021-05-13 15:40:44 +01:00
Eigi Eigendorf
08e3c74911
Merge branch 'fonttools:main' into main
2021-05-13 15:41:22 +02:00
Cosimo Lupo
c51d3aa061
Merge pull request #2303 from fonttools/glyphclass-by-null
...
[feaLib] Allow substituting a glyph class with NULL
2021-05-13 10:41:54 +01:00
Cosimo Lupo
616fc065e0
add deprecation warnings for old getPhantomPoints, etc.
2021-05-13 10:13:28 +01:00
Cosimo Lupo
3c98250dbd
g_l_y_f: fix undefined name 'topSideBearing'
...
Fixes #2295
2021-05-13 10:12:46 +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
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
Khaled Hosny
f6d2ff8d2a
[feaLib] Allow substituting a glyph class with NULL
...
sub [a b c] by NULL; was producing errors, now it builds as multiple
statements.
2021-05-12 08:53:26 +02:00
Eigi
84d77e5c3a
fix for issue #2299
...
translate leading backslashes of UNC path to forward slashes.
2021-05-09 18:59:34 +02: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
d4d3d95414
split simplify logic to separate func for easier unit-testing
2021-05-06 20:23:56 +01: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
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
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
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
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
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