155 Commits

Author SHA1 Message Date
Cosimo Lupo
80bfc3ccd5
Snippets: add rename-fonts.py to append a suffix to all family names 2018-06-05 21:41:11 +01:00
Cosimo Lupo
299320d0b1
Snippets/layout-features.py: allow to load from ttx file 2018-05-23 11:50:40 +01:00
Chris Simpkins
53117bcf88 [checksum.py] added description string, corrected file path description 2018-02-26 17:58:12 -05:00
Chris Simpkins
db38156b91 [checksum.py] fixed incorrect variable name in stderr message 2018-02-25 19:35:06 -05:00
Chris Simpkins
d8e5f5cc37 removed header text 2018-02-25 19:32:20 -05:00
Chris Simpkins
362db5c99a [checksum.py] added file path documentation to source header 2018-02-25 12:06:12 -05:00
Chris Simpkins
0f49e20675 [Snippets/checksum.py] adds checksum.py script for SHA1 hash checksum list generation from font binaries or ttx XML OT table dumps from font files, and checksum testing against valid checksum files 2018-02-24 21:43:59 -05:00
Jens Kutilek
b09c2e0d2b Add b to bytes 2018-01-09 16:13:35 +01:00
Jens Kutilek
0cae12bdbd Add snippet manipulating raw table data 2018-01-09 11:18:01 +01:00
Cosimo Lupo
eab152e297 [Snippets] add script to convert SVG outlines to UFO GLIF
(requires ufoLib)
2017-09-12 23:09:31 -04:00
Khaled Hosny
7bea4c66c6 Add a snippet to remove LangSys from DFLT script
Such fonts violate the spec and OTS rejects them, this snippet should
help quickly fixing such fonts.
2017-06-23 02:46:33 +02:00
Dave Crossland
b7b3653b18 Snippets/README.md new link 2017-03-29 21:03:09 -04:00
Behdad Esfahbod
b9ff863b2c Move Snippets/interpolatable.py to fontTools.varLib.interpolatable 2017-02-26 10:43:11 -08:00
Behdad Esfahbod
7d36bf42ef [interpolatable] Don't pass glyphset to subpen in PerContourPen
It doesn't need it.  We just record the component.
2017-02-22 14:45:05 -06:00
Behdad Esfahbod
8879318c0b Move RecordingPen to fontTools.pens.recordingPen 2017-02-21 12:11:36 -06:00
Behdad Esfahbod
5a06247ef8 [interpolatable] Derive RecordingPen from AbstractPen, not BasePen 2017-02-21 12:08:07 -06:00
Behdad Esfahbod
f0584a8507 [interpolatable] Change RecordingPen.draw to replay 2017-02-21 12:02:04 -06:00
Behdad Esfahbod
55e529f7a3 Add fontTools.pens.teePen 2017-02-21 12:01:10 -06:00
Behdad Esfahbod
69c11928a2 [interpolatable] Minor 2017-02-21 12:01:10 -06:00
Behdad Esfahbod
63c283a3c8 [interpolatable] Remove use of perimeter again 2017-02-21 12:01:10 -06:00
Behdad Esfahbod
c935118072 [interpolatable] Add TeePen
Used to combine StatisticsPen and PerimeterPen into one pen for example.
Though, that example to be removed again.
2017-02-21 12:01:10 -06:00
Behdad Esfahbod
d4d12d255c [interpolatable] Minor 2017-02-21 12:01:10 -06:00
Behdad Esfahbod
d748db59cc [interpolatable] Minor 2017-02-21 12:01:10 -06:00
Behdad Esfahbod
14b46cf7a6 [symfont] Move symfont to fontTools.misc.symfont 2017-02-21 12:01:10 -06:00
Behdad Esfahbod
724e6dab4e [symfont] Minor 2017-02-21 12:01:10 -06:00
Behdad Esfahbod
08755ea1a4 [symfont] Move code around 2017-02-21 12:01:10 -06:00
Behdad Esfahbod
ba4d63ea1c [symfont] Fixup for 1fe8d9f0d149d571626dd3f9121953fd71ebcc2c 2017-02-21 12:01:10 -06:00
Behdad Esfahbod
621759b3a8 [symfont] Add endPath() 2017-02-21 12:01:10 -06:00
Behdad Esfahbod
a690907243 [symfont] Minor 2017-02-21 12:01:10 -06:00
Behdad Esfahbod
821ea7385f Minor 2017-02-21 12:01:10 -06:00
Behdad Esfahbod
0a2c5ef7ae [symfont] Write generator code as main function in printPen() output 2017-02-21 12:01:10 -06:00
Behdad Esfahbod
628b1c99aa [symfont] Remove stale docstring 2017-02-21 12:01:10 -06:00
Behdad Esfahbod
7bd0081368 [symfont] Remove printCache()
It wasn't updated, and not working, for ages.
2017-02-21 12:01:10 -06:00
Behdad Esfahbod
087d865831 [symfont] Use dict.__missing__ trick for memoize 2017-02-21 12:01:10 -06:00
Behdad Esfahbod
f13fbdae63 [symfont] Shuffle 2017-02-21 12:01:10 -06:00
Behdad Esfahbod
03e8f2e461 [interpolatable] Minor 2017-02-21 12:01:10 -06:00
Behdad Esfahbod
65e5c257ed [interpolatable] Remove stale commit and uncomment code 2017-02-21 12:01:10 -06:00
Behdad Esfahbod
f3224d7d34 Move StatisticsPen into fontTools.pens.statisticsPen 2017-02-20 13:19:35 -06:00
Behdad Esfahbod
5cbfaa2792 [symfont] Change GlyphStatistics object into StatisticsPen
It's a simple pen now.  To be moved to fontTools.pens next.
2017-02-20 13:02:52 -06:00
Behdad Esfahbod
c14aad81f4 [symfont] Rename 2017-02-20 12:46:55 -06:00
Behdad Esfahbod
5132bbe411 [symfont] Remove glyph perimeter from GlyphStatistics
It's not technically statistics the same way the other properties are, and
we have a separate pen for it, so remove. Goal is to turn GlyphStatistics
into a pen.

