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
6face10ca3
[basePen] Default glyphset to None
2017-02-21 12:01:10 -06:00
Behdad Esfahbod
f3bfea12c6
Add __all__ to pens that didn't have it
2017-02-21 12:01:10 -06:00
Behdad Esfahbod
69f38605d1
[transformPen] Minor
2017-02-21 12:01:10 -06:00
Behdad Esfahbod
69c11928a2
[interpolatable] Minor
2017-02-21 12:01:10 -06:00
Behdad Esfahbod
19e695775f
[symfont] 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
d8e8a657fa
[areaPen] Remove unnecessary docstrings
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
Cosimo Lupo
c2263c2e8f
[woff2_test] use bytes instead of unicode literals in struct format strings
...
This is for compatiblity with Python older than 2.7.7.
See https://bugs.python.org/issue19099
> Issue #19099 : The struct module now supports Unicode format strings.
https://hg.python.org/cpython/raw-file/f89216059edf/Misc/NEWS
2017-02-21 14:31:57 +00:00
Cosimo Lupo
fa51dff321
Merge pull request #854 from fonttools/require-head
...
explicitly require 'head' table in TTFont.save()
2017-02-21 13:52:10 +00:00
Cosimo Lupo
b39f3b613c
explicitly require 'head' table in TTFont.save()
...
it's implicitly required anyway, e.g. by ttx's ttCompile, maxp's recalc, OS/2 compile, etc.
2017-02-21 12:57:34 +00:00
justvanrossum
9de3d1a5ae
tweak comment
2017-02-21 13:47:30 +01:00
justvanrossum
c5aa43238f
Make sure to load the 'head' table when recalculating the time stamp. Fixes #847 .
2017-02-21 13:45:50 +01: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
8712c20156
[perimeterPen] Use Gauss-Legendre instead of Lobatto-Gauss for qudratic
...
Uses one fewer point and is no uglier.
2017-02-20 11:16:12 -06:00
Behdad Esfahbod
6738305fb1
[perimeterPoint] Minor
2017-02-20 11:09:14 -06:00
Behdad Esfahbod
3d4bd76a76
[perimeterPen] Add Gauss-Lobatto implementation for quadratic Bezier as well
...
Is twice faster than the exact algorithm.
2017-02-20 10:17:07 -06:00
Behdad Esfahbod
9f1067a991
[perimeterPen] Optimize Lobatto code
2017-02-20 10:17:07 -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