1295 Commits

Author SHA1 Message Date
Behdad Esfahbod
1ea4e32c9c [interpolatable] Reduce non-useful error reports
If contour-order is wrong for a contour, then no point
reporting its starting-point difference.
2023-11-16 12:41:32 -07:00
Behdad Esfahbod
b0de73dd70 [interpolatable] Remove a wrong break
It was making us only report wrong_contour_order for the
first master so.
2023-11-16 11:24:46 -07:00
Behdad Esfahbod
f27a1ebe59 [interpolatablePdf] Improve contour_order reporting
Only color the wrong contours.
2023-11-16 11:12:40 -07:00
Behdad Esfahbod
fc0efe566e [interpolatable] Emphasize area more
Also use floats. I can't measure any difference.
2023-11-16 11:09:11 -07:00
Behdad Esfahbod
60aaa35000 [interpolatable] Add --tolerance 2023-11-15 21:11:38 -07:00
Behdad Esfahbod
9612d67f80 [interpolatablePdf] Adjust start-handle color 2023-11-15 20:35:02 -07:00
Behdad Esfahbod
49893028a0 [interpolatable] Retain area sign
Reduces false-positives. Eg. with NotoSansBengali.glyphs.
2023-11-15 20:26:02 -07:00
Behdad Esfahbod
0325c504f4 [interpolatablePdf] Only draw wrong contour start handle 2023-11-15 20:11:34 -07:00
Behdad Esfahbod
f9389a8ea9 [interpolatablePdf] Black 2023-11-15 20:02:33 -07:00
Behdad Esfahbod
2cdb3367aa [interpolatablePdf] Draw contour_order 2023-11-15 19:52:51 -07:00
Behdad Esfahbod
e900d2a973 [interpolatablePdf] Draw wrong_start_point 2023-11-15 19:43:59 -07:00
Behdad Esfahbod
cc26545c0b [interpolatablePdf] Draw node count / incompatibility issues 2023-11-15 19:34:19 -07:00
Behdad Esfahbod
2bfd5d8dd7 [interpolatablePdf] Use a recording
Instead of drawing the pen multiple times.
2023-11-15 17:19:59 -07:00
Behdad Esfahbod
c0d86edf0c [interpolatable] Start of generating PDF output 2023-11-15 17:16:18 -07:00
Cosimo Lupo
69636098bd
[instancer] Ensure hhea vertical metrics stay in sync with OS/2 ones after instancing
Fixes https://github.com/fonttools/fonttools/issues/3297
2023-11-15 14:05:44 +00:00
Behdad Esfahbod
4a4f1b89d8 [interpolatable] Simplify previous commit 2023-11-14 09:40:37 -07:00
Behdad Esfahbod
1e06fd2b1d [varLib.interpolatable] Print user axis values instead of normalized 2023-11-14 09:33:28 -07:00
Behdad Esfahbod
64279c3d85 [varLib.models] Export piecewiseLinearMap() 2023-11-14 09:21:11 -07:00
Behdad Esfahbod
478e009a4e [interpolatable] Change --verbose to INFO 2023-11-14 08:47:27 -07:00
Behdad Esfahbod
fd4c0cef26 [interpolatable] Add --verbose
Mostly to return how many masters it's working on,
as per request by Marianna.
2023-11-14 08:46:32 -07:00
Cosimo Lupo
53e71f9eb7
Merge pull request #3309 from fonttools/pyup-scheduled-update-2023-10-23
Scheduled weekly dependency update for week 43
2023-11-03 10:33:00 +00:00
Cosimo Lupo
335a1e56ec re-run black v23.10 on all .py files 2023-11-03 10:25:15 +00:00
Cosimo Lupo
74da89beeb
Merge pull request #3317 from fonttools/instantiate-avgcharwidth
Recalc avgcharwidth after instancing
2023-11-03 10:12:07 +00:00
Behdad Esfahbod
ae69e9e8be
[instancer] Allow relaxed limits syntax (#3323)
* [instancer] Allow relaxed limits syntax

Fixes https://github.com/fonttools/fonttools/issues/3322

Co-authored-by: Cosimo Lupo <clupo@google.com>
2023-11-02 10:22:23 -06:00
Behdad Esfahbod
2d9b80acd1 [instancer] Remove unused import 2023-11-01 15:11:56 -06:00
Behdad Esfahbod
c3d8768346 [interpolatable] Oops, fix tests 2023-10-31 09:00:00 -06:00
Behdad Esfahbod
99da7bf722 [interpolatable] Write out problems as they are discovered
Instead of writing them all at the end...
2023-10-31 08:54:33 -06:00
Behdad Esfahbod
cd31f0ce7b [interpolatable] Add test_gen that returns a generator 2023-10-31 08:45:08 -06:00
Behdad Esfahbod
6f867e9c6a [interpolatable] Use defaultdict instead of OrderedDict
Such that missing entries return [] instead of KeyError.
2023-10-31 08:41:28 -06:00
Simon Cozens
49570c3599
[instancer] Check if an axis has values before requiring it to be found (#3319)
* Check if an axis has values before requiring it to be found

* Add test
2023-10-31 08:21:34 +00:00
Simon Cozens
3573cd906b Recalc avgcharwidth after instancing 2023-10-30 10:11:31 +00:00
Behdad Esfahbod
5cd2b1cc50 [varStore] Document sorting 2023-10-24 12:47:58 -06:00
Behdad Esfahbod
0a6b95af1e [varLib.varStore] Revert micro-optimizations
Based on review.
2023-10-24 11:50:47 -06:00
Behdad Esfahbod
bf402b9fde [varStore] Micro-optimize addItem() 2023-10-23 15:28:14 -06:00
Behdad Esfahbod
9e36b9465d [varStore] Micro-optimize storeDeltas()
Also speed up the test slightly by skipping rounding.
2023-10-23 15:18:11 -06:00
Behdad Esfahbod
c7ce5b0f3c [varStore] Handle >65535 items per encoding
By creating a new major for each 65535.
2023-10-23 14:43:10 -06:00
Behdad Esfahbod
6e1f55b0c8 [varLib.interpolatable] black
Oops.
2023-10-20 16:43:24 -06:00
Behdad Esfahbod
77dea10e5f [varLib.interpolatable] Speed up _rot_list() 2023-10-20 16:03:40 -06:00
Behdad Esfahbod
9ae5918806 [varLib.interpolatable] Help improvement 2023-10-19 09:49:30 -06:00
Cosimo Lupo
6d531fed44
Merge pull request #3304 from fonttools/solver-fix
[instancer.solver] Fix case where axisDef < lower and upper < axisMax
2023-10-19 10:36:56 +01:00
Behdad Esfahbod
1d0a180b9d [varLib.interpolatable] One other micro-optimization
Residual from 4714c37028f462b29159ef7f7186e51ef68c20e1
2023-10-16 17:53:15 -06:00
Behdad Esfahbod
872ae47536 [varLib.interpolatable] Fix subclass base 2023-10-16 17:00:43 -06:00
Behdad Esfahbod
c306836488 [varLib.interpolatable] Another micro-optimization
Don't know why the previous code was written that way!
2023-10-16 14:55:10 -06:00
Behdad Esfahbod
b3a45f9f79 [varLib.interpolatable] Micro-optimize by reusing a list 2023-10-16 14:37:16 -06:00
Behdad Esfahbod
f1e56cd757 [instancer.solver] Fix case where axisDef < lower and upper < axisMax
Fixes https://github.com/fonttools/fonttools/issues/3291
2023-10-16 13:46:39 -06:00
Behdad Esfahbod
2a855f8bd6 Revert "[varLib.interpolatable] Cythonize"
This reverts commit 0914c6c0eefb1317aba95779fb469e138b19f365.
2023-10-14 18:58:53 -04:00
Behdad Esfahbod
0914c6c0ee [varLib.interpolatable] Cythonize
Doesn't save much; only 5% in RobotoFlex.  Probably going to revert.
2023-10-14 18:58:49 -04:00
Behdad Esfahbod
b01fbf2785 [varLib.interpolatable] Skip comparing contour orders if only 0 or 1 2023-10-14 17:43:45 -04:00
Behdad Esfahbod
4714c37028 [varLib.interpolatable] Speed up m0idx finding
Don't use list.index() which would compare vectors...
2023-10-14 17:25:52 -04:00
Behdad Esfahbod
d29856b2e4 [varLib.interpolatable] Micro-optimize a check 2023-10-14 17:09:27 -04:00