Also remove perimeter from interpolatable.py contour characteristics vector.
Shouldn't be needed, given all the stats we already include.
2017-02-20 12:36:15 -06:00
Behdad Esfahbod
a8db22a077 Move MomentsPen into fontTools.pens.momentsPen 2017-02-20 12:33:12 -06:00
Behdad Esfahbod
d9bccb8609 [symfont] Simplify GlyphStatistics; just compute everything upfront
Our MomentsPen is sooooooooo fast now, there's no point trying to
make it lazy.
2017-02-20 11:28:44 -06:00
Behdad Esfahbod
a94e0f4e52 [symfont] Remove unused CovarianceMatrix 2017-02-20 10:17:07 -06:00
Behdad Esfahbod
da4b81e9ab Add momentsPen as generated by symfont:printPen()
To be moved to proper place soon.

Using this in interpolatable.py makes the core of the computation over an
order of magnitude faster.
2017-02-20 10:17:07 -06:00
Behdad Esfahbod
78637fb8c8 [symfont] Allow printing to files 2017-02-20 10:17:07 -06:00
Behdad Esfahbod
afe3407ca5 [symfont] More 2017-02-20 10:17:07 -06:00
Behdad Esfahbod
aaa950ea59 [symfont] Remove unused _Eigen method 2017-02-20 10:17:07 -06:00
Behdad Esfahbod
c8a82dcfee [symfont] Protect against math errors
Note that because our contours can overlap arbitrarily, our variance can end up
being negative, so, allow for that.
2017-02-20 10:17:07 -06:00
Behdad Esfahbod
c8e68b2f4c [interpolatable] Report bad contour in case of math error 2017-02-20 10:17:07 -06:00