11354 Commits

Author SHA1 Message Date
Behdad Esfahbod
24cb75619d
Merge pull request #3341 from fonttools/interpolatable-mst
Interpolatable mst
2023-11-17 17:15:14 -07:00
Behdad Esfahbod
5956a3636e [interpolatablePlot] Don't repeat log twice for same problem 2023-11-17 16:45:33 -07:00
Behdad Esfahbod
1a7c6d402c Merge branch 'main' into interpolatable-mst 2023-11-17 16:39:43 -07:00
Behdad Esfahbod
cef1d8dc41 [interpolatable] Skip wrong_start_order test if node counts differ 2023-11-17 16:34:11 -07:00
Behdad Esfahbod
15819341bb [interpolatable] Include polygon lengths in wrong_start_order test
Brings down fals-positives. See:
https://github.com/fonttools/fonttools/pull/3341#issuecomment-1817204140
2023-11-17 15:33:42 -07:00
Behdad Esfahbod
17b3f33957 [interpolatable] Fix tests 2023-11-17 15:22:03 -07:00
Behdad Esfahbod
ec812b23f8 [interpolatable] Fix a bug 2023-11-17 15:12:27 -07:00
Behdad Esfahbod
0cf9583137 [interpolatable] Remove parent-skipping
Otherwise we still get the same high number of reports (500+!)
for Handjet and Honk. With this, they are down in the 100s.
2023-11-17 14:22:55 -07:00
Behdad Esfahbod
5144047233 [interpolatable] Black 2023-11-17 14:21:51 -07:00
Behdad Esfahbod
11da18a577 [interpolatable] Log 2023-11-17 14:21:34 -07:00
Behdad Esfahbod
b510c9413c [interpolatable] Don't actually reorder glyphsets
Since that would throw off the reporting numbers.

Just process them in the desired order.
2023-11-17 14:20:26 -07:00
Behdad Esfahbod
15d33e88b8 [interpolatable] Skip double-reporting in the tree
If a master has problem, skip over it when finding grand_parent.
2023-11-17 13:38:20 -07:00
Behdad Esfahbod
a4a65a831f [interpolatable] Reorder masters in a partial sort order
By parents. Such that all childs of a parent come after it.
2023-11-17 13:31:28 -07:00
Behdad Esfahbod
a2a939ebad [interpolatable] Compare masters according to minimum-distance-tree
To be tested more.
2023-11-17 13:16:26 -07:00
Behdad Esfahbod
9c08d9bb68 [interpolatale] Fix tests 2023-11-17 10:33:38 -07:00
Behdad Esfahbod
7c72a2ee02 [interpolatable] Always put base master first
Warn if we could not find the base master ;-(.
2023-11-16 23:01:59 -07:00
Behdad Esfahbod
647bd27ed5 [interpolatable] Collect master locations and axis triples 2023-11-16 23:01:43 -07:00
Behdad Esfahbod
73fe1422ca [interpolatable] Use designspace from Glyphs file 2023-11-16 20:25:40 -07:00
Behdad Esfahbod
c430aa4f99 [interpolatable] Align-center the HTML output 2023-11-16 18:54:58 -07:00
Behdad Esfahbod
93d5e66a6b [interpolatable] Embed <img> for SVG in HTML output
Otherwise the SVG's will refer to the wrong object id's
and show wrong glyphs!
2023-11-16 18:31:56 -07:00
Behdad Esfahbod
b0f6491be1 [interpolatable] Don't draw cupcake if --quiet
Not sure if we should fully skip writing the PDF/HTML in that case.
2023-11-16 18:15:11 -07:00
Behdad Esfahbod
75fda50ed0 [interpolatablePlot] Fix cupcake in HTML/SVG output 2023-11-16 18:12:27 -07:00
Behdad Esfahbod
3fd86077e7 [interpolatablePlot] Add --html with SVG output 2023-11-16 17:47:57 -07:00
Behdad Esfahbod
1fb31c2cb8 [interpolatablePlot] Renames 2023-11-16 17:36:37 -07:00
Behdad Esfahbod
3f6bba0f6a [interpolatablePlot] Add Postscript output 2023-11-16 17:34:49 -07:00
Behdad Esfahbod
85f6fd5ba5 [interpolatablePlot] Seperate PDF output 2023-11-16 17:32:27 -07:00
Behdad Esfahbod
991b865968 [interpolatablePdf] Rename to interpolatablePlot.py
On to generating SVG/HTML.
2023-11-16 17:22:26 -07:00
Behdad Esfahbod
ed542a8b18 [interpolatable] Report wrong start point and reversedness 2023-11-16 17:14:39 -07:00
Behdad Esfahbod
32c583a343 [interpolatablePdf] Color reversed contour start point differently 2023-11-16 17:12:21 -07:00
Behdad Esfahbod
9a9499a193 [interpolatablePdf] Draw "other" starting point 2023-11-16 17:09:48 -07:00
Behdad Esfahbod
eb3efe3cdf [interpolatable] Report detected start point and reversedness 2023-11-16 16:50:26 -07:00
Behdad Esfahbod
f521748101 [interpolatable] Improve master names for varfonts 2023-11-16 16:19:52 -07:00
Behdad Esfahbod
cb55035c76 [interpolatablePdf] Allow not drawing cupcake or shrug 2023-11-16 15:51:51 -07:00
Behdad Esfahbod
b6c5092996 [interpolatablePdf] Draw exemplar glyph for missing_glyph 2023-11-16 15:47:21 -07:00
Behdad Esfahbod
d6f841914d [interpolatablePdf] Draw shrug for missing glyphs 2023-11-16 15:40:25 -07:00
Behdad Esfahbod
fa3467d897 [interpolatablePdf] Improve arrowhead 2023-11-16 15:04:13 -07:00
Behdad Esfahbod
a36964cca2 [interpolatablePdf] Draw arrowhead 2023-11-16 14:58:48 -07:00
Behdad Esfahbod
fa59ada1b5 [interpolatable] Remove unused imports 2023-11-16 14:35:33 -07:00
Behdad Esfahbod
ad70ba73c8 [interpolatablePdf] Make cupcake customizable 2023-11-16 14:31:37 -07:00
Behdad Esfahbod
1f58691b35 [interpolatablePdf] Draw cupcake if no errors
Artwork courtesy of FontBakery.
2023-11-16 14:24:47 -07:00
Behdad Esfahbod
f4cac3a5c7 [interpolatablePdf] Handle missing_glyph
Ideally we should draw the glyph from some other master...
2023-11-16 14:11:56 -07:00
Behdad Esfahbod
efd74adadd [statisticsPen] Adjust docstring 2023-11-16 14:04:29 -07:00
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
290c3333f9 [statisticsPen] Variance and standard-deviation are non-negative
I don't know why I get negative values there, but add an
abs() for now.

This fixes varLib.interpolatable false-negatives with
NotoSansEthiopean's `koa.eth` glyph.
2023-11-16 11:00:54 -07:00
Behdad Esfahbod
374f4d00eb
Merge pull request #3339 from fonttools/interpolatablePdf
[interpolatable] Start of generating PDF output
2023-11-16 10:20:33 -